Каковы преимущества и недостатки использования поисковой системы в качестве хранилища ключевых значений?

StackOverflow https://stackoverflow.com/questions/2045683

  •  20-09-2019
  •  | 
  •  

Вопрос

Учитывая поисковую систему, такую как Lucene, и набор XML-документов, которые необходимо полностью сохранить, каковы преимущества и недостатки использования поисковой системы в качестве хранилища значений ключей для возврата XML-файлов с учетом уникального первичного ключа, который содержит каждый документ?

Это было полезно?

Решение

Читать Поисковая система против СУБД.IMO, ваше приложение относится к области СУБД и, вероятно, лучше всего будет обслуживаться базой данных ключ-значение, такой как CouchDB.Это происходит потому, что вы не используете никаких преимуществ текстовых операций, таких как токенизация, стемминг и т.д.

Другие советы

Если вы используете что-то вроде Компас, и это Механизм сопоставления XML с Lucene, это отличное решение для хранения XML-документов и выполнения запросов к ним без обращения к базе данных XML.

Одним из недостатков является то, что XML-документы могут быть получены только через Lucene API (базовое хранилище данных довольно непроницаемо), но я могу с этим смириться.

Если все, что вы собираетесь сделать, это проверить равенство ключей и извлечь большой двоичный объект, Lucene не имеет видимого преимущества, скажем, перед bdb.И у вас нет транзакций до тех пор, пока вы не наложите поверх что-то еще.И параллелизм сопряжен с определенными сложностями.И API, ну, немного барочен для той простой вещи, которую вы делаете.

Я реализовал что-то вроде того, что вы описали, но фактический полнотекстовый поиск по данным был критическим требованием, которое оправдывало все остальное.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top