📜  HBase-体系结构

📅  最后修改于: 2020-11-30 04:12:20             🧑  作者: Mango


在HBase中,表被分为区域,并由区域服务器提供服务。区域按列族垂直划分为“商店”。商店以文件形式保存在HDFS中。下面显示的是HBase的体系结构。

注意:术语“商店”用于区域以解释存储结构。

HBase架构

HBase具有三个主要组件:客户端库,主服务器和区域服务器。可以根据需要添加或删除区域服务器。

主服务器

主服务器-

  • 将区域分配给区域服务器,并使用Apache ZooKeeper的帮助来完成此任务。

  • 处理跨区域服务器的区域负载平衡。它卸载繁忙的服务器,并将区域转移到占用较少的服务器。

  • 通过协商负载平衡来维护集群的状态。

  • 负责架构更改和其他元数据操作,例如创建表和列系列。

地区

区域不过是分散在各个区域服务器中的表。

区域服务器

区域服务器具有的区域-

  • 与客户端通信并处理与数据相关的操作。
  • 处理其下所有区域的读写请求。
  • 通过遵循区域大小阈值来确定区域的大小。

当我们深入研究区域服务器时,它包含区域和存储,如下所示:

区域服务器

该存储包含内存存储和HFiles。 Memstore就像一个缓存。最初输入到HBase的所有内容都存储在此处。以后,数据将作为块传输并保存在Hfiles中,并且刷新了存储器。

动物园管理员

  • Zookeeper是一个开源项目,提供诸如维护配置信息,命名,提供分布式同步等服务。

  • Zookeeper的临时节点代表不同的区域服务器。主服务器使用这些节点发现可用的服务器。

  • 除了可用性,这些节点还用于跟踪服务器故障或网络分区。

  • 客户端通过zookeeper与区域服务器通信。

  • 在伪模式和独立模式下,HBase本身将负责zookeeper。