nosql - 计算所有顶点的快速方法(具有属性 x)

标签 nosql gremlin titan

我正在将 Titan 与 Cassandra 一起使用,并且有几个关于使用 Gremlin 查询数据库的(相关)问题:

1.) 有没有比计算所有顶点更快的方法

g.V.count()

Titan 声称使用索引。但是如何使用没有属性的索引?
WARN  c.t.t.g.transaction.StandardTitanTx - Query requires iterating over all vertices [<>]. For better performance, use indexes

2.) 是否有比计算属性为“myProperty”的所有顶点更快的方法
g.V.has('myProperty').count()

再次泰坦意味着以下:
WARN  c.t.t.g.transaction.StandardTitanTx - Query requires iterating over all vertices [(myProperty<> null)]. For better performance, use indexes

但是,我该怎么做呢?我已经有一个“myProperty”的索引,但它需要一个值来快速查询。

3.) 与边缘相同的问题......

最佳答案

使用 g.V.count() 迭代所有顶点是获得计数的唯一方法。它不能“更快”完成。如果您的图表太大以至于需要数小时才能获得答案,或者您的查询根本没有返回,您应该考虑使用 Faunus .然而,即使使用 Faunus,您也可以期待等待您的答案(这就是 Hadoop 的性质……这里没有亚秒级响应),但至少您会得到一个。
任何时候进行表扫描(即迭代所有顶点)时,都会收到“迭代所有顶点”的警告。一般来说,你不想这样做,因为你永远不会得到回应。添加索引不会帮助您更快地计算所有顶点。
边缘有相同的答案。使用 g.E.count()如果可以的话,在 Gremlin。如果时间太长,请尝试 Faunus,这样您至少可以得到答案。

关于nosql - 计算所有顶点的快速方法(具有属性 x),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21476729/

相关文章:

redis - 可以在运行的 redis 实例上禁用快照吗?

python - Gremlin 在创建的顶点中添加多标签

neo4j - 使用 gremlin 或 cypher 查询整个图

java - 泰坦有远程服务器吗?

titan - 为什么我无法连接到 Gremlin-Server?

node.js - 是否有用于 redis、mongo 或 mysql 的非阻塞 node.js 数据库驱动程序?

java - Spring Riak 集成

graph - DSE 图表 - 主机没有及时响应

nosql - Redis 按字段值查找哈希

azure - CosmosDB Graph API/Gremlin API RU 计算器