The invention relates to a load balancing method and an apparatus for a mirror node of a database cluster, which comprises: acquiring configuration parameters of a database cluster; wherein the configuration parameters include the number of cabinets, the number of servers per cabinet and the number of master node instances per server; and for the database cluster, the configuration parameters include the number of cabinets, the number of servers per cabinet, and the number of master node instances per server Each cabinet performs the following operations: according to the configuration parameters, the mirror node instances corresponding to all the main node instances of the current cabinet are evenly distributed to all other cabinets except the current cabinet to achieve load balancing of the database cluster mirror node. The technical scheme provided by the embodiment of the present invention disperses the mirror node instances corresponding to the main node instances of the current cabinet in other different cabinets. Even if the current cabinet fails, the network pressure can be dispersed in different cabinets, so that the whole cluster can be in a state of load balance.
【技术实现步骤摘要】
一种数据库集群镜像节点的负载均衡方法及装置
本专利技术涉及数据库
,尤其涉及一种数据库集群镜像节点的负载均衡方法及装置。
技术介绍
Greenplum是一个关系型数据库集群,它实际上是由数个独立的数据库服务组合成的逻辑数据库。与OracleRAC的share-disking(共享磁盘)架构不同,Greenplum采用Shared-Nothing(无共享)架构,整个集群由控制节点(MasterHost)和多个数据节点(SegmentHost)组成(这里可以理解为存放数据的多台机器),其中每一个数据节点上可以运行多个数据库。Greenplum数据库集群绝大部分使用在较为廉价的X86架构的PC服务器上,这样在降低使用成本的过程中不可避免的会带来硬件故障率的提高,为了较好的规避软硬件故障导致的数据库服务的中断,Greenplum还提供数据库层的Mirror(镜像)保护机制,也就是将每一个数据库节点的数据在另外的节点中同步镜像,即在主节点(Primary)正常工作时,集群的管理者将主节点的数据时刻同步到镜像节点(Mirror),当主节点所在的数据节点出现软硬件故障而失去服务能力,镜像节点立即接管主节点的所有服务,故单个节点的故障不影响到整个系统到使用。以拥有一百台服务器集群为例:机柜与服务器摆放的规划如图1所示,由于服务器数量比较多,Greenplum数据库集群(简称GP集群)中的数据库实例的数量也会比较多,以上环境有98个数据节点,其中每一个数据节点有4个主节点实例,即分别有392个主节点实例和镜像节点实例。因此,数据库集群镜像节点的分布也需要充分考虑服务器 ...
【技术保护点】
1.一种数据库集群镜像节点的负载均衡方法,其特征在于,包括:获取数据库集群的配置参数;其中,所述配置参数包括机柜数量、每个机柜的服务器数量以及每个服务器的主节点实例数量;针对所述数据库集群中的每一个机柜执行以下操作:根据所述配置参数,将当前机柜的所有主节点实例对应的镜像节点实例均匀分配到除当前机柜以外的所有其他机柜中,以实现数据库集群镜像节点的负载均衡。
【技术特征摘要】
1.一种数据库集群镜像节点的负载均衡方法,其特征在于,包括:获取数据库集群的配置参数;其中,所述配置参数包括机柜数量、每个机柜的服务器数量以及每个服务器的主节点实例数量;针对所述数据库集群中的每一个机柜执行以下操作:根据所述配置参数,将当前机柜的所有主节点实例对应的镜像节点实例均匀分配到除当前机柜以外的所有其他机柜中,以实现数据库集群镜像节点的负载均衡。2.根据权利要求1所述的方法,其特征在于,所述针对数据库集群中的每一个机柜执行以下操作:根据所述配置参数,将当前机柜的所有主节点实例对应的镜像节点实例均匀分配到除当前机柜以外的所有其他机柜中,包括:针对每一个机柜执行以下操作:根据当前机柜的主节点实例数量以及所述机柜数量,将当前机柜的主节点实例对应的镜像节点实例均匀分配到除当前机柜以外的所有其他机柜中;针对每一个机柜执行以下操作:根据当前机柜分配的镜像节点实例的数量以及当前机柜的服务器数量,将当前机柜分配的镜像节点实例均匀分配到当前机柜不同的服务器中。3.根据权利要求2所述的方法,其特征在于,所述针对每一个机柜执行以下操作:根据当前机柜的主节点实例数量以及所述机柜数量,将当前机柜的主节点实例对应的镜像节点实例均匀分配到除当前机柜以外的所有其他机柜中,包括:对所有机柜的主节点实例对应的镜像节点实例进行编号;针对每一个机柜执行以下操作:根据当前机柜的主节点实例对应的镜像节点实例的编号以及所述机柜数量,将当前机柜的所有主节点实例对应的镜像节点实例的编号均匀分配到除当前机柜以外的其他机柜中,最终得到每个机柜分配的镜像节点实例的编号数据。4.根据权利要求3所述的方法,其特征在于,所述根据当前机柜的主节点实例对应的镜像节点实例的编号以及所述机柜数量,将当前机柜的所有主节点实例对应的镜像节点实例的编号均匀分配到除当前机柜以外的其他机柜中,具体采用以下哈希函数进行均匀分配:HashFunc(X)=M%(N-1)其中,X为哈希地址,代表编号M所分配到的机柜;M为当前机柜的所有主节点实例对应的镜像节点实例的编号,N为机柜数量。5.根据权利要求3所述的方法,其特征在于,所述针对每一个机柜执行以下操作:根据当前机柜分配的镜像节点实例的数量以及当前机柜的服务器数量,将当前机柜分配的镜像节点实例均匀分配到当前机柜不同的服务器中,包括:针对每一个机柜执行以下操作:根据当前机柜分配的镜像节点实...
【专利技术属性】
技术研发人员:郭远胜,王滔,
申请(专利权)人:中国移动通信集团公司,中国移动通信集团湖南有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。