Яка різниця між люценом та еластичним пошуком


Відповіді:


217

Lucene - бібліотека Java . Ви можете включити його у свій проект та посилатися на його функції за допомогою викликів функцій.

Elasticsearch є JSON Based, Розподілена , веб - сервер побудований на Lucene. Хоча саме Lucene виконує справжню роботу внизу, Elasticsearch забезпечує нам зручний шар над Lucene. Кожен осколок, який буде створений у Elasticsearch, є окремим люценовим екземпляром. Отже, підсумовуючи

  1. Elasticsearch побудований над Lucene і забезпечує JEST-REST API на основі JSON для позначення особливостей Lucene.
  2. Elasticsearch забезпечує розподілену систему на вершині люцена . Розподілена система - це не те, для чого Lucene знає чи будує. Еластичний пошук забезпечує це абстрагування розподіленої структури.
  3. Elasticsearch надає інші підтримуючі функції, такі як пул потоків, черги, API моніторингу вузлів / кластерів, API моніторингу даних, управління кластером тощо.

1
Чи є різниця між обома щодо DataStore?
АлікЕльзін-кілака

Що з сховищем даних?
Рокіян

10
Не впевнений, чи відповідає це ваше питання про DataStore, але кожен вузол Elasticsearch містить Шарди. Єдиний індекс Elasticsearch розкидається по вузлах за допомогою Shards. Кожна Шреда зберігає частину документів в індексі Elasticsearch. Кожна з цих осколків - екземпляр луцена. Тож у корені всі дані зберігаються у Lucene, а Elasticsearch керує взаємодіями.
Airn5475

32

Окрім слів @Vineeth Mohan :

Висока доступність: Elasticsearch поширюється, щоб він міг керувати реплікацією даних, а це означає мати кілька копій даних у вашому кластері. Це забезпечує високу доступність.

Потужний запит DSL : Elasticsearch пропонує нам інтерфейс JSON для читання та запиту запитів на вершині Lucene. Завдяки Elasticsearch ви можете писати складні запити, не знаючи синтаксису люцена.

Без схеми (без схем): поля (ім'я, пари значень) для schemaне повинні визначатися раніше. Коли індексуєш дані, еластичний пошук може автоматично створювати схему під час виконання, як магія.


0

Я відповім з точки зору використання.

Lucene - бібліотека пошукових систем . Ви хочете використовувати його для створення власної пошукової системи: або нового конкурента Elasticsearch, або Solr, або щось вузьке для вашого випадку використання (наприклад, аналіз тексту).

Elasticsearch - пошукова система . Більшість людей використовують його для агрегації журналів, пошуку продуктів або варіанту цих двох (наприклад, аналіз соціальних медіа або пошук відповідних людей за деякими критеріями пошуку). Він побудований на вершині люцена, тому він розкриває більшість (хоча і не всі) своїх особливостей . Це також додає багато іншого, а саме:

  • REST API
  • запит DSL
  • розподілена система (шардинг, реплікація, управління кластером)
  • грані / агрегації
  • додаткові функції для загального використання (наприклад, обробка введення ) та управління (API для моніторингу відповідних показників , резервного копіювання та відновлення тощо)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.