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 可知,集群内的工作节点包括关键节点与非关键节点两类,集群内的线程包括关键线程与非关
                 键线程两类,而集群拓扑内的通信开销由节点间通信开销、节点内部进程间通信开销与节点内部线程间的通信
   276   277   278   279   280   281   282   283   284   285   286