Полнотекстовый поиск в Neo4j против Elasticsearch - PullRequest
1 голос
/ 07 мая 2020

И Neo4j 4.0, и elasticsearch имеют полнотекстовый поиск и инвертированный индекс с apache lucene. Так чем же elasti c search лучше, чем полнотекстовый поиск neo4j?
Учтите, что мы имеем дело с графом знаний как с моделью хранения данных, разработанной в Neo4j. Кроме того, почему мы должны использовать elasticsearch с Neo4j 4.0. что предлагает elasticsearch, но не neo4j 4.0

1 Ответ

0 голосов
/ 12 мая 2020

Так чем же elasti c search лучше, чем полнотекстовый поиск neo4j?

«Лучше» во многом зависит от вашего варианта использования. Но инструменты (Neo4j и ElasticSearch) были созданы для совершенно разных целей.

Neo4j лучше всего использовать в качестве механизма обхода графа, возвращая данные из запросов на основе границ (отношений). У него могут быть аналогичные возможности, но он просто не предназначен для использования в качестве поисковой системы.

Хотите таких вещей, как "нечеткое" соответствие и рейтинг релевантности? Neo4j не ничего из этого сделает. Кроме того, ElasticSearch - это действительно готовое распределенное хранилище данных. Neo4j не может распространяться без корпоративной лицензии.

В основном это сводится к бизнес-требованиям. Если хранилищу данных в основном необходимо выполнять обходы графа и обслуживать несколько простых поисковых запросов, одного Neo4j может быть достаточно. Нужна полнофункциональная поисковая система для обслуживания тех же данных? ElasticSearch лучше всего подходит для этой цели.

...