繁体   English   中英

AWS Neptune:在顶点之前删除边的性能更高?

[英]AWS Neptune: More performant to drop Edges before Vertices?

使用 - Neptune 引擎:1.0.5.1、Apache Tinkerpop:3.5.2

我的问题是关于顶点移除的性能——它与顶点的加载无关。

我们有一个 cron 作业可以清除有限数量(1000 个)的“过期”顶点。

我们获取并存储要删除的顶点到一个集合中。

然后我们通过 gV([vertices]).sideEffect(drop()).next() 移除它们。

这很好用。

所有要移除的顶点都有 1 个 inE 和 1 个 outE。

当链接的顶点被删除时,这些边显然会自动删除。

我想知道如果我们先抓住并移除边,然后移除顶点,Neptune(在引擎盖下)是否会更高效。

只是想知道是否有人(主要使用 Neptune,但它也可能是其他图形数据库的“东西”)对此进行了调查并且有任何确凿的证据。

非常感谢

就使用 Amazon Neptune 而言 - 如果您只是执行 1,000 个顶点的单线程下降,其中每个顶点只有一个事件边缘,那么您正在做的事情很好。 如果您以多线程方式删除数千(或更多)顶点,那么首先删除边缘可以避免冲突,因为不同的线程可能会尝试锁定数据库中的相同 object。 在这种情况下,为避免冲突,从而避免重试,首先删除边缘可以提高性能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM