Как работает репликация данных Lucene на таких технологиях, как ElasticSearch и Apache Solr - PullRequest
0 голосов
/ 01 июля 2019

Как эти технологии могут реплицировать данные Lucene в среде высокой доступности? Как я могу сделать репликацию моих каталогов Lucene, учитывая, что сегодня я не использую такие технологии.

1 Ответ

0 голосов
/ 02 июля 2019

Этот вопрос, вероятно, слишком широкий, чтобы ответить на что-нибудь полезное, но в целом у вас есть два варианта:

  • Индексируйте документ на главном узле, затем реплицируйте файлы индекса, которые были изменены, на все остальные узлы. Они обычно известны как основные / подчиненные установки. Первые версии Solr использовали для этого rsync - так что Solr не нужно было ничего знать о самой репликации. Более поздние версии использовали HTTP для репликации файлов индекса. Если у вас уже есть индекс Lucene, который вы хотите сделать доступным на нескольких узлах, это самое простое решение, которое не требует фундаментальных изменений в вашем проекте.

  • Распределите документ, который будет добавлен в индекс, по всем известным репликам этого индекса / шарда. Процесс индексации происходит на каждом узле, и документ распространяется на узел до того, как он был добавлен в индекс. Это (упрощенно) то, что происходит, когда Solr работает в облачном / кластерном режиме (и то же самое делает и ESRC IIRC). Здесь также используются журналы транзакций и т. Д., Чтобы сделать его более устойчивым к сбоям на разных узлах.

Так что либо распространяйте обновления самостоятельно, либо распространяйте обновленный индекс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...