首页 > 解决方案 > 如何在非常大的图上运行算法?

问题描述

假设您有一个简单的 DAG,其中每个节点都存储节点的名称和表示节点“流”的值。我写了一个简单的算法来计算一个节点的流,它是节点的流加上通过传出边访问的所有邻居的流。

这适用于小型 DAG。但是,考虑一个非常大的 DAG——我们在这里讨论的是 Facebook 级别的规模。在这样的图上运行相同的算法是不可能的,它甚至不适合内存。我的理解是,我们需要以这样一种方式对图进行分区,以便我们可以让不同的工作机器处理图的不同部分。

我的问题是:这甚至可能吗?如果是这样,您将如何对 DAG/任何图进行分区,不仅适用于该算法,还适用于任何任意算法?

标签: parallel-processinggraph-theorydistributed-computing

解决方案


推荐阅读