Кеш і пошук

OpenSearch

OpenSearch це відкритий розподілений пошуковий і аналітичний рушій, форк Elasticsearch 7.10 під ліцензією Apache-2.0.

Що це

OpenSearch зʼявився у 2021 році, коли Elastic змінила ліцензію Elasticsearch. AWS зробила форк Elasticsearch 7.10 та Kibana й випустила їх як OpenSearch і OpenSearch Dashboards.

У 2024 році проєкт перейшов під OpenSearch Software Foundation у складі Linux Foundation, тож ним керує нейтральна організація, а не одна компанія.

Технічно це той самий клас систем: Lucene, шарди, реплікація, REST API. Окрім пошуку, є вбудовані плагіни для безпеки, SQL-запитів, векторного та нейронного пошуку. Він доступний як керований сервіс Amazon OpenSearch Service.

Коли брати

  • Потрібен пошук чи аналіз логів із чистою ліцензією Apache-2.0.
  • Працюєте в AWS і хочете керований сервіс.
  • Хочете нейтральне управління проєктом без залежності від однієї компанії.

Коли не варто

  • Потрібні найновіші можливості Elastic Stack: деякі з них існують лише в Elasticsearch.
  • Каталог невеликий, і достатньо легкого Meilisearch чи Typesense.

Ключові поняття

Index / shard
Індекс ділиться на шарди, які розподіляються по вузлах кластера.
Query DSL
JSON-мова запитів: match, bool, range та інші.
OpenSearch Dashboards
Вебінтерфейс для візуалізації та запитів, форк Kibana.
k-NN / neural search
Плагіни для пошуку за векторними embeddings, подібності за змістом.

Приклад

Індексація документа та простий пошук через REST API.

Питання на співбесіді

  1. 1. Навіщо створили OpenSearch?

    Після зміни ліцензії Elasticsearch у 2021 році AWS та спільнота зробили форк версії 7.10 під Apache-2.0, щоб лишити повністю відкритий варіант.

  2. 2. Чи сумісний OpenSearch з клієнтами Elasticsearch?

    Версії на основі 7.10 здебільшого сумісні. Новіші клієнти Elasticsearch можуть відмовлятися працювати з OpenSearch, тому краще брати офіційні клієнти OpenSearch.

  3. 3. Що змінилося у 2024 році?

    OpenSearch передали OpenSearch Software Foundation під Linux Foundation, тобто управління стало нейтральним, а не під контролем AWS.

Порівняння з цією технологією

Логотипи належать їхнім власникам і використані лише для ідентифікації. Іконки: Simple Icons (CC0), Devicon (MIT).

Розділи платформи