В этой теме объясняется, как оптимизировать производительность CSS векторной базы данных с двух сторон — записи и запроса.
Запись векторных данных создает три основных накладных расхода: синхронизация реплик, обновление индекса и объединение сегментов. Когда индексные данные записываются в реальном времени, частые операции обновления индекса генерируют большое количество небольших сегментов. Это приводит к частому построению и объединению векторного индекса, что потребляет избыточные ресурсы CPU/IO. Вы можете попробовать следующие решения для оптимизации производительности записи.
На производительность запросов влияют следующие факторы: количество сегментов, механизм ограничения памяти и восстановление полей. Чрезмерно большое количество сегментов снижает эффективность поиска; когда off-heap память становится недостаточной, данные векторного индекса часто выгружаются из памяти и загружаются обратно; восстановление всех полей увеличивает нагрузку во фазе получения. Вы можете оптимизировать производительность запросов, устранив эти факторы.
Когда ресурсы памяти кластера недостаточны, данные часто обновляются или требуется высокая актуальность данных, вы можете включить автоматическое истечение кеша, чтобы неактивные данные удалялись из кеша. Это помогает оптимизировать производительность системы, обеспечить согласованность данных и повысить стабильность запросов. Применяйте этот подход, когда данные часто обновляются или ресурсы памяти находятся под нагрузкой.
Выполните следующую команду, чтобы установить тайм‑аут кеша:
PUT _cluster/settings{"persistent": {"native.cache.expiry.enabled": "true","native.cache.expiry.time": "30m"}}
Параметр | Тип | Описание |
|---|---|---|
native.cache.expiry.enabled | Boolean | Включать ли автоматическое истечение срока кэша. Диапазон значений:
|
native.cache.expiry.time | String | Тайм-аут неактивных элементов кэша. Этот параметр применяется только когда native.cache.expiry.enabled=true. Значение: строка времени, например, 24h (24 часа) или 30m (30 минут). Значение по умолчанию: 24h. |