sti*_*tic 3 oracle indexing clustered-index
根据您使用Oracle的经验,您将在DATE类型列上设置的索引的最佳类型和设置是什么?
创建集群索引是否公平?
我感兴趣的是优化SELECT*FROM Log WHERE [Date]> '20 -06-2009'ORDER BY [Date] DESC等查询的执行,而不是大幅减慢插入速度.(顺便说一句,在现实世界中我会使用正确的TO_DATE语法来避免截断并丢失索引)
干杯,
常规指数应该做得很好.由于它是一个日志,因此新条目应始终具有增加的日期值,而不是过去的日期,这使得索引附加变得容易.插件不是一个大的减速.
如果您遇到上述问题,只考虑更复杂的指数.
问候K.
常规的b树索引是合适的,但如果这是一个日期值越来越大的日志表,那么请注意索引块争用.如果您有很多会话将新值插入索引,并且这些值属于同一个块,那么您可能遇到性能问题.对此的一个缓解是反向键索引,但这会使您提供的类型的查询更加昂贵,因为反向键索引不能支持范围扫描.您将获得完整索引扫描或快速完整索引扫描.
它还会使索引更大,因为索引块拆分将是50/50,而不是Oracle在索引值中检测到向右增长模式时使用的90/10.