BigTable由三大组件组成,分别是链接到客户程序的库、一个Master服务器以及多个Tablet服务器。
Master服务器主要负责Tablet的分配、检测新加入的Tablet服务器或者过期失效的Tablet服务器以及对Tablet服务器进行负载均衡,根据前面博文客户端查询过程的分析,用户在查询数据时是不需要经过Master服务器的,那么可以这样理解,Master服务器对Tablet服务器的分配和管理都是在Chubby锁文件服务系统上进行的。
Tablet服务器就是对Tablet集合进行管理,并且负责过大的Tablet文件的分割,分割的操作会形成一个事件通知到Master服务器上,新的Tablet文件再由Master服务器进行分配。
Tablet服务器和Master服务器的状态是由Chubby进行跟踪的,Tablet服务器和Master服务器会在Chubby文件系统的目录下生成相应的文件,当文件被占有时,说明相应的服务器任然工作。
下面给出一张Master服务器加入集群的流程图:
时间: 2024-10-14 12:31:47