Advertisement

Ozone Multi-Raft机制支持更高的吞吐量能力

阅读量:

文章结构概述

  • 引言
    • 对Multi-Raft机制的支持扩展至Ozone多Pipeline架构中的节点资源共享功能
    • 实现Pipeline之间节点资源共享所带来的性能优化
    • 针对Pipeline数量所设定的上限约束
    • 文献来源

前言

在前述关于Ozone的文章内容中,笔者反复强调Ozone在副本间数据一致性方面采用了Raft一致性协议。具体而言,Ozone通过Apache Ratis这一Raft的Java实现库来完成相关功能。在Apache Ratis的早期版本中,需要将Pipeline节点作为命令操作的目标对象传入,并且各Pipeline之间不允许存在重复节点。换句话说,这些Pipeline之间互不交叉。因此,可以认为早期Ozone对Raft的使用方式是单一的Raft结构,每个独立Pipeline构成一个Raft Group。集群中节点总数直接决定了Pipeline的最大数量,从而影响整个集群Container操作的吞吐量。这种独享节点的Raft模式存在一定的资源利用不足问题,未能充分调动Datanode节点的计算能力。如果某一节点能够被多个Pipeline组共享使用,则势必会增加SCM Pipeline的整体数量,从而进一步提升Container请求的处理能力。Apache Ratis在[RATIS-91: Add multi

全部评论 (0)

还没有任何评论哟~