【发布时间】:2015-01-06 22:36:18
【问题描述】:
我正在构建一个包含大约 40 万行消息应用程序数据的表。 当前表的列如下所示:
message_id (int)| sender_userid (int)| other_col (字符串)| other_col2 (int)| create_dt(时间戳)
我将来要运行的许多查询将依赖于涉及 create_dt 列的 where 子句。因为我希望这张表会增长,所以我现在想尝试优化它。我知道分区是一种方式,但是当我根据 create_dt 对其进行分区时,结果分区太多,因为我的每个日期都追溯到 2013 年 11 月。
有没有办法改为按日期范围进行分区?每3个月分区一次怎么样?甚至每个月?如果这是可能的 - 我将来是否可能有太多分区使其效率低下?还有哪些其他可能的分区方法?
我还阅读了有关分桶的信息,但据我所知,这仅在您对存储桶所基于的列进行连接时才有用。我很可能只对列 sender_userid (int) 进行联接。
谢谢!
【问题讨论】: