Дисковая индексация для многомерных данных

Я хочу использовать некую дисковую индексацию для многомерных данных. Я хочу быть в состоянии

  1. выполнять поиск по диапазону - (10 - 20% использования приложения)
  2. более быстрый поиск - (80%)

размер данных (в порядке ГБ) и количество записей в миллиардах

Чтобы быть более конкретным, я хочу реализовать что-то вроде R-Tree или X-Tree. Но я подумал, что это хорошая идея, чтобы начать работать с B-Trees. Хотя все базы данных предлагают очень эффективные реализации B-Tree, я хочу иметь возможность настраивать дизайн, добавлять возможные эвристики на основе приложений в проект, поэтому я бы предпочел реализовать что-то свое или использовать некоторую библиотеку в качестве отправной точки,

Любые ссылки на библиотеки или предложения будут очень полезны. заранее спасибо

1 ответ

"Поиск" - чем? Окно запросов? Радиус запросов? Запросы ближайшего соседа?

Сколько измерений - если это просто 2D, даже простые сеточные подходы могут работать очень хорошо.

Обратите внимание, что большинство качественных систем SQL (практически все, кроме MySQL) в некоторой степени поддерживают R-деревья.

Другие вопросы по тегам