В нашем сценарии регистрации / мониторинга мы потребляем ~ 30 ТБ в день. Это то, что я узнал в прошлые годы: не важно количество документов, размер осколка элементарен!
Идеальный размер индекса зависит от количества и размера основного шарда. Есть приятное место для размера индекса и количества первичных осколков. Как это найти? Проверьте!
Настройка одного индекса шарда без реплик. Заполните его как можно быстрее (с реальными документами) и следите за производительностью записи / индексации. Проводите параллельный поиск в соответствии с вашим SLA. Индекс и время поиска должны расти линейно с добавлением объема данных до момента, когда задержка будет внезапно расти экспоненциально. Это максимальный размер осколка для вашей машины / установки.
Если вы не хотите тестировать, стремитесь получить 10-40 ГБ за осколок, как правило.
Таким образом, если ваш кластер состоит из трех узлов и трех сегментов на индекс (как вы, вероятно, хотите распределить записи по узлам), ваш «идеальный» индекс может составлять около 30–120 ГБ. Если вам нужны более быстрые записи, добавьте больше основных шардов - но не опускайтесь ниже 10 Гб за шард При таком размере затраты на управление осколками и накладные расходы на lucene больше, чем выгода от дополнительного осколка.
Просто чтобы было сказано:
- Чтобы предотвратить использование 64-битных указателей в JVM, никогда не следует создавать экземпляры с кучей больше 32 ГБ и дополнительными 32 ГБ, оставленными свободными для lucene.
- Предотвращение медленного (сетевого подключения) хранилища. Локальное хранилище - королева, SSD (или быстрее) - король. Но при использовании быстрого оптоволоконного канала SAN с поддержкой SSD / NVME должен работать так же, как и у нас.
В вашем случае подсчитайте, сколько времени займет заполнение индекса «идеального» размера и фрагмента. Затем поверните в этом интервале. Контролируйте и увеличивайте / уменьшайте количество первичных осколков, если это необходимо.
Существует много, много, много других вариантов для повышения производительности записи, но это будет очень хорошей отправной точкой.
Ура!