LINUX.ORG.RU

Elasticsearch


24

0

Всего сообщений: 6

Amazon объявил о создании собственного форка Elasticsearch

Группа Open Source

На прошлой неделе компания Elastic Search B.V. объявила, что она изменяет свою стратегию лицензирования своих продуктов и не будут выпускать новые версии Elasticsearch и Kibana под лицензией Apache 2.0. Вместо этого новые версии будут предлагаться в соответствии с собственной Elastic License (которая ограничивает возможности его использования) или Server Side Public License (которая содержит требования, которые делают ее неприемлемой для многих в сообществе открытого исходного кода). Это означает, что Elasticsearch и Kibana больше не будут программным обеспечением с открытым исходным кодом.

Чтобы гарантировать, что версии обоих пакетов с открытым исходным кодом останутся доступными и будут поддерживаться, Amazon заявил о том, что предпримет шаги для создания и поддержки форка с открытым исходным кодом Elasticsearch и Kibana с лицензией Apache 2.0. В течение нескольких недель будет создано ответвление от последней кодовой базы Elasticsearch 7.10, остающейся под старой лицензией Apache 2.0, после чего форк продолжит развиваться самостоятельно и будет использован в будущих выпусках собственного дистрибутива от Amazon Open Distro for Elasticsearch, а также начнёт использоваться в сервисе Amazon Elasticsearch Service.

Также об аналогичной инициативе объявила компания Logz.io.

Elasticsearch — поисковая система. Написана на Java, в основе использует библиотеку Lucene, официальные клиенты доступны на Java, .NET (C#), Python, Groovy и ряде других языков.

Разрабатывается компанией Elastic вместе со связанными проектами — механизмом сбора данных и анализа журналов Logstash и платформой аналитики и визуализации Kibana; эти три продукта предназначены для использования в качестве интегрированного решения, называемого «Elastic Stack».

>>> Подробности

 , ,

kakaxa
()

Elasticsearch 5.0

Группа Open Source

Спустя 364 дня с момента выпуска версии 2.0 состоялся релиз Elasticsearch 5.0 — многофункционального распределённого движка полнотекстового поиска с поддержкой географии и аналитики. Проект написан на Java, построен на базе библиотеки Apache Lucene и распространяется под лицензией Apache 2.0.

( читать дальше... )

Скачок в нумерации версий связан с решением о синхронизации версий elasticsearch, kibana, logstash, beats и других продуктов Elastic.

>>> Полный список изменений

>>> Breaking changes

>>> Подробности

 

shahid
()

Elasticsearch 2.0

Группа Open Source

Выпущена новая версия Elasticsearch — современного распределенного движка полнотекстового поиска и выполнения аналитических запросов реального времени. Elasticsearch построен на основе библиотеки Apache Lucene и распространяется под лицензией Apache.

На пути от версии 1.0 к 2.0 было принято 2799 pull request'ов от 477 разработчиков.

Основные изменения в этой версии:

  • В предыдущих версиях выборка данных ограничивалась комбинацией запросов (query) и фильтров (filter); запросы отличались от фильтров возможностью вычисления функции ранжирования, а фильтры от запросов — более быстрым методом выполнения и возможностью кеширования. В новой версии запросы и фильтры были объединены, а режим исполнения выбирается контекстом в котором находится запрос. Это заметно упростило логику построения сложных запросов, так же позволило провести ряд оптимизаций. Так, например, медленные запросы поиска фраз и геопоиска теперь выполняются в две стадии — сначала выполняется быстрая апроксимация в режиме «фильтра», а после — медленный уточняющий запрос.
  • Многие фильтры в Elasticsearch могут выполняться в двух режимах — с поддержкой кеширования и без. В режиме с поддержкой кеширования первое применение фильтра приводит к полному вычислению значения фильтра на всех документах индекса, в режиме без кеширования фильтр вычисляется для множества документов, ограниченных предыдущими условиями. Ранее выбор режима выполнения отдавался пользователю, в новой версии режим выбирается автоматически на основе накопленной статистики выполнения запросов. Так же была повышена эффективность кеша — вместо простых bitset'ов теперь используется более быстрое и компактное представление.
  • Новая реализация parent/child-отношений более эффективна в комбинациях с другими типами запросов. Также в предыдущих версия колонка _parent, используемая для связи, целиком кешировалась в оперативной памяти. В новой версии используется дисковое хранилище «doc values», что привело к существенному снижению использования оперативной памяти сервером.
  • Добавлен новый тип агрегатных функций — "pipeline aggregations", позволяющий производить вычисления поверх других агрегатов. Этот режим применяется для вычисления производных, поиска максимальных и средних значений среди результатов других агрегатов, сглаживания графиков, прогнозирования временных рядов и аналогичных функций.
  • Улучшения надёжности — операция индексации теперь заканчивается после выполнения fsync журнала транзакций; для всех файлов индекса вычисляются и проверяются контрольные суммы; все операции перемещения файлов индекса теперь гарантировано атомарны. Протокол управления кластером модифицирован для более быстрого распространения изменений в больших кластерах.
  • Большой рефакторинг mapping'а — описания схемы данных и настроек индексации. Исправлено большое количество проблем, которые приводили к неоднозначным или неожиданным результатам. Выпущен специальный плагин для проверки совместимости схемы с новой версий и упрощения миграции.
  • Для компрессии данных теперь может использоваться не только быстрый алгоритм LZ4, но и более медленный (но эффективный) DEFLATE. Смена алгоритма может быть произведена на существующем индексе перед его оптимизацией, например для исторических данных, в которых больше не ожидается изменений.

Новая версия Elasticsearch может работать с индексами, созданными предыдущими версиями (начиная с 0.90). Опубликован список изменений, которые нужно учесть при миграции с предыдущих версий.

Вместе с выходом новой версии было объявлено, что проприетарный плагин для мониторинга кластера, Marvel, теперь можно бесплатно использовать для production-установок. Коммерческая лицензия требуется только для функций мониторинга группы кластеров Elasticsearch.

>>> Подробности

 

maxcom
()

Elasticsearch 1.5

Группа Open Source

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

Основные изменения этой версии:

  • Добавлена экспериментальная функция доступа к данным дочерних документов при выполнении запросов по parent/child отношениям и при работе с nested-объектами. Поддерживается извлечение произвольного количества дочерних документов с поддержкой постраничной выдачи, сортировки по релевантности и подсветки найденных фрагментов текста.
  • Shadow-реплики — возможность запуска нескольких узлов кластера Elasticsearch над одной (сторонней) распределенной файловой системой. Фактическая репликация и надежность хранения данных в этом случае обеспечивается файловой системой, а Elasticsearch обеспечивает отказоустойчивое распределение функций master/slave по узлам кластера.
  • Улучшены алгоритмы управления кластером, благодаря чему функции распределения шардов, создания, восстановления и удаления индексов стали работать более надежно и предсказуемо.
  • Были доработаны функции проверки контрольных сумм данных, добавленные в прошлой версии Elasticsearch 1.4.

>>> Подробности

 ,

maxcom
()

Elasticsearch 1.4

Группа Open Source

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

Одной из основных целей при выпуске этой версии — повышение стабильности и надежности сервиса:

  • Значительно улучшен алгоритм управления кластером и выбора master-узла, ранее имевший ряд известных проблем
  • Добавлена проверка контрольных сумм хранимых данных для определения «битых» сегментов индекса и журналов операций
  • Механизм прерывания исполнения запроса при превышении лимита на потребление оперативной памяти

Также в этой версии:

  • Оптимизирован механизм doc values — поколоночного хранилища данных для быстрого извлечения значений по первичному ключу. Механизм заменяет field cache — структуру в памяти, выполняющую аналогичную функцию. Использование doc values позволяет уменьшить потребление памяти процессом Elasticsearch и лучше использовать функции кеширования диска операционной системой. До оптимизации хранилище заметно уступало по производительности field cache.
  • Query cache — кеш результатов аналитических запросов, сохраняющий результаты выборок при отсутствии изменений. Кеш рекомендуется использовать в задачах анализа журналов в сочетании с партиционированием индексов по дате события. В этом случае финальный результат запроса будет получен комбинацией кешированных результатов из исторических партиций и выполненного запроса по свежей секции в которую идет запись.
  • Flake ID — новый алгоритм генерации идентификаторов документов, который снижает количество случайного ввода-вывода (оптимизация добавления в индекс документов без заданного пользователем идентификатора).
  • Эффективная поддержка HTTP Pipelining в пользовательском API

>>> Подробности

 

maxcom
()

Elasticsearch 1.0

Группа Open Source

Выпущена версия 1.0 Elasticsearch — сервера полнотекстового поиска и выполнения аналитических запросов в реальном времени. Elasticsearch представляет возможности распределения нагрузки по группе узлов с функциями отказоустойчивости; простой REST API с клиентами для большого количества языков; поддержку произвольного количества индексов и операций над группами индексов; работу в режиме без четко определенной схемы хранения данных. Elasticsearch построен на базе библиотеки Apache Lucene и распространяется под лицензией Apache 2.

Версия 1.0 находилась в разработке около 9 месяцев и включила более 8000 коммитов, созданных при участии более 180-ти контрибьюторов.

В этой версии (по сравнению с прошлой стабильной версией 0.90) были добавлены следующие функции:

  • Snapshot/Restore — набор API для создания backup'ов и восстановления индексов. Помимо локальной файловой системы, для хранения backup'ов может использоваться HDFS или Amazon S3.
  • Aggregations — новое семейство аналитических запросов. Функции построены на базе «фасетов» и дополнительно включают возможности вложенных агрегатов и комбинации агрегатных функций.
  • Distributed Percolation — новая реализация «percolator», «обратной» версии поиска. В этом режиме в индексе сохраняются поисковые запросы, а через API поступают новые документы, которые фильтруются через эти сохраненные запросы. Новая реализация позволяет распределять поисковую работу над одним документом по многим узлам, поддерживает функции подсветки совпадений, аналитические запросы и пакетный режим работы.
  • cat API — набор функций API, оптимизированных для использования в текстовой консоли. Предназначены для администрирования и поиска/исправления проблем на кластере.
  • Federated search — специальный узел, способный одновременно быть членом нескольких не связанных между собой кластеров. Позволяет распределять по разным кластерам большую часть операций поиска и индексирования.

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

>>> Подробности

 ,

maxcom
()