snowflake-cloud-data-platform - 雪花变种性能
问题描述
我有一张几 TB 大小的雪花桌。我现在要决定是在变量列中包含一个字段还是将其作为独立列。该字段的数据类型是一个简单的字符串。
我通过从变量列中查询此字段(在 where 子句中)与直接作为单独的列查询来评估和比较性能。统计数据显示,从变量内部查询比从常规列查询慢 40%-60%。
在 Snowflake 文档中找不到任何内容说查询 varchar 的变体较慢。对此的任何想法都非常感谢。我需要在此基础上做出一些重要的决定,并对桌子的最终用户进行教育
提前致谢
解决方案
这取决于这些数据的结构以及您以后将如何使用它。如果您计划存储复杂的半结构化数据并查询单个节点,则最好的选择是将数据存储在 VARIANT 类型中。您可以在此处阅读更多信息:半结构化数据注意事项
如您所写,如果您存储一个简单的字符串,则最好使用STRING类型。多亏了这一点,您将避免转换类型,您还可以使用搜索优化服务或集群。
您是否在此表上启用了搜索优化进行任何基准测试?
推荐阅读
- java - 测试 WSDL Web 服务
- git - 将 GIT HEAD 还原为较旧的提交
- docker - RedisInsight Docker 显示:无法在浏览器中访问站点
- google-vision - 上传数据集图像失败 AutoML Google Vision
- c# - 复制 Texture2D 以保持原始不变
- reactjs - ReactJS Web 中的 React-Native 组件
- azure - 事件中心是否读取自己的捕获文件?
- c++ - 每个循环初始化一个新的静态变量,C++
- laravel - 使用 Laravel Passport 在路由关闭中通过 api guard 注销后仍然登录
- reactjs - Typescript 无状态 HOC react-redux 注入道具打字