|
在主从结构(Master-Slave结构)中,将结点分为两组:Master结点和Slave结点,具体功能如下: 1.Master结点负责管理整个系统,监视Slave结点的运行状态,为其下的每一个Slave结点分配存储范围,是查询和写入的统一入口。在理论上,Master-Slave结构中Master结点只有一个即可。因此,Master结点的状态将严重影响整个系统的性能,当Master结点宕机时,会引起整个系统的瘫痪。为此,在实践中,经常设置多个副本Master结点,通过联机热备的方式提高系统的容错性。 2.Slave结点是数据存储结点,通常也维护一张本地数据的索引表。系统通过添加Slave结点来实现系统的横向扩展。在运行过程中,Slave结点不断地向Master结点报告自身的健康状况和负载情况,当某个Slave结点宕机或负载过高时,由Master结点负责统一调度,或者将此结点的数据重新分摊给其他结点,或者通过加入新结点的方式来调节。 为了提高Master-Slave结构的数据通信效率,一般采取数据流和控制流的分离方法。在Master-Slave框架中,Master结点一直处于监听状态,而Slave结点之间尽量避免直接通信以减少通信代价。HBase是典型的采用Master-Slave结构的存储系统。 【出处】朝乐门.数据科学,清华大学出版社,2016年8月第1版.
|