跳到主要内容
版本:1.1

Selector

介绍

建表时,Metasrv 使用 Selector 为各 Region 选择 Datanode。Selector 根据当前节点租约进行选择;部分实现还会使用 Region 统计信息。

Selector 类型

Metasrv 目前提供以下几种类型的 Selectors:

LeaseBasedSelector

LeaseBasedSelector 从租约有效的 Datanode 中随机选择。

LoadBasedSelector

LoadBasedSelector 按照负载来选择,负载值则由每个 Datanode 上的 region 数量决定,较少的 region 表示较低的负载,LoadBasedSelector 优先选择低负载的 Datanode

RoundRobinSelector [默认选项]

RoundRobinSelector 以轮询方式选择 Datanode,是默认选项,也适用于大多数部署。

配置

您可以在启动 Metasrv 服务时通过名称配置 Selector

  • LeaseBasedSelector: lease_basedLeaseBased
  • LoadBasedSelector: load_basedLoadBased
  • RoundRobinSelector: round_robinRoundRobin

例如:

cargo run -- metasrv start --selector round_robin
cargo run -- metasrv start --selector RoundRobin