В Elasticsearch мастер-узлы вообще не содержат никаких данных.Это не та же концепция, что и в базе данных master / slave.В ES вы не можете выключить мастер и ожидать, что узел данных будет работать.Если вы закроете свой единственный главный узел, ваш кластер станет красным, и больше ничего не будет работать.
Все основные сегменты и сегменты реплики хранятся только на узлах данных .Ваши индексы разделены на основные сегменты, которые будут сбалансированы по всем узлам данных вашего кластера.Если вы решите использовать сегменты реплики, основные сегменты будут скопированы и сбалансированы по узлам данных одинаково.
Когда вы индексируете документ, вы обычно отправляете его на узлы данных, документ индексируетсяв первичном сегменте и затем реплицируется в соответствующий фрагмент реплики.
После того, как вы проиндексировали документ, вы можете проверить, содержат ли этот элемент как основной, так и фрагмент реплики, используя параметр preference
в своем поиске, например,
Это будет искать только основные сегменты
GET my-index/_search?preference=_primary
Это будет искать только фрагменты реплики
GET my-index/_search?preference=_replica
Если операция индексирования прошла успешно, оба поиска должны вернуть точноте же результаты.
Обратите внимание, что параметр preference
устарел в 6.1 и будет удален в 7, так как его использование не рекомендуется .