Redshift Spectrum 使用两个日期字段对 table 进行分区
Redshift Spectrum partitioning a table using two date fields
我一直在寻找按日期创建分区的最佳做法,使用 amazon-redshift-spectrum
,但示例显示了通过仅按一个日期对 table 进行分区来解决的问题。如果我有多个日期字段怎么办?
例如:user_install_date
和 event_date
的移动事件
将您的 s3
分区的性能如何:
installdate=2015-01-01/eventdate=2017-01-01
installdate=2015-01-01/eventdate=2017-01-02
installdate=2015-01-01/eventdate=2017-01-03
它会影响我的 select
表现吗?在这种情况下最好的策略是什么?
如果您的数据以上述方式分区,那么在 WHERE 子句中只有 eventdate
(没有 installdate
)的查询效率会较低。
它仍然需要查看每个 installdate
目录,但它可以跳过 eventdate
个与谓词不匹配的目录。
将较少使用的参数放在第二位。
我一直在寻找按日期创建分区的最佳做法,使用 amazon-redshift-spectrum
,但示例显示了通过仅按一个日期对 table 进行分区来解决的问题。如果我有多个日期字段怎么办?
例如:user_install_date
和 event_date
将您的 s3
分区的性能如何:
installdate=2015-01-01/eventdate=2017-01-01
installdate=2015-01-01/eventdate=2017-01-02
installdate=2015-01-01/eventdate=2017-01-03
它会影响我的 select
表现吗?在这种情况下最好的策略是什么?
如果您的数据以上述方式分区,那么在 WHERE 子句中只有 eventdate
(没有 installdate
)的查询效率会较低。
它仍然需要查看每个 installdate
目录,但它可以跳过 eventdate
个与谓词不匹配的目录。
将较少使用的参数放在第二位。