我在DB2数据库中有一个表,目前有2000万行,增长率是200万/四分之一。这个表用于频繁插入和选择(~2000搜索和每分钟600次插入),但根本没有更新。搜索查询有4列FY,Q,C1,C2作为where子句
中的参数FY =财政年度(例如201415,201213,.....)
Q =季度(Q1,Q2,Q3,Q4)
C1 =某些列具有150万个唯一的char(10)值
C2 =某个列有4个唯一的char(3)值
对于插入和选择,上述列的最佳复合索引顺序将更快。 (考虑索引页面缓存和索引树扫描时间)。 大多数搜索和插入只发生在该季度的特定FY和Q(即当前财政年度和季度)。
此外,表分区和索引分区是否有助于此用例?如有需要澄清,请发表评论。
答案 0 :(得分:1)
这不是一个可以在这种情况下回答的问题,因为如果没有完整的工作负载细节,答案总是取决于。所有解决方案都涉及权衡,这是找到用户可以使用的内容的问题。
选择正确的索引设计意味着理解所有的查询,以及每个查询的运行频率,以及哪些查询必须具有更快的响应时间。