DB2 复合索引顺序可实现最佳读写



我在 DB2 数据库中有一个表,当前有 2000 万行,增长率为 200 万行/季度。此表用于频繁插入和选择(~2000 次搜索和每分钟 600 次插入),但根本没有更新。搜索查询有 4 列 FY、Q、C1、C2 作为 where 子句中的参数

FY=财政年度(例如201415,201213,....)

Q = 季度(第一季度、第二季度、第三季度、第四季度)

C1= 具有 150 万个唯一字符 (10) 值的列

C2= 某些具有 4 个唯一字符 (3) 值的列

使用上述列可以更快地插入和选择的最佳复合索引顺序是什么。(考虑索引页缓存和索引树扫描时间)。大多数搜索和插入仅在该季度的特定财年和季度(即当前财政年度和季度)发生。

此外,表分区和索引分区是否有助于此用例?如果需要澄清,请发表评论。

在这种情况下,这不是一个可以回答的问题,因为如果没有工作负载的完整详细信息,答案将始终取决于它。 所有解决方案都涉及权衡,关键是找到用户可以接受的内容。

选择正确的索引设计意味着了解命中此表的所有查询、每个查询的运行频率以及哪些查询必须具有更快的响应时间。

最新更新