Обмен технологиями

[Elasticsearch] Эволюция и выбор технологии поиска с открытым исходным кодом: Elasticsearch и OpenSearch

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1. Историческое развитие

В 2010 году с Apache 2.0 2.0 2.0 После выхода соглашения об открытом исходном кодеElasticsearch Быстро становится самой популярной компанией в мире.поисковый движок

Elasticsearch Часто сLogstash иКибана В совокупности эта комбинация называетсяЭластичный стек, используемый для включения вариантов использования анализа журналов, включая наблюдение за приложениями, анализ журналов безопасности и понимание поведения пользователей.

В 2015 году Amazon использовала этот протокол с открытым исходным кодом для запуска Amazon Elasticsearch ServiceAmazon ES), сервис облачного хостинга, который позволяет клиентам AWS запускать масштабируемый Elasticsearch. кластер, подключайте источники данных к конечным точкам кластера и загружайте, обрабатывайте, анализируйте или визуализируйте данные в облаке.

Однако в конечном итоге Elastic возразила против использования Amazon своих продуктов и товарных знаков, подав в 2019 году иск против технологического гиганта по обвинению в нарушении прав на товарный знак и ложной рекламе.

Вставьте сюда описание изображения

🚀《Elastic достигла соглашения с Amazon по иску о нарушении прав на товарный знак

Elastic и Amazon урегулировали иск в 2021 году, что привело к двум важным событиям:

  • В январе 2021 года Elastic объявила, что с 7.11 Начиная с версии Elasticsearch будет основан наServer Side Public LicenseSSPL ) и эластичная лицензия. Это изменение не позволяет Amazon и другим компаниям предлагать услуги Elasticsearch без прямого сотрудничества с Elastic.
  • В апреле 2021 года Amazon объявила, что начнет работу с последней версии Elasticsearch с открытым исходным кодом (7.10.2 ) для запуска нового проекта поисковой системы с открытым исходным кодом.потому чтоElasticsearch Имя больше нельзя использовать, новый проект названOpenSearch .Amazon также предлагает OpenSearch в качестве облачного сервиса под названиемAmazon OpenSearch Service

🚀 OpenSearch 官网:https://opensearch.org/

Напомним, что первая поисковая система Alibaba Cloud также называлась OpenSearch. По совпадению, служба открытого поиска Alibaba Cloud также называется OpenSearch. Ее адрес см. по адресу:https://developer.aliyun.com/article/67156

Alibaba Cloud OpenSearch (Открыть поисковый сервис) — это набор настраиваемых облачных поисковых сервисов самообслуживания, запущенных Alibaba Cloud. Первоначальная цель — создать платформу и обслуживать технологию поисковых систем, накопленную Alibaba за почти 10 лет, и открыть ее для большинства разработчиков, снизив затраты. внедрения профессиональных поисковых продуктов. Порог позволяет разработчикам легко иметь профессиональные поисковые продукты, аналогичные поисковым инструментам Taobao, Tmall и других приложений, по более низкой цене.

В этой статье представлен Opensearch, ответвление Elasticserach, а не OpenSearch от Alibaba Cloud. Обратите на это внимание.

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

Следующие сходства и различия в основном связаны с: официальным сайтом Elastic, официальным сайтом OpenSearch и связанными блогами.

2. Сходства между OpenSearch и Elasticsearch

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

Вставьте сюда описание изображения
И OpenSearch, и Elasticsearch предоставляютМультитенантная архитектура иисследовать всеРаспределенный поиск Механизм анализа возможностей.

Следовательно, оба могут быть использованы для удовлетворения Поиск по сайтуКорпоративный поиск иАнализ журналов случаи использования.

3. Разница между OpenSearch и Elasticsearch

При сравнении OpenSearch и Elasticsearch можно выделить следующие основные различия:

  • Версия
  • лицензия
  • Сообщество
  • Функция
  • безопасность
  • производительность
  • цена

Версия 3.1 сильно отличается

На следующем рисунке показаны независимые пути разработки и ритмы выпуска двух решений для поисковых систем Elasticsearch и OpenSearch.

Вставьте сюда описание изображения

  • Проходы Elasticsearch 1.x2.x5.x6.x7.x8.x Обновления версий, которые в конечном итоге дойдут до версии, выпуск которой ожидается в 2024 году.9.x Версия.
  • Открыть поиск из 1.0 Версии начнут выпускаться в июле 2021 г. и будут постепенно обновляться до2.x сериал, среди которых2.6 версия, как ожидается, станет последней в 2024 году2.x Серийная версия, планируется выпустить позже3.x ряд.

3.2 Различные лицензии

До 2021 года Elasticsearch был доступен на Apache. 2.0 2.0 2.0 Доступно для публичного использования по лицензии. Эта лицензия позволяет пользователям использовать, распространять или модифицировать программное обеспечение для любых целей, а также распространять модифицированные версии Elasticsearch без уплаты каких-либо лицензионных отчислений.

После разногласий с Amazon Elasticsearch теперь основан на ССПЛ иЭластичная лицензия Авторизоваться. После этого изменения Elasticsearch больше не считается строго открытым исходным кодом, поскольку теперь лицензия требует, чтобы любой, кто предоставляет функциональные возможности Elasticsearch третьим лицам, публиковал весь исходный код и все API, необходимые третьим лицам для его запуска.

OpenSearch в настоящее время основан на Лицензия Апач 2.0 Авторизация.

🚀 简述一下 SSPL 协议和常规开源的不同:SSPL 协议要求如果你提供基于此协议软件的服务,必须公开整个服务的源代码,而常规开源软件不需要。

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

Это так. За исключением нескольких крупных производителей, таких как BAT и Byte, в Китае есть лишь несколько кодов, которые можно по-настоящему переработать на основе открытого исходного кода и коммерциализировать.

С точки зрения непрофессионала, это соглашение похоже на коммерциализацию крупных производителей Amazon!

Некоторые программы с открытым исходным кодом, использующие протокол SSPL:

название программного обеспеченияСоглашение об использовании
время
MongoDBССПЛSSPL включен в октябре 2018 г.
ГрейлогССПЛВ ноябре 2020 года было объявлено, что версии 4.0 и более поздние будут использовать SSPL.
Elasticsearch и КибанаSSPL и эластичная лицензияВ январе 2021 года Elastic NV объявила, что в будущих версиях будет использоваться двойная авторизация с лицензиями SSPL и Elastic.

3.3 Сообщества разные

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

  • Документы сообщества Elasticsearch относительно зрелы, а официальный адрес форума:https://discuss.elastic.co/

Вставьте сюда описание изображения

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

3.4 Различные функции

Amazon первоначально создал форк Elasticsearch 7.10.2 При создании OpenSearch необходимо сначала удалить все несовместимые Apache. 2.0 2.0 2.0 Код лицензии.

Вставьте сюда описание изображения

Это включает в себя отключение всех функций зарядки и удаление всего кода Elastic X-Pack.

ФункцияElasticsearchOpenSearch
Примечание
лицензияSSPL / Эластичная лицензияЛицензия Apache 2.0OpenSearch поддерживает лицензию с полностью открытым исходным кодом.
функция безопасностиНекоторые функции являются платными.Доступен самый открытый исходный кодOpenSearch имеет тенденцию открывать исходный код своих функций безопасности
Оповещения и обнаружение аномалийПлатные версии и версии с открытым исходным кодомДоступен открытый исходный кодOpenSearch обеспечивает оповещение с открытым исходным кодом и обнаружение аномалий.
Поддержка SQLиметьиметьOpenSearch наследует функциональность SQL Open Distro.
Поддержка машинного обученияПлатные функцииДоступен как плагин с открытым исходным кодом.Сообщество OpenSearch предоставляет плагины машинного обучения
Совместимость клиентовПолная поддержка наших собственных продуктовСовместимость с Elasticsearch 7.10.OpenSearch поддерживает совместимость со старыми клиентами Elasticsearch.
поддержка сообществаПод руководством Elasticуправляемый сообществомOpenSearch поощряет вклад сообщества и обратную связь
Плагин экологияЗакрытая экосистемаОткрытая экосистема плагиновOpenSearch продвигает разработку плагинов с открытым исходным кодом
Анализ отслеживанияПлатные функцииДоступен открытый исходный кодOpenSearch предоставляет функции отслеживания и анализа с открытым исходным кодом.
Версия с долгосрочной поддержкойпоставлятьпоставлятьOpenSearch обязуется использовать долгосрочные поддерживаемые версии

Эластичный GitHub:https://github.com/elastic

Вставьте сюда описание изображения

Открытый поиск GitHub:https://github.com/opensearch-project

Вставьте сюда описание изображения

3.5 Различная безопасность

И Elasticsearch, и OpenSearch оснащены многими одинаковыми функциями безопасности.

Однако эти функции включены в OpenSearch, а некоторые функции Elasticsearch доступны только платящим клиентам.

Как указано на официальном сайте OpenSearch: по умолчанию это безопасно (по умолчанию в системе).

Вставьте сюда описание изображения

Гибкий список платных функций:https://www.elastic.co/cn/pricing

Вставьте сюда описание изображения

3.6 Различная производительность

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

Недавно компания Elastic опубликовала блог под названием «Elasticsearch против OpenSearch: выявление разрыва в производительности».

🚀 文章地址:https://www.elastic.co/cn/blog/elasticsearch-opensearch-performance-gap

В документации официального сайта Elastic подчеркивается: С момента появления ранней версии Elasticsearch OpenSearch не поспевает за темпами инноваций.Начиная с OpenSearch GA, Elasticsearch превысил 4 4 4 раз.

Официальное сравнение Elastic подчеркивает, как показано на рисунке ниже, преимущества Elasticsearch по различным ключевым показателям производительности, а также экономию ресурсов хранения.

Вставьте сюда описание изображения

  • текстовый запросText Querying): Elasticsearch быстрее, чем OpenSearch, по производительности текстовых запросов. 76 % 76% 76%
  • СортироватьSorting): Elasticsearch быстрее, чем OpenSearch, выполняет операции сортировки. 58 % 58% 58%
  • Гистограмма датыDate Histogram): Elasticsearch оказывается быстрее, чем OpenSearch, при агрегировании гистограммы дат. 81 % 81% 81% производительность.
  • УсловияTerms): Elasticsearch работает быстрее, чем OpenSearch, при обработке терминальных запросов. 61 % 61% 61%
  • объемRanges): С точки зрения запросов диапазона Elasticsearch быстрее, чем OpenSearch. 42 % 42% 42% производительность.
  • Elasticsearch использует хранилище Меньше, чем OpenSearch 37 % 37% 37%

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

См. скриншот ниже в блоге:https://www.elastic.co/cn/blog/migrating-1-billion-log-lines-opensearch-elasticsearch

Вставьте сюда описание изображения
Слева — Opensearch, справа — Elasticsearch.Очевидное сравнение показывает: Elasticsearch экономит больше денег, чем OpenSearch. 23 % 23% 23% места для хранения.

3.7 Цены варьируются

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

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

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

Еще одна новая функция в Китае — версия Elasticsearch, выпущенная поставщиками облачных технологий в тесном сотрудничестве с Elastic. Например: Alibaba Cloud Elasticsearch и Tencent Cloud Elasticsearch также часто используются.
Вставьте сюда описание изображения

Вставьте сюда описание изображения

3.8 Оба можно импортировать друг в друга.

Миграция OpenSearch в Elasticsearch См.:

Миграция Elasticsearch на OpenSearch См.:

4. Резюме

OpenSearch выпускается уже более 3 лет. Между Elasticsearch и OpenSearch есть много различий, но в конечном итоге они произошли от одной и той же версии: Elasticsearch. 7.10.2

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

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