Репликация в конфигурации распределенного Solr

#solr #replication #distributed

#solr #репликация #распределенный

Вопрос:

Я пытаюсь добавить репликацию для каждого подчиненного устройства в облаке Solr, чтобы сделать весь кластер более надежным. Идея состоит в том, чтобы распространить один сегмент на несколько машин, чтобы позволить кластеру работать, даже если одна из машин не работает.

Solr имеет отличную встроенную функцию репликации, которая отлично работает в обычной (не выделенной) настройке Solr. Однако при добавлении этой функции в облако Solr я получаю сообщение об ошибке, сообщающее, что /solr/replication обработчик не найден (и на самом деле он не отображается в выводе Solr при запуске Solr, хотя он определен в solrconfig.xml ).

SolrWiki также указывает на распределенный обработчик обновлений, но из примечания автора я понимаю, что он фактически не реплицирует данные, а просто отправляет новые документы на один из узлов, определенных в конфигурации.

Мои вопросы:

  1. Почему встроенная репликация на основе Java не работает в настройке распределенного Solr? Это проблема с облаком Solr, более фундаментальная проблема или просто ошибка в моей конфигурации (я проверял все несколько раз, но все равно мог что-то пропустить)?
  2. Каковы другие хорошие подходы к репликации в распределенном Solr?

Ответ №1:

Хотя я немного опоздал на вечеринку по старому вопросу; ответ заключается в том, что Solr Cloud обрабатывает репликацию внутри. Это подробно объясняется на вики-странице Solr Cloud. Если вы установили numShards= 2 и добавили больше серверов (всего у вас будет четыре), сегмент будет реплицирован на новые серверы, гарантируя, что ваш сегмент будет работать более чем на одном узле.

Чтобы ответить на ваши вопросы напрямую;

  1. SolrCloud выполняет настройку и логику репликации за вас, и вы должны позволить ему делать это самостоятельно, вместо того, чтобы вводить «ручную» настройку репликации в микс.

  2. Весь смысл SolrCloud в том, чтобы скрыть логику репликации и совместного использования, позволяя вам просто добавлять больше серверов по мере их доступности. Конечно, вы можете создавать логически отдельные облачные кластеры и индексировать их для обоих, но в этом не должно быть необходимости.

Комментарии:

1. Спасибо, этот пункт отсутствовал в вики на момент написания вопроса.

2. Как насчет раздела репликации в интерфейсе администратора Solr. Делает ли это то же самое?