gpt4 book ai didi

gremlin - 如何在 Titan Gremlin 查询中使用 ElasticSearch 索引?

转载 作者:行者123 更新时间:2023-12-04 04:45:52 25 4
gpt4 key购买 nike

感谢 Titan docs,我已经设法在嵌入式模式下使用 Elastic Search 设置了 Titan(v0.3.1) .但是,我现在的问题是:如何利用 ES 索引?

例如,我想使用 Text.CONTAINS (根据上面链接的文档,这是受支持的)。具体来说,我想用字符串 "abc" 检索节点在名为 my_label 的键的值中的某处.

什么语法可以从 Gremlin 控制台实现这个目标?

最佳答案

搜索外部索引
以下查询将使用 Elasticsearch 后端:g.query().has('my_label',CONTAINS,'abc').edges()一般来说,任何 has包含三个参数的查询将使用您的外部索引后端(Elasticsearch 或 Lucene)。
以下查询将改为执行完全匹配:g.query().has('my_label','abc').edges()将您的属性键放入外部索引

graph.makeType().name("my_label").dataType(String.class).indexed("elastic", Vertex.class).unique(Direction.OUT).makePropertyKey();
添加 Titan 原生索引和外部索引的主要区别在于 indexed(..) 中的第二个参数。 call 指示应在其中为您的属性编制索引的外部索引的名称。
不幸的是,现在,一旦某个属性存在某个键,就不能在该键上添加索引;你必须从一个新的图表开始。
更多信息
Titan 文档很容易阅读:
https://github.com/thinkaurelius/titan/wiki/Indexing-Backend-Overview
( 奖励: Titan 正在扩展以包括其他类型的部分搜索,包括前缀和正则表达式: https://github.com/thinkaurelius/titan/pull/311)

关于gremlin - 如何在 Titan Gremlin 查询中使用 ElasticSearch 索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18191737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com