데이터베이스의 다차원 인덱스


10

실제 다차원 인덱스를 사용하는 데이터베이스는 무엇입니까? 오라클은 테이블에서 데이터를 가져 오기 위해 여러 인덱스를 사용하고 있습니까? 아니면 항상 가장 높은 선택성을 가진 것으로 보입니까? 다른 DBMS는 어떻습니까?

답변:


9

오라클은 비트 맵 인덱스라는 인덱스 유형을 가지고 있습니다 ...

데이터베이스가 rowid 목록 대신 각 인덱스 키에 대한 비트 맵을 저장하는 데이터베이스 인덱스입니다.

테이블에 비트 맵 인덱스가 있거나 힌트가 사용되는 경우 일반 B- 트리 인덱스에서 비트 맵 액세스 계획을 사용할있습니다 . 비트 맵 인덱스 는 결합, 결합 및 교차 될 수 있습니다.

use-the-index-luke.com 에 여러 B- 트리 인덱스 결합에 대한 다음 구현이 포함 된 훌륭한 설명이 있습니다 .

DB2 : DB2는 LUW 9r7 (동적 비트 맵 사용) 및 zOS v10 에서 다중 인덱스 액세스를 지원합니다 .

MySQL : MySQL에는 릴리스 5.0부터 인덱스 병합 최적화 기능이 있습니다.

Oracle Oracle 데이터베이스는 BITMAP CONVERSIONs를 사용 하여 여러 인덱스 를 즉석 에서 결합 합니다 (9i로 도입).

PostgreSQL PostgreSQL은 비트 맵을 사용 하여 버전 8.1 이후 여러 인덱스결합합니다 .

SQL Server SQL Server는 해시 알고리즘을 사용하여 V7.0부터 여러 인덱스 ( "인덱스 교차")를 사용할 수 있습니다 .

첫 번째 답변에서 SQL Server가 인덱스 교차를 사용하여 비트 맵 인덱스와 비슷한 작업을 수행한다는 StackOverflow 질문 도 참조하십시오 .

복잡한 유사성 쿼리를위한 효율적이고 유연한 비트 맵 인덱싱은 Bitmapped 인덱스를 다차원 단어와 연관시키는 것으로 가장 가까운 참조입니다. 다차원은 인덱스가 아닌 인덱스를 사용하는 방법 인 것 같습니다.


6

SQL Server는 " 인덱스 교차 "를 수행 할 수 있습니다 . 그리고 MSDN에서 .

이게 네가 뜻한 바냐?


바로 그거죠! 오라클에 필적 할만한 것이 있습니까?
paweloque

1
어 ... 던노 저는 MS 원숭이입니다.
gbn

5

아마도 Oracle 비트 맵 인덱스는 당신이 찾고있는 것입니다. Oracle 인덱스 유형 .

나는 그들이 노조와 교차를 허용한다고 생각합니다. 그러나 나는 그들에게 익숙하지 않다는 것을 인정한다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.