Aliases
Тема дорожной карты · Elasticsearch
Псевдоним индекса в Elasticsearch — это дополнительное имя, указывающее на один или несколько индексов и позволяющее выполнять запросы к нескольким индексам так, будто они представляют собой единую логическую единицу. Псевдонимы управляются через API POST /_aliases и поддерживают дополнительные фильтрующие запросы, что позволяет создавать отфильтрованные представления индекса без дублирования данных. Распространённый подход — присвоить псевдониму стабильное имя (например, logs-current), пока физический индекс за ним переключается согласно политике ILM: тогда код приложения никогда не нужно обновлять. Псевдонимы Elasticsearch также поддерживают значения маршрутизации, направляющие трафик поиска и индексирования на определённые шарды, что удобно для мультитенантных конфигураций. Поскольку псевдонимы разрешаются в момент запроса, они являются механизмом переиндексирования без простоев: можно создать новый индекс в фоне, а затем атомарно переключить псевдоним со старого индекса на новый.
Как это работает
Aliases: Index templates применяют settings + mappings к индексам, matching pattern (e.g., logs-*). ILM (Index Lifecycle Management) автоматизирует rollover, shrink, freeze, delete по age/size/doc count. Rollover API создаёт новый индекс при условиях (5 дней, 50GB, 100M docs). Aliases дают stable name, указывающий на один или много индексов — приложения query alias, ILM manage-ит backing-индексы. Reindex API копирует docs между индексами (для mapping changes + version migrations).
Когда применять
Для time-series (logs, metrics, events) ВСЕГДА используйте index templates + ILM + rollover — fixed-name индексы растут без границ. Write alias + read alias раздельно для безопасного rollover. Для mapping changes — reindex API; existing field mappings не меняются in place.
Типичные ошибки
Ловушки Aliases: fixed-name daily index без rollover (упираетесь в shard limits); нет ILM (старые индексы аккумулируются вечно); reindex без aliases (downtime при cutover); меняют mappings + ожидают "just works" (большинство type changes тихо игнорируются).