Gremlin AWS海王星小精灵在散列边ID上分页

Gremlin AWS海王星小精灵在散列边ID上分页,gremlin,tinkerpop,amazon-neptune,Gremlin,Tinkerpop,Amazon Neptune,我有一个非常大的数据集,接近5亿条边,其中几乎所有的边都需要遍历。我试图通过在ID上分页来并行这些遍历。我的策略是尝试按ID分页,ID是MD5哈希。我尝试了如下查询: g.E().hasLabel('foo').has(id,TextP.startingWith('AAA'))用于第1页 g.E().hasLabel('foo').has(id,TextP.startingWith('AAB'))用于第2页 但每个查询似乎都在进行完整扫描,而不仅仅是一个子集。您建议我如何进行分页?我建议您在查询

我有一个非常大的数据集,接近5亿条边,其中几乎所有的边都需要遍历。我试图通过在ID上分页来并行这些遍历。我的策略是尝试按ID分页,ID是MD5哈希。我尝试了如下查询:

g.E().hasLabel('foo').has(id,TextP.startingWith('AAA'))
用于第1页
g.E().hasLabel('foo').has(id,TextP.startingWith('AAB'))
用于第2页

但每个查询似乎都在进行完整扫描,而不仅仅是一个子集。您建议我如何进行分页?

我建议您在查询中运行step以查看实际的遍历量

id
上使用
startingWith
谓词对我来说似乎不是一个优化的解决方案,因为它可能使用散列索引,而不是范围索引。 我会尝试在其他字符串属性上添加前缀,甚至添加一个随机[1..n]'replica'属性,并使用
.has('replica',I)
进行筛选,以获得最佳性能,尤其是在如此大的图形上