elasticsearch 带Elasticsearch索引的JanusGraph不工作,elasticsearch,gremlin,janusgraph,elasticsearch,Gremlin,Janusgraph" /> elasticsearch 带Elasticsearch索引的JanusGraph不工作,elasticsearch,gremlin,janusgraph,elasticsearch,Gremlin,Janusgraph" />

elasticsearch 带Elasticsearch索引的JanusGraph不工作

elasticsearch 带Elasticsearch索引的JanusGraph不工作,elasticsearch,gremlin,janusgraph,elasticsearch,Gremlin,Janusgraph,我在JanusGraph中添加了混合索引,以支持Elasticsearch的全文搜索 我有混合索引,如: myindex=mgmt.buildIndex(“myesindex”,Vertex.class) .addKey(“名称”,Mapping.TEXTSTRING.asParameter()) .addKey(“sabindex”,Mapping.TEXTSTRING.asParameter()) .buildMixedIndex(“搜索”); 我能够将数据加载到Elasticsearch

我在JanusGraph中添加了混合索引,以支持Elasticsearch的全文搜索

我有混合索引,如:

myindex=mgmt.buildIndex(“myesindex”,Vertex.class)
.addKey(“名称”,Mapping.TEXTSTRING.asParameter())
.addKey(“sabindex”,Mapping.TEXTSTRING.asParameter())
.buildMixedIndex(“搜索”);
我能够将数据加载到Elasticsearch引擎中。 而且我能够成功地执行查询

我面临的问题是当我点击查询时:

g.V().has('code','abc').valueMap()
==>{str=[some text], code=[abc], sab=[sab], sabindex=[sabindex], name=[[some tex]]}
我正在成功获取结果,但当我尝试使用名称和代码进行搜索时:

g.V().has('name', textContains('some text')).has('code','abc').valueMap()
代码字段也被索引(复合)

那时我没有得到任何结果。尽管数据以图表和弹性搜索的形式呈现


另一个场景是使用不同名称和代码的相同查询成功运行。我还多次重建了图形,但没有得到积极的结果。

第一次查询显示的值是
name=[[some tex]]
。它在
text
中缺少最后一个
t
,因此解释了为什么查询在
某些文本上不匹配

如果改为执行
textContains('some tex')
,则会得到与第一个查询相同的结果。使用
profile()
步骤将显示使用了
myindex


请参阅重新创建场景的这一部分。

感谢您的回复。我尝试使用textContains方法,它工作得很好,但查询的性能比eqDid慢。是否验证索引是否正在使用?如果您需要更具体的调试帮助,janusgraph用户组可能是您提问的更好论坛。是的,我检查了弹性引擎的日志。查询正在那里进行。