2017-02-22 76 views
0

У меня большой комплекс Sphinx конфигурация работает на большой базе данных. Поскольку для поворота требуется много времени, мы настраиваем его на многопоточность с использованием mutliple core/cpus. Это сократило время, необходимое для вращения значительно естественным образом. Однако вопрос в том, нужно ли нам теперь обслуживать этот индекс таким же образом? Если мы повернем его, скажем, с сервером 32 cpu, тогда нам понадобится сервер с 32 процессорами для обслуживания индекса или мы каким-то образом перемонтируем черепа в один, когда это будет сделано?Рекомбинированные осколки сфинкса?

ответ

0

Ну есть опция слияния, чтобы объединить два индекса в один. http://sphinxsearch.com/docs/current.html#index-merging

Но что вы подразумеваете под разделением между «повернуть» и «служить»?

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

... Так что можете просто запросить эти индексы, если предположить, что вы смогли их повернуть.

Если может предоставить более подробную информацию, возможно, вы можете дать более подробный ответ.

+0

Ну, я надеюсь, что следующее поясняет (я не делал фактического очертания только конфигурации); план состоит в том, чтобы развернуть сервер с 64-процессорным процессором, чтобы индексировать конфигурацию многопоточным способом. Насколько я знаю, он буквально разбивает дБ на дискретные куски, но я могу ошибаться. Это нужно, чтобы повернуть индекс, который может занять день в разумные временные рамки для вращения. Я надеялся, что вы сможете запускать сайт с помощью sphinx query (sphinxQL) с меньшего сервера, так как не нуждаетесь в стоимости 64-процессорного сервера 24x7. – user3649739

+0

Хорошо sphinx не ограничивается одним индексом на ядро. Он мог запросить индекс 64-мерного черепа, довольно счастливо на одном ядре. Это будет сделано последовательно, один за другим. Если они имеют 2 ядра, теоретически это будет в два раза быстрее, чем может идти по два за раз. 4 ядра дважды. Больше ядер = больше распараллеливания, поэтому меньше времени на стене запроса. Что важнее, стоимость или производительность? :) – barryhunter

+0

Ах Вечный вопрос: | Цель состоит в том, чтобы запустить с самым большим сервером, который мы можем позволить себе получить как можно больше производительности. Естественно, мы хотели бы стать настолько крупными, чтобы получить наилучшую производительность. Таким образом, вопрос в основном можно было бы пересчитать как «пока мы не сможем позволить себе сервер с таким количеством ядер, как у нас есть осколки, сфинксы смогут работать на меньших ядрах»? Я думаю, вы ответили, что один из них очень хорош, хотя спасибо! – user3649739

 Смежные вопросы

  • Нет связанных вопросов^_^