一种数据库集群的数据节点扩展方法及装置制造方法及图纸

技术编号:15500050 阅读:121 留言:0更新日期:2017-06-03 22:05
本发明专利技术公开了一种Postgres‑XL数据库集群的数据节点扩展方法及装置,包括:获取待添加的多个数据节点的节点信息;将每个数据节点的节点信息,按照信息类型分别存入对应的容器;统计待添加的数据节点的总节点数量,根据所述总结点数量生成对应的节点添加指令,通过所述节点添加指令多次调用add_datanode接口进行节点的添加;可见,在本方案中,用户将待添加的多个数据节点的节点信息统一添加后,便可根据总节点数量生成节点添加指令,根据该节点添加指令便可批量添加数据节点,实现了在数据节点扩展时通过执行一次命令,便可使集群自动增加节点,大大减少了人工成本。

Data node expansion method and device for database cluster

The invention discloses a data node of a Postgres XL database cluster expansion method and device, including: a plurality of data acquisition node node information to be added; each data node information, according to the information of container types separately in the corresponding to the total number of nodes; node data statistics to be added, according to the node the summary points to generate the corresponding add instructions added by the node adding instructions repeatedly call add_datanode interface nodes; visible, in this scheme, the node information unified multiple data nodes to add users will be added, can be added according to the total number of nodes generated instruction node according to the node added instructions can add bulk data node, realized the data node expansion by executing a command, it can make automatic cluster nodes, Labour costs are greatly reduced.

【技术实现步骤摘要】
一种数据库集群的数据节点扩展方法及装置
本专利技术涉及数据节点扩展
,更具体地说,涉及一种Postgres-XL数据库集群的数据节点扩展方法及装置。
技术介绍
Postgres-XL是一个基于PostgreSQL数据库的横向扩展开源SQL数据库集群,具有足够的灵活性来处理不同的数据库工作负载。在使用基于Postgres-XL数据库集群时,若想增加数据节点,目前只能在判定待添加的节点的信息正确时,通过手动执行add_datanode接口添加节点,每次只能增加一个数据节点,也就是说,原生集群是不支持批量增加数据节点的,只能通过命令重复多次的添加,不仅添加速度慢,还增加人工成本。因此,如何实现批量的添加数据节点,减少人工成本,是本领域技术人员需要解决的问题。
技术实现思路
本专利技术的目的在于提供一种Postgres-XL数据库集群的数据节点扩展方法及装置,以实现实现批量的添加数据节点,减少人工成本。为实现上述目的,本专利技术实施例提供了如下技术方案:一种Postgres-XL数据库集群的数据节点扩展方法,包括:获取待添加的多个数据节点的节点信息;将每个数据节点的节点信息,按照信息类型分别存入对应的容器;统计待添加的数据节点的总节点数量,根据所述总结点数量生成对应的节点添加指令,通过所述节点添加指令多次调用add_datanode接口进行节点的添加。其中,所述将每个数据节点的节点信息,按照信息类型分别存入对应的容器,包括:将每个数据节点的节点地址信息存入节点地址容器,将每个数据节点的端口号信息存入端口号容器,将每个数据节点的节点名称信息存入节点名称容器;其中,同一数据节点的节点地址信息、端口号信息、节点名称信息在对应容器的下标相同。其中,所述根据所述总结点数量生成对应的节点添加指令,包括:若所述总结点数量为N,则生成的节点添加指令为:执行N次add_datanode函数,从而实现添加N个数据节点;其中,N为正整数。其中,所述通过所述节点添加指令多次调用add_datanode接口进行节点的添加,包括:从各个容器中获取与待添加的目标数据节点对应的节点信息;判断与目标数据节点对应的节点信息是否正确;若是,则调用add_datanode接口添加目标节点,选定下一个待添加的目标数据节点,并继续执行所述从各个容器中获取与待添加的目标数据节点对应的节点信息的步骤;若否,则发出节点信息错误提示,选定下一个待添加的目标数据节点,并继续执行所述从各个容器中获取与待添加的目标数据节点对应的节点信息的步骤。一种Postgres-XL数据库集群的数据节点扩展装置,包括:获取模块,用于获取待添加的多个数据节点的节点信息;存储模块,用于将每个数据节点的节点信息,按照信息类型分别存入对应的容器;指令生成模块,用于统计待添加的数据节点的总节点数量,根据所述总结点数量生成对应的节点添加指令;节点添加模块,用于通过所述节点添加指令多次调用add_datanode接口进行节点的添加。其中,所述存储模块将每个数据节点的节点地址信息存入节点地址容器,将每个数据节点的端口号信息存入端口号容器,将每个数据节点的节点名称信息存入节点名称容器;其中,同一数据节点的节点地址信息、端口号信息、节点名称信息在对应容器的下标相同。其中,若所述总结点数量为N,则所述指令生成模块生成的节点添加指令为:执行N次add_datanode函数,从而实现添加N个数据节点;其中,N为正整数。其中,所述节点添加模块包括:节点信息获取单元,用于从各个容器中获取与待添加的目标数据节点对应的节点信息;判断单元,用于判断与目标数据节点对应的节点信息是否正确;第一添加单元,用于判定与目标数据节点对应的节点信息正确时,调用add_datanode接口添加目标节点,选定下一个待添加的目标数据节点,并触发所述节点信息获取单元;第二添加单元,用于判定与目标数据节点对应的节点信息不正确时,发出节点信息错误提示,选定下一个待添加的目标数据节点,并触发所述节点信息获取单元。通过以上方案可知,本专利技术实施例提供的一种Postgres-XL数据库集群的数据节点扩展方法,包括:获取待添加的多个数据节点的节点信息;将每个数据节点的节点信息,按照信息类型分别存入对应的容器;统计待添加的数据节点的总节点数量,根据所述总结点数量生成对应的节点添加指令,通过所述节点添加指令多次调用add_datanode接口进行节点的添加;可见,在本方案中,用户将待添加的多个数据节点的节点信息统一添加后,便可根据总节点数量生成节点添加指令,根据该节点添加指令便可批量添加数据节点,实现了在数据节点扩展时通过执行一次命令,便可使集群自动增加节点,大大减少了人工成本;本专利技术还公开了一种Postgres-XL数据库集群的数据节点扩展装置,同样能实现上述技术效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例公开的一种Postgres-XL数据库集群的数据节点扩展方法流程示意图;图2为现有技术中Postgres-XL数据库集群的数据节点扩展方法;图3为本专利技术实施例公开的一种具体的Postgres-XL数据库集群的数据节点扩展方法流程示意图;图4为本专利技术实施例公开的一种Postgres-XL数据库集群的数据节点扩展装置结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例公开了一种Postgres-XL数据库集群的数据节点扩展方法及装置,以实现实现批量的添加数据节点,减少人工成本。参见图1,本专利技术实施例提供的一种Postgres-XL数据库集群的数据节点扩展方法,包括:S101、获取待添加的多个数据节点的节点信息;具体的,参见图2,为本实施例提供的现有技术中的数据节点扩展方法,在添加节点时,只能通过手动执行add_datanode接口,并且该接口只支持一次增加一个数据节点。因此,参见图3,在本方案中,通过将想要增加数据节点的信息,先储存在一个临时函数中,该临时函数分析节点信息后,统计出要增加的节点个数,例如节点个数为n个,则执行n次add_datanode函数,从而增加n个节点,实现了一条命令增加多个节点的功能。S102、将每个数据节点的节点信息,按照信息类型分别存入对应的容器;其中,所述将每个数据节点的节点信息,按照信息类型分别存入对应的容器,包括:将每个数据节点的节点地址信息存入节点地址容器,将每个数据节点的端口号信息存入端口号容器,将每个数据节点的节点名称信息存入节点名称容器;其中,同一数据节点的节点地址信息、端口号信息、节点名称信息在对应容器的下标相同。需要说明的是,在原生集群的算法中,通过add_datanode接口增加数据节点时,需要传入节点的信息,例如节点地址,本文档来自技高网...
一种数据库集群的数据节点扩展方法及装置

【技术保护点】
一种Postgres‑XL数据库集群的数据节点扩展方法,其特征在于,包括:获取待添加的多个数据节点的节点信息;将每个数据节点的节点信息,按照信息类型分别存入对应的容器;统计待添加的数据节点的总节点数量,根据所述总结点数量生成对应的节点添加指令,通过所述节点添加指令多次调用add_datanode接口进行节点的添加。

【技术特征摘要】
1.一种Postgres-XL数据库集群的数据节点扩展方法,其特征在于,包括:获取待添加的多个数据节点的节点信息;将每个数据节点的节点信息,按照信息类型分别存入对应的容器;统计待添加的数据节点的总节点数量,根据所述总结点数量生成对应的节点添加指令,通过所述节点添加指令多次调用add_datanode接口进行节点的添加。2.根据权利要求1所述的数据节点扩展方法,其特征在于,所述将每个数据节点的节点信息,按照信息类型分别存入对应的容器,包括:将每个数据节点的节点地址信息存入节点地址容器,将每个数据节点的端口号信息存入端口号容器,将每个数据节点的节点名称信息存入节点名称容器;其中,同一数据节点的节点地址信息、端口号信息、节点名称信息在对应容器的下标相同。3.根据权利要求2所述的数据节点扩展方法,其特征在于,所述根据所述总结点数量生成对应的节点添加指令,包括:若所述总结点数量为N,则生成的节点添加指令为:执行N次add_datanode函数,从而实现添加N个数据节点;其中,N为正整数。4.根据权利要求3所述的数据节点扩展方法,其特征在于,所述通过所述节点添加指令多次调用add_datanode接口进行节点的添加,包括:从各个容器中获取与待添加的目标数据节点对应的节点信息;判断与目标数据节点对应的节点信息是否正确;若是,则调用add_datanode接口添加目标节点,选定下一个待添加的目标数据节点,并继续执行所述从各个容器中获取与待添加的目标数据节点对应的节点信息的步骤;若否,则发出节点信息错误提示,选定下一个待添加的目标数据节点,并继续执行所述从各个容器中获取与待添加的目标数据节点...

【专利技术属性】
技术研发人员:岳远方
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1