Релиз поискового движка Elasticsearch 1.0.0
13 февраля 2014 года
Увидел свет релиз свободной платформы для организации работы поисковых систем Elasticsearch 1.0.0, основанной на технологиях индексации и поиска, предоставляемых движком Lucene. Поисковые сервисы на базе Elasticsearch внедрены в GitHub, Mozilla, WordPress, Sony и StackOverflow. Код Elasticsearch написан на языке Java и распространяется под лицензией Apache. Готовые сборки подготовлены в форматах пакетов RPM и DEB.
Особенности Elasticsearch:
- Поддержка создания распределённых и отказоустойчивых конфигураций. Поисковый индекс может быть распределён на несколько узлов с использованием шардинга. Каждая порция данных индекса может быть реплицирована на несколько узлов. Операции чтения и поиска могут выполняться на любых узлах, содержащих реплицированные части индекса. Каждая порция данных общего индекса представляет собой полноценный обособленный индекс Lucene;
- Поддержка обслуживания одним экземпляром движка нескольких поисковых служб: поддерживается обработка более одного индекса и более одного типа контента на каждый индекс;
- Для управления и взаимодействия с поисковым сервером может использвоаться как HTTP RESTful API, так и нативный Java API. API абстрагирует все операции по опросу отдельных узлов и агрегации данных, позволяя работать с распределённым индексом, как с единым целым. Клиенты, работающие поверх HTTP RESTful API подготовлены для языков Javascript, PHP, Perl, Python и Ruby;
- Документо-ориентированный подход к хранению атрибутов. Отсутствие необходимости предварительного определения жесткой схемы структуры данных. Схема данных может варьироваться и определяться в привязке к разным типам контента, предоставляя возможность адаптации процесса индексации под свои нужды.
- Поддержка кэширования запросов и пополнения индекса в асинхронном режиме. Наличие средств для сохранения целостности индекса в случае краха сервера;
- Высокая производительность поиска, выполнение запросов со скоростью близкой к обработке данных в реальном времени;
- Обеспечение непротиворечивости операций - все действия на уровне одного документа соответствуют требованиям ACID (атомарность, согласованность, изолированность, надежность).
Ключевые улучшения, добавленные в версии Elasticsearch 1.0:
- Snapshot/Restore API - программный интерфейс для управления созданием/восстановлением резервных копий индексов или всего кластера;
- Гибкие средства для сбора статистики для анализа работы поисковой системы;
- Обратный поиск - вместо поиска всех удовлетворяющих запросу документов, осуществляется определение запросов, подходящих для заданного документа;
- cat API - простой интерфейс для ручной выборки данных, более наглядный для человека, чем JSON;
- Поддержка федеративного поиска, при котором логически объединяются результаты разных поисковых кластеров;
- Поддержка формата Doc values, позволяющем агрегировать данные документов большого размера, за счет промежуточного сохранения полей на диске, без держания их в памяти;
- Механизм отслеживания попыток загрузки слишком больших полей с данными в память, для исключения ситуаций, которые могут привести к исчерпанию доступной памяти.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.