Database design 什么是正交指数?

Database design 什么是正交指数?,database-design,indexing,Database Design,Indexing,我负责的产品领域中的一个表被批评为具有多个正交指数 什么是正交索引? 为什么不好? 如何避免这种情况 --更新-- 后端数据库引擎在这里不一定相关,因为我们的应用程序与数据库无关。但如果有帮助,甲骨文是一种可能性 该表不用于财务分析。正交性只是指独立的,即与主要关注点无关。我相信我在两个不同的场合听到过“正交指数”一词,但我不知道这是否是一个公认的术语。在这两种情况下,他们都是指查询优化人员不使用的索引,因为: 有一次,它索引了一个完全不相关的列,从未用作搜索条件或排序列;这个词对我来说听起来

我负责的产品领域中的一个表被批评为具有多个正交指数

什么是正交索引?
为什么不好?
如何避免这种情况

--更新--
后端数据库引擎在这里不一定相关,因为我们的应用程序与数据库无关。但如果有帮助,甲骨文是一种可能性


该表不用于财务分析。

正交性只是指独立的,即与主要关注点无关。

我相信我在两个不同的场合听到过“正交指数”一词,但我不知道这是否是一个公认的术语。在这两种情况下,他们都是指查询优化人员不使用的索引,因为:

  • 有一次,它索引了一个完全不相关的列,从未用作搜索条件或排序列;这个词对我来说听起来“古怪”,但我并不反对:)

  • 在另一种情况下,它是一个两列索引,但字段中列的顺序与所需的顺序相反


我完全不知道这是否与你的问题相关:)

正交意味着相互独立


不知道为什么会不好。事实上,当有一个与主键无关的公共查询时,我通常使用二级索引(除了“id”自动递增主键)。

我可能在这里回答我自己的问题,但请随意谈谈你自己的想法

Javier的回答(+1)让我想到,这里的要点可能是,如果索引中的项目完全不相关,那么拥有多个唯一索引可能是一件坏事


换句话说,由于二级索引唯一性约束,实际数据不可能存储的可能性增加了。它还可能对不一定存在的数据引入人为约束。

我怀疑我能找到第一个问题的答案,但我认为人们需要更详细的信息来回答后两个问题。例如,哪个数据库引擎?细节确实有助于获得好的、有用的答案。这些数据是否被用于投资分析,如蒙特卡罗模拟?你知道,我认为这是一个愚蠢的问题,但为什么不问问“批评家”他们说“正交指数”是什么意思呢。他们可能没有使用正确的术语,或者他们的意思可能与在座的任何人所熟悉的完全不同。