Багатовимірні індекси в базах даних


10

У яких базах даних використовуються реальні багатовимірні індекси? Чи Oracle коли-небудь використовує декілька індексів для отримання даних з таблиць, чи завжди він буде приймати той, який, здається, має найбільшу вибірковість? Як щодо інших dbms?

Відповіді:


9

Oracle має тип індексу, який називається Bitmap Index, який він описує як ...

Індекс бази даних, в якому база даних зберігає растрову карту для кожного індексного ключа замість списку рядків.

Якщо в таблиці є індекс растрових зображень або використовується підказка, вона може використовувати план доступу до растрових карт у звичайних індексах B-дерева . Індекси растрових зображень можуть бути об'єднані, об'єднані та перетинані.

Існує чудове пояснення на use-the-index-luke.com, де воно включає в себе наступні реалізації комбінування декількох індексів B-Tree:

DB2: DB2 підтримує багаторазовий доступ до індексу на LUW 9r7 (використовуючи динамічну растрову карту) та на zOS v10 .

MySQL: MySQL має оптимізацію злиття індексу, починаючи з версії 5.0.

Oracle База даних Oracle використовує BITMAP CONVERSION для об'єднання декількох індексів на ходу (представлені з 9i).

PostgreSQL PostgreSQL використовує растрові карти для об'єднання декількох індексів з версії 8.1.

SQL Server SQL Server може використовувати кілька індексів ("Індекс перетин"), починаючи з V7.0 за допомогою хеш-алгоритму.

Дивіться також це питання StackOverflow, в якому в першій відповіді сказано, що SQL Server робить щось подібне до покажчиків Bitmapped, використовуючи перетин індексу.

Ефективна та гнучка індексація растрових зображень для запитів складної схожості - це найближча довідка, яку я знайшов, пов'язуючи Bitmapped індекси зі словом багатовимірним. Багатовимірність здається скоріше способом використання індексів, а не їх атрибутів.



5

Можливо, біржові карти Oracle - це те, що ви шукаєте. Типи індексу Oracle .

Я думаю, що вони дозволяють об'єднання та перехрестя. Але я визнаю, що я з ними не знайомий.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.