OpenSearch — распределенная система полнотекстового поиска и анализа данных с открытым исходным кодом. После добавления данных в OpenSearch можно выполнять полнотекстовый поиск со сложными функциями: поиск по полю, поиск по нескольким индексам, сортировка результатов по полю и агрегирование результатов.
В OpenSearch данные структурируются и управляются с помощью индексов, политик и потоков данных.
Индексы — основная единица хранения данных. Каждый индекс содержит множество документов, где каждый документ представляет собой отдельную запись данных, похожую на строку в таблице базы данных. Когда документ сохраняется в OpenSearch, он индексируется и помещается в определенный индекс, выбранный пользователем. Так документ становится доступным для поиска и анализа.
В OpenSearch документ — это набор полей, где каждое поле представляет собой пару «ключ-значение» и имеет определенный тип. Это позволяет эффективно хранить данные в индексе и обеспечивает возможность быстрого поиска по полям в документе.
Политика — набор правил и настроек, которые регулируют обновление, удаление и другие действия с индексами. Применение политик оптимизирует использование ресурсов и поддерживает производительность за счет автоматического управления индексами. Например, вы можете настроить политику, которая через семь дней переведет индекс в режим «только для чтения», а через 50 дней удалит его.
Потоки данных управляют временными данными, которые поступают непрерывным потоком, например в системах мониторинга или логирования. Они распределяют данные по индексам и непрерывно обрабатывают их как единое целое.