Что такое OpenSearch?

OpenSearch – это распределенный, управляемый сообществом, лицензированный Apache 2.0, со 100 % открытым исходным кодом комплект поисковых и аналитических ресурсов для различных примеров использования, таких как мониторинг приложений в режиме реального времени, анализ журналов и поиск по веб-сайтам. OpenSearch представляет собой легко масштабируемую систему для обеспечения быстрого доступа и реагирования на большие объемы данных с интегрированным инструментом визуализации, OpenSearch Dashboards, который упрощает пользователям изучение данных. OpenSearch работает на базе поисковой библиотеки Apache Lucene и поддерживает ряд поисковых и аналитических возможностей, таких как поиск по методу k-ближайших соседей (KNN), SQL, обнаружение аномалий, Machine Learning Commons, Trace Analytics, полнотекстовый поиск и многое другое.

Почему мне стоит использовать OpenSearch?

OpenSearch позволяет легко получать, защищать, искать, агрегировать, просматривать и анализировать данные для различных сценариев использования, таких как анализ журналов, поиск приложений, корпоративный поиск и многое другое. С OpenSearch вы получаете выгодный продукт со 100 % открытым исходным кодом, который можно использовать, изменять, расширять, монетизировать и перепродавать по своему усмотрению. Количество партнеров проекта OpenSearch постоянно увеличивается. Они предлагают различные услуги, такие как профессиональная поддержка, расширенные возможности и управляемые услуги OpenSearch. Проект OpenSearch по-прежнему будет предоставлять безопасный высококачественный набор инструментов для поиска и аналитики с большим выбором новых и инновационных функциональных возможностей.

Почему создан OpenSearch?

Разработчики используют программное обеспечение с открытым исходным кодом по разным причинам. Одной из наиболее ключевых является свобода в использовании этого программного обеспечения там, где и как им необходимо. 21 января 2021 года Elastic NV объявила об изменении стратегии лицензирования программного обеспечения и о том, что новые версии Elasticsearch и Kibana под разрешительной лицензией Apache версии 2.0 (ALv2) выходить не будут. Взамен Elastic выпускает Elasticsearch и Kibana с исходным кодом, доступным под лицензией Elastic или Server Side Public License (SSPL). Эти лицензии не являются открытыми исходными кодами и не дают пользователям ту же свободу. Поскольку некоторые разработчики хотят, чтобы их программное обеспечение было с открытым исходным кодом и чтобы можно было избежать блокировки одного поставщика, мы решили создать и поддерживать ветку последней версии ALv2 Elasticsearch и Kibana. Ветка называется OpenSearch и доступна под лицензией ALv2.

Как OpenSearch связан с сервисом Amazon OpenSearch?

Сервис Amazon OpenSearch – это управляемый AWS сервис, который позволяет запускать и масштабировать кластеры OpenSearch, не заботясь об управлении, мониторинге и обслуживании инфраструктуры, а также о накоплении глубоких знаний в области эксплуатации кластеров OpenSearch. Мы запустили поддержку OpenSearch в сервисе Amazon OpenSearch в сентябре 2021 года, начиная с версии 1.0, и переименовали сервис из Amazon Elasticsearch Service в сервис Amazon OpenSearch. С тех пор сервис поддерживает несколько новых функций, которые были добавлены в OpenSearch в нескольких версиях. В качестве примеров можно привести поддержку репликации в нескольких кластерах, Trace Analytics, потоков данных, преобразований, нового пользовательского интерфейса наблюдаемости и блокнотов на панели OpenSearch. Кроме того, были значительно улучшены k-NN, обнаружение аномалий, PPL, SQL и оповещение. Хотя сервис Amazon OpenSearch продолжает поддерживать устаревшие версии Elasticsearch с открытым исходным кодом (до версии 7.10), мы настоятельно рекомендуем применять OpenSearch в сервисе, чтобы воспользоваться новыми возможностями, которые создаются в рамках версий OpenSearch с открытым исходным кодом.

Будет ли сервис Amazon OpenSearch поддерживать новые версии Elasticsearch после 7.10?

Нет. Версии Elasticsearch после 7.10 не имеют открытого исходного кода и не выпускаются под разрешительной лицензией ALv2. Хотя сервис Amazon OpenSearch будет продолжать поддерживать версии Elasticsearch с открытым исходным кодом до версии 7.10, в дальнейшем мы будем использовать новые версии OpenSearch с открытым исходным кодом для предоставления функций и инноваций клиентам, применяющим сервис Amazon OpenSearch для различных сценариев использования, таких как анализ журналов, поиск и наблюдение.

Будет ли OpenSearch поддерживать совместимость и одинаковые возможности с новыми версиями Elasticsearch?

Стратегия развития OpenSearch определяется сообществом, и различные организации, включая AWS, вносят новые функции в открытый исходный код. OpenSearch используется для различных случаев, таких как мониторинг приложений в режиме реального времени, анализ журналов и поиск по веб-сайтам. Стратегия развития OpenSearch должна рассматриваться как независимая от Elasticsearch, и основное внимание в OpenSearch будет сосредоточено на предоставлении новых функций и инноваций, о которых просят сообщество и клиенты. Хотя OpenSearch может включать функции, схожие с новыми, доступными в Elasticsearch (и наоборот), реализация всех функций уникальна для этих двух проектов. Основной целью OpenSearch будет создание продукта, который наилучшим образом соответствует потребностям сообщества OpenSearch и наших клиентов.

Какие возможности предлагает OpenSearch?

Возможность

Преимущество

Расширенные возможности обеспечения безопасности

Предлагает возможности шифрования, аутентификации, авторизации и аудита. Включая интеграции с Active Directory, LDAP, SAML, Kerberos, веб-токенами JSON и многими другими. OpenSearch также обеспечивает детальный контроль доступа к индексам, документам и полям на базе назначенных ролей.

Встроенные поисковые возможности

Предлагает ряд функций, которые помогут вам настроить свой поиск, включая полнотекстовый запрос, автозаполнение, поиск с прокруткой, настраиваемые оценки и ранжирование.

Синтаксис SQL-запроса

Предоставляет знакомый синтаксис SQL-запросов. Используйте агрегацию, требования «сгруппировать по» и «где» для изучения данных. Считывайте данные в виде документов JSON или таблиц CSV, чтобы подстраиваться под необходимый формат.

Поддержка при поиске в SQL

Позволяет использовать привычный синтаксис запросов SQL, получая при этом доступ к богатому набору поисковых возможностей, таких как нечеткое сопоставление, усиление, сопоставление фраз и многое другое.

Data Prepper

Data Prepper – это сборщик данных на стороне сервера, способный фильтровать, обогащать, преобразовывать, нормализовать и агрегировать данные для последующей аналитики и визуализации. Data Prepper позволяет создавать пользовательские конвейеры для улучшения оперативного представления приложений.

Trace Analytics

Trace Analytics предоставляет способ получения и визуализации данных OpenTelemetry в OpenSearch. Эти данные могут помочь вам найти и устранить проблемы производительности в распределенных приложениях.

Аналитика приложений

Используйте аналитику приложений для создания пользовательских приложений наблюдаемости для просмотра состояния доступности ваших систем, где вы можете объединить события журнала с данными отслеживания и метрики в единое представление общего состояния системы. Это позволяет быстро переключаться между журналами, отслеживанием и метриками, чтобы найти источник любых проблем.

Язык конвейерной обработки

Язык конвейерной обработки предоставляет знакомый синтаксис запроса с полным набором команд, разделенных по каналам (|) для запроса данных.

Операционная панель

Дает возможность построить операционные панели для организации визуализаций Observability, созданных с помощью языка обработки Piped Processing Language (PPL).

Аналитика событий

Использует запросы на языке Piped Processing Language (PPL) для интерактивного построения и просмотра различных визуализаций ваших данных, включая корреляции журнала отслеживания.

Библиотека ML Commons

Используйте ряд алгоритмов машинного обучения, таких как kmeans и обнаружение аномалий, для обучения моделей и прогнозирования тенденций в ваших данных. ML Commons напрямую взаимодействует с PPL и Обработкой запросов на основе передачи состояния.

Отчеты

Планируйте, экспортируйте и делитесь отчетами с панелей управления, сохраненными поисковыми запросами, предупреждениями и визуализациями. 

Обнаружение аномалий

Используйте обнаружение аномалий машинного обучения на основе алгоритма Random Cut Forest (RCF), чтобы автоматически находить аномалии при получении данных. Вместе с предупреждением можно отслеживать данные почти в режиме реального времени и автоматически отправлять уведомления. 

Управление индексами

Задайте пользовательские политики по автоматизации рутинных задач управления индексами, такими как перенос и удаление, и примените их к индексам и шаблонам индексов.

Преобразование индекса

Создает обобщенное представление данных по определенным полям, чтобы можно было визуализировать или анализировать данные различными способами. Например, предположим, что у вас есть данные об авиакомпаниях, разбросанные по множеству полей и категорий, и вы хотите просмотреть сводку данных, упорядоченную по авиакомпаниям, кварталам, а затем по ценам. Вы можете использовать задание преобразования для создания нового, обобщенного индекса, организованного по этим конкретным категориям.

Сворачивание индекса

Выберите интересующие вас поля и используйте сворачивание индекса для создания нового индекса, содержащего только эти поля, агрегированные в более грубые временные блоки. Вы можете хранить месяцы или годы исторических данных за меньшую стоимость при той же производительности запросов.

Анализатор производительности и платформа RCA

Запрашивайте многочисленные метрики производительности и агрегации кластеров. Используйте интерфейс командной строки (CLI) PerfTop, чтобы быстро отображать и анализировать эти показатели. Используйте платформу анализа первопричин (RCA) для изучения проблем производительности и надежности в кластерах.

Асинхронный поиск

Выполняйте сложные запросы, не беспокоясь о времени ожидания, и запускайте асинхронные поисковые запросы в фоновом режиме. Отслеживайте ход выполнения запроса и извлекайте частичные результаты по мере поступления.

Trace Analytics

Принимайте и визуализируйте данные OpenTelemetry для распределенных приложений. Визуализируйте поток событий между приложениями, чтобы выявить проблемы производительности.

Выдача предупреждений

Автоматически отслеживайте данные и отправляйте оповещения о предупреждениях заинтересованным сторонам. Благодаря интуитивно понятному интерфейсу и мощному API можно легко настраивать и отслеживать оповещения и управлять ими. Создавайте очень специфичные условия оповещения, используя полный язык запросов и возможности сценариев OpenSearch.

Оповещение на уровне корзины

Создает политики оповещения, которые предупреждают о сгруппированных тенденциях в ваших данных. Например, вы можете оповещать каждый узел, у которого среднее значение ЦПУ превышает желаемый порог.

Репликация в нескольких кластерах

Репликация индексов, сопоставлений и метаданных с одного кластера OpenSearch на другой для создания межкластерной избыточности или разгрузки запросов к отчетам на вторичный кластер.

Поиск k-NN

С помощью машинного обучения запускайте алгоритм поиска ближайших соседей для миллиардов документов в тысячах измерений так же легко, как и при выполнении любого обычного запроса OpenSearch. Используйте требования агрегации и фильтров для дальнейшего уточнения операций по поиску сходства. Среди примеров использования поиска по сходству k-NN рекомендации продуктов, обнаружение мошенничества, поиск изображений, видео и связанных документов и многое другое.

Блокноты панели управления

Объединяйте панели управления, визуализации, текст и многое другое для обеспечения контекста и подробных объяснений при анализе данных.

Клиенты OpenSearch

OpenSearch поддерживает ряд языковых клиентов, таких как Go, JavaScript, Python, Java и другие. Используйте эти клиенты для создания приложений, которые напрямую интегрируются с OpenSearch.

Кто финансирует и поддерживает OpenSearch?

Многие компании, включая AWS, SAP, CapitalOne, RedHat, Logz.io, Aiven.io, Bonsai, Logit.io, InstaCluster и BAInsight, уже поддержали OpenSearch публично.

Мы поощряем и принимаем вложения от сообщества и не требуем для этого лицензионного соглашения с вкладчиками (CLA). Кроме того, если вы активно участвуете в проекте и хотели бы взять на себя больше ответственности, мы разработали процесс для сотрудников, не являющихся персоналом AWS, чтобы получить права сопровождающего в репозиториях проекта OpenSearch здесь

Как дальше будет развиваться OpenSearch?

Мы запустили первую общедоступную версию OpenSearch 1.0 в июле 2021 года и с тех пор выпустили много новых версий, которые описываются здесь. При большом интересе и поддержке со стороны сообщества мы представили несколько новых функций для ключевых сценариев использования, таких как анализ журналов, поиск и наблюдение. Эти области продолжают оставаться ключевыми темами для будущих улучшений как OpenSearch, так и нашего слоя визуализации панелей OpenSearch. Посмотрите эту статью, чтобы получить краткий обзор ключевых областей, на которых фокусируется OpenSearch. 

Как лицензируется OpenSearch?

Все программное обеспечение в проекте OpenSearch выпущено под лицензией Apache версии 2.0 (ALv2). ALv2 дает ясные разрешительные права на использование и именно ту свободу, которую люди ожидают от программного обеспечения с открытым исходным кодом: возможность использовать, изменять, расширять, монетизировать и перепродавать программное обеспечение с открытым исходным кодом где и как угодно. Что касается OpenSearch, то мы считаем, что лицензия позволит широко внедрять проект и вносить изменения, которые пойдут на пользу всему сообществу. Мы также опубликовали правила, разрешающие использование торговой марки OpenSearch, чтобы оказать поддержку в продвижении ваших предложений.

Где можно найти дополнительную информацию о совместимости клиента и API OpenSearch?

Просмотрите вопросы и ответы на веб-странице о версиях OpenSearch с открытым исходным кодом. Вопросы и ответы также являются отличным источником информации об инструментах и плагинах, совместимости обновлений, сообществе в целом, а также о том, как вы можете внести свой вклад и получить пользу от OpenSearch.

Дополнительные ресурсы

В состав OpenSearch входят некоторые фрагменты кода Elasticsearch, созданного Elasticsearch B.V. и распространяемого по лицензии Apache, а также фрагменты другого исходного кода. Elasticsearch B.V. не является источником другого исходного кода. ELASTICSEARCH является зарегистрированной торговой маркой Elasticsearch B.V.

 

Следующие шаги на AWS

Изучите дополнительные ресурсы по продукту
Подробнее об OpenSearch 
Зарегистрировать бесплатный аккаунт

Получите мгновенный доступ к уровню бесплатного пользования AWS. 

Регистрация 
Начать разработку в консоли

Начните разработку с использованием AWS в консоли управления AWS.

Вход