Хранение нескольких комплектов документов на одном или нескольких ядрах - PullRequest
1 голос
/ 21 декабря 2011

Я использую несколько сайтов с разными контентом / дизайном из одного промежуточного ПО и хочу использовать Solr в качестве поисковой системы. Сайты различаются по домену, но не по внутренней структуре (то есть фактическая база данных и структура данных между сайтами идентичны).

Теперь возникает вопрос - лучше ли хранить эти данные сайта в одном индексе Solr, а затем разделять их полем «site», или использовать отдельное ядро ​​Solr в одной JVM для каждого сайта?

Что обеспечит наилучшую производительность (нет межсайтовых запросов)? Что обеспечит лучший отзыв и точность (меня беспокоит потеря точности из-за факторов IDF - различия в предметных областях довольно велики)?

Ответы [ 2 ]

2 голосов
/ 21 декабря 2011

Полагаю, вас больше беспокоит то, что происходит, когда ваши сайты растут .IMO, несколько ядер кажется лучшим выбором.

Один большой индекс : все обновления и запросы затрагивают одну точку.Когда он начинает работать медленно, вы должны создать кластер с помощью шардинга или репликации для хранения большого индекса.И это единственная точка отказа.Резервное копирование индекса будет трудным.

Несколько ядер : если один сайт растет и затмевает другие, вы можете легко перенести его на другой сервер, гарантируя, что ни один сервер не будет перегружен.Резервное копирование отдельных сайтов будет относительно тривиальным.

Несколько ядер сделают вашу жизнь проще, если у вас есть незанятые сайты.По мере роста ваших сайтов вы можете отложить кластеризацию и настройку производительности на более поздний срок.

0 голосов
/ 21 декабря 2011

Я бы сделал несколько ядер Solr на одном коте

...