Что такое 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.

Вход