Как сильно увеличение количества в индексе влияет на то, сколько места он будет занимать?
Есть ли какая-то формула для рассчета?
Зависит от нескольких факторов, но после достижения 10G должно рости более-менее линейно.
Есть ли смысл регулярно делать merge для уменьшения количества сегментов и шардов?
Не имеет. Хотя поиск по одному сегменту и теоретически быстрее, при merge теряются все кэши, то есть каждый раз у вас это будет вызывать временное замедление. Мы обычно рекомендуем делать merge только если индекс больше изменяться не будет.
Это уменьшит размер индекса? А скорость запросов к нему?
Сейчас только заметил, что пропустил слово "шардов" в первом вопросе.
Когда вы отвечали на него, вы сегменты или шарды имели в виду?
К примеру, если у нас недельные индексы, имеет смысл сжимать индексы за предыдущие недели?
И что даст большую экономию места? Уменьшение количества сегментов или шардов?
По скорости пока требований нет.
Когда вы отвечали на него, вы сегменты или шарды имели в виду?
Я имел в виду сегменты.
К примеру, если у нас недельные индексы, имеет смысл сжимать индексы за предыдущие недели?
Если эти индексы не изменяются, то уменьшение количества шард и сегментов может иметь смысл, так как уменьшение количества шард в кластере, может уменьшить нагрузку на кластер. Однако надо заметить, что уменьшение количества шард должно улучшить пропускная способность (throughput) системы оно может ухудшить время выполнения отдельных запросов (latency) из-за того, что выполнение одного запроса параллелизуется межде шардами, но внутри шарды выполняется на одном потоке.
По скорости пока требований нет.
"Преждевременная оптимизация — корень всех (или большинства) проблем в программировании." -- Дональд Кнут
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.