Neo4j 4.0和elasticsearch都有全文搜索和反向索引,都有Apache lucene。那么,elasticsearch如何优于neo4j全文搜索呢?考虑到我们正在处理的知识图是在Neo4j中开发的一个数据存储模型。除此之外,我们为什么要在Neo4j 4.0中使用ElasticSearch呢?ElasticSearch提供了哪些东西,而Neo4j 4.0没有
jutyujz01#
那么ElasticSearch如何优于neo4j全文搜索呢?“更好”在很大程度上取决于你的用例。但是工具(Neo4j和ElasticSearch)是为完全不同的目的而构建的。Neo4j最适合用作图遍历引擎,从基于边(关系)的查询中返回数据。它可能有类似的功能,但它并不适合用作搜索引擎。想要像“模糊”匹配和相关性排名这样的东西吗?Neo4j * 不 * 会做任何这些事情。而且,ElasticSearch是一个真正的开箱即用的分布式数据存储。没有企业许可证,Neo4j不能分发。基本上,这归结为业务需求。如果数据存储主要需要执行图遍历,并服务于一些简单的搜索类请求,Neo4j可能就足够了。需要一个功能齐全的搜索引擎来服务于同样的数据吗?ElasticSearch更适合处理这个问题。
1条答案
按热度按时间jutyujz01#
那么ElasticSearch如何优于neo4j全文搜索呢?
“更好”在很大程度上取决于你的用例。但是工具(Neo4j和ElasticSearch)是为完全不同的目的而构建的。
Neo4j最适合用作图遍历引擎,从基于边(关系)的查询中返回数据。它可能有类似的功能,但它并不适合用作搜索引擎。
想要像“模糊”匹配和相关性排名这样的东西吗?Neo4j * 不 * 会做任何这些事情。而且,ElasticSearch是一个真正的开箱即用的分布式数据存储。没有企业许可证,Neo4j不能分发。
基本上,这归结为业务需求。如果数据存储主要需要执行图遍历,并服务于一些简单的搜索类请求,Neo4j可能就足够了。需要一个功能齐全的搜索引擎来服务于同样的数据吗?ElasticSearch更适合处理这个问题。