Дисковая индексация для многомерных данных
Я хочу использовать некую дисковую индексацию для многомерных данных. Я хочу быть в состоянии
- выполнять поиск по диапазону - (10 - 20% использования приложения)
- более быстрый поиск - (80%)
размер данных (в порядке ГБ) и количество записей в миллиардах
Чтобы быть более конкретным, я хочу реализовать что-то вроде R-Tree или X-Tree. Но я подумал, что это хорошая идея, чтобы начать работать с B-Trees. Хотя все базы данных предлагают очень эффективные реализации B-Tree, я хочу иметь возможность настраивать дизайн, добавлять возможные эвристики на основе приложений в проект, поэтому я бы предпочел реализовать что-то свое или использовать некоторую библиотеку в качестве отправной точки,
Любые ссылки на библиотеки или предложения будут очень полезны. заранее спасибо
1 ответ
"Поиск" - чем? Окно запросов? Радиус запросов? Запросы ближайшего соседа?
Сколько измерений - если это просто 2D, даже простые сеточные подходы могут работать очень хорошо.
Обратите внимание, что большинство качественных систем SQL (практически все, кроме MySQL) в некоторой степени поддерживают R-деревья.