Page 281 - 《软件学报》2021年第8期
P. 281
蒲勇霖 等:Storm 平台下的线程重分配与数据迁移节能策略 2563
合为 R = {,rr ,...,r } ,则工作节点 CPU、内存以及网络带宽这 3 类计算资源占用的极限为 R = (R R M ,R B ) .
,
C
N 1 n 2 n n m N N N N
C
C
C
其中, R 表示工作节点 CPU 资源占用率的极限为 R = {,rr C 2 n ,...,r n C m },R 表示工作节点内存资源占用率的极限
M
1 n
N
N
N
B
B
B
为 R M = {r M 1 n ,r M 2 n ,...,r n M m },R 表示工作节点网络带宽资源占用率的极限为 R = {,rr B 2 n ,...,r n B m } .若线程 e ji 所在工作
N
N
N
1 n
C
M
节点的 CPU 资源占用率为 o (单位%),内存资源占用率为 o (单位%),网络带宽资源占用率为 o (单位%),由于
B
i n i n i n
Storm 集群拓扑一旦提交数据将源源不断产生,且持续运行下去,因此为确保集群的高效运行,且工作节点的资
源不会溢出,这 3 类资源需要满足如下条件:
C
∑ o ≤ r C i n (6)
i n
∀ r ∈ n i R N
M
∑ o ≤ r M i n (7)
i n
∀ r ∈ n i R N
B
∑ o ≤ r B i n (8)
i n
∀ r ∈ n i R N
为保证集群拓扑能够正常运行,则集群工作节点各类计算资源需要满足资源约束.本文将满足工作节点
CPU 的正常计算称为符合 CPU 资源临界原则,将满足工作节点内存的正常计算称为符合内存资源临界原则,将
满足工作节点网络带宽的正常传输称为符合网络带宽资源临界原则.此外,具体结果在第 4.2 节体现.
定理 1. 当集群准备进行数据迁移时,判断被选中节点资源是否满足 CPU 资源临界原则、内存资源临界原
则以及网络带宽资源临界原则:若满足,则允许节点迁入数据.即,数据迁入原则 tr 需要满足如下条件:
C′
C
r + ∑ o ≤ r C (9)
i n i n i n
∀ r ∈ n i R N
M
r M ′ + ∑ o ≤ r M (10)
i n i n i n
∀ r ∈ n i R N
B′
B
r + ∑ o ≤ r B (11)
i n i n i n
∀ r ∈ n i R N
C′
其中, r 表示工作节点迁入数据后增加的 CPU 资源占用率, r M ′ 表示工作节点迁入数据后增加的内存资源占用
i n i n
B′
率, r 表示工作节点迁入数据后增加的网络带宽资源占用率.
i n
证明:根据定义 4 可知,当节点迁入数据后,该工作节点 CPU 的计算资源占用率小于极限值时,工作节点的
CPU 可以正常计算.则称满足 CPU 资源临界原则,即
C′
C
r + o ≤ r C (12)
i n i n i n
由于当流式处理集群执行任务时,拓扑一旦提交将持续运行下去,即
r + ∑ o ≤ r ;
C′
C
C
i n
i n
i n
∀ r ∈ R
n i N
同理可得,满足内存资源临界原则,即
M
M
r M ′ + ∑ o ≤ r ;
i n i n i n
∀ r ∈ n i R N
同理可得,满足网络带宽资源临界原则,即
r + ∑ o ≤ r .
B′
B
B
i n i n i n
∀ r ∈ n i R N
仅符合以上 3 条原则,允许节点迁入数据,即得到定理 1.
2.3 最优线程重分配模型
根据第 2.1 节与第 2.2 节建立最优线程重分配模型,该模型通过定义 3 与定义 4 确定非关线程的分配情况,
并生成新的拓扑路径,为建立数据迁移模型做铺垫.
根据定义 3 可知,集群内的工作节点包括关键节点与非关键节点两类,集群内的线程包括关键线程与非关
键线程两类,而集群拓扑内的通信开销由节点间通信开销、节点内部进程间通信开销与节点内部线程间的通信