Graph Pregel BSP:分区和将用户输入由主用户分配给辅助用户之间的区别

Graph Pregel BSP:分区和将用户输入由主用户分配给辅助用户之间的区别,graph,parallel-processing,Graph,Parallel Processing,pregel文件提到: a) Pregel库将图形划分为多个分区,每个分区由 一组顶点和所有这些顶点的输出边… master确定图形将有多少个分区,并分配 每个工作计算机有一个或多个分区 及 b) 主机将用户输入的一部分分配给每个工作者。这个 输入被视为一组记录,每个记录都包含一个 任意数量的顶点和边输入的划分是 与图本身的分区正交,通常是 基于文件边界 我这里有两个问题: 1) 在b)中,主机将“用户输入的一部分分配给每个工作者”与“将一个或多个分区分配给每个工作者机器”有何不同。它们有不同的

pregel文件提到:

a) Pregel库将图形划分为多个分区,每个分区由 一组顶点和所有这些顶点的输出边… master确定图形将有多少个分区,并分配 每个工作计算机有一个或多个分区

b) 主机将用户输入的一部分分配给每个工作者。这个 输入被视为一组记录,每个记录都包含一个 任意数量的顶点和边输入的划分是 与图本身的分区正交,通常是 基于文件边界

我这里有两个问题:

1) 在b)中,主机将“用户输入的一部分分配给每个工作者”与“将一个或多个分区分配给每个工作者机器”有何不同。它们有不同的功能吗? 我认为我们必须找出我们的分区,然后将一个或多个分区提供给一台工作机器,仅此而已。我错过了什么


2) 如果输入的划分仅基于文件边界,这是否意味着分区的顶点可以驻留在不同的机器上?(因为分区的两个顶点可能位于不同的文件上,因此由不同的工作计算机处理)。

问题1:

将用户输入分配给每个工作者的主机与将一个或多个分区分配给每个工作者机器是相同的

用户输入将是一个图形。此图将被拆分为几个分区。这些分区将在工作人员之间进行拆分。 辅助进程是处理分区的地方。它们可能包含一个或多个分区。分区包含顶点。实体中的分区将选择活动顶点并运行其超级步计算

问题2:

否。分区内的所有顶点都位于同一辅助对象内。如果一个顶点将被转移到另一台机器(从而转移到另一个工人),它将被转移到另一个分区