postgresql - 我应该迁移到 Redshift 吗?
问题描述
我目前正在努力查询存储在分区表中的数据块(每个日期的分区)
数据如下所示:
date, product_id, orders
2019-11-01, 1, 100
2019-11-01, 2, 200
2019-11-02, 1, 300
我有数百个日期分区和每个日期数百万行。
现在,如果我想查询,例如,产品 id 1 和 2 的总订单量为 2 周,并按日期分组(在每个日期的图表中显示),数据库必须进入 2 周的分区和为他们获取数据。
当产品数量很大或所需时间很长时,该过程可能需要很长时间。
我读过 AWS Redshift 适合这类任务。我正在考虑将我的分区表(每个日期的聚合分析)转移到该技术,但我想知道这是否真的是我应该做的,以使这些查询运行得更快。
谢谢!
解决方案
根据您的用例,Redshift 对您来说确实是一个不错的选择。为了从 Redshift 中获得最佳性能,设置正确的分布和排序键非常重要。在您的情况下,“日期”列应该是分发键,“productid”应该是排序键。另一个重要注意事项,不要对“日期”和“产品ID”列进行编码。你应该得到更好的表现。
推荐阅读
- typescript - 如何在 TypeScript 中分配给 window.onblur?
- java - 使用 Math.random 用 [-n, n] 范围内的随机数填充数组
- mysql - mysql - current_timestamp 和 null
- javascript - FB.Event.subscribe('comment.create') 从 facebook 评论 web 插件创建评论时运行 2 次
- python - 按组创建索引列
- python - 两个日期列之间的上采样
- jquery - 无法在联系表单插件(Wordpress)上使用 jQuery 禁用提交按钮
- c# - 启用设备跟踪器后,Vuforia OntrackingLost 功能不起作用?
- dart - 捕获可拖动事件
- tensorflow - 使用种子对张量流概率进行采样