将 Gremlin 与 Neptune 结合使用的一般最佳实践 - Amazon Neptune

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 Gremlin 与 Neptune 结合使用的一般最佳实践

在将 Gremlin 图形遍历语言与 Neptune 一起使用时,请遵循以下建议。有关将 Gremlin 与 Neptune 一起使用的信息,请参阅使用 Gremlin 访问 Neptune 图形

重要

3.4.11 TinkerPop 版本中进行了更改,提高了查询处理方式的正确性,但目前有时会严重影响查询性能。

例如,这种查询的运行速度可能会慢得多:

g.V().hasLabel('airport'). order(). by(out().count(),desc). limit(10). out()

由于 3.4.11 的更改,极限步骤之后的顶点现在以非最佳方式获取。 TinkerPop 为避免这种情况,您可以通过在 order().by() 之后的任何点添加 barrier() 步骤来修改查询。例如:

g.V().hasLabel('airport'). order(). by(out().count(),desc). limit(10). barrier(). out()

TinkerPop 3.4.11 已在 Neptune 引擎版本 1.0.5.0 中启用。

构造 upsert 查询以利用引擎 DFE

使用 Gremlin mergeV() 和 mergeE() 步骤进行高效的更新插入解释了如何构建 upsert 查询以尽可能有效地使用DFE引擎。