我刚刚开始研究OrientDB,使用OrientDB作为搜索引擎,我们必须使用 Solr 或 ElasticSearch (驱动程序兼容性)使用哪种工具。我还读过某个地方,如果我们定义索引为其他类型,则orientdb会提供Lucene Search本身。因此,如果这是真的,那么速度又如何呢,因为 Solr 和** Elasticsearch **从主内存中提供数据。
请提出OrientDB的内部功能是否可以满足完全搜索的要求,所以我们使用它代替Solr或ElasticSearch。
最佳答案
我是OrientDB全文和空间索引的维护者。
首先,这里是文档的链接,仅供引用:
http://orientdb.com/docs/last/Full-Text-Index.html
我们提供什么?
我们可以在使用Lucene作为引擎的类(例如表)的一个或多个属性上定义索引。这允许在可以使用完整Lucene语法的地方执行查询:
SELECT from Person WHERE Description LUCENE "progra* +senior -ruby"
您可以配置分析器和停用词,但是可以肯定的是,我们不能提供ES或SOLR能够提供的相同功能集。
我们正在为下一个3.0改进该组件:更像这样,突出显示,查询时的查询解析器配置,自定义分析器配置。
这些将改善用户体验,允许以完全不同的方式浏览图形。
我认为,如果您的主要目标是搜索,则ES或SOLR最合适:它们充满了有关文本的功能!
另一方面,如果您需要一个数据库来存储具有牢固关系的数据,并且希望提供正确的全文搜索(基于lucene),甚至是空间搜索,那么OrientDB可以为您提供帮助。
关于elasticsearch - OrientDB可以完全满足Solr或ElasticSearch的要求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44388723/