HBase против Hyptertable против Lucene - PullRequest
2 голосов
/ 10 февраля 2011

Я использую поисковую систему в lucene. По умолчанию он не распространяется, поэтому я думаю о переходе на что-то вроде HBase или Hadoop.

Имеют ли такие решения, как HBase или Hypertable, встроенную функцию поиска, или мне нужно будет внедрить Lucene поверх них?

Ответы [ 4 ]

5 голосов
/ 11 февраля 2011

Lucene сильно отличается от клонов BigTable, таких как HBase или Hypertable.Если вы просто ищете распределенную Lucene, то вам следует обратить внимание на такие проекты, как Elastic Search или Katta.

Solr / Lucene также может работать в кластере, но разбиение не происходит автоматически.Вы должны создать осколки и реплики вручную, чтобы соответствовать распределению тех данных, которые вы ищете.Если ваши базовые данные хранятся в чем-то вроде HBase, это гораздо проще настроить, изменить и обновить.

По сути, HBase и Lucene решают разные проблемы.Lucene - это индекс, который позволяет быстро возвращать ключевые слова и другие типы поиска.HBase - это хранилище данных, которое может обслуживать отдельные строки в режиме реального времени;однако HBase не имеет возможности онлайн-запросов.Для достижения наилучших результатов, вы должны объединить их.Одним из примеров в этой области является Лили (http://outerthought.org/site/products/lily.html)

1 голос
/ 04 апреля 2011

Другая технология, на которую стоит обратить внимание - это Katta или Distributed Lucene, которая может работать через HDFS

1 голос
/ 19 февраля 2011

Вы также можете посмотреть на Lucandra, Lucene с бэкэндом Cassandra:

https://github.com/tjake/Lucandra

0 голосов
/ 20 февраля 2011

Lucene предоставляет две основные функции: структурированный поиск и полнотекстовый поиск.Hbase не предоставляет ни одного из них, структурированный поиск может быть выполнен с помощью hbase относительно простым способом, это то, о чем Лилли думает.Но восстановить полнотекстовый поиск будет сложнее.Чтобы масштабировать Lucene, вы все равно можете попытаться разделить свой индекс, обратившись к атрибуту, который может разбить ваши данные на отдельные области (вы не сможете выполнять межобластный поиск).Тогда вы можете иметь один кластер на область.

...