分布式内存数据重分布方法及系统、主控服务器技术方案

技术编号:15867514 阅读:61 留言:0更新日期:2017-07-23 16:54
本发明专利技术提供分布式内存数据重分布方法及系统、主控服务器,该方法包括:接收内存数据存储服务器集群发送的每台内存数据存储服务器的内存使用数据;当至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值时,触发数据重分布过程;确定数据迁移信息,数据迁移信息包括需要数据迁出的服务器的IP地址、待迁移的HASH值、待迁移的业务数据量和目标服务器的IP地址;根据数据迁移信息将待迁移的业务数据迁移到目标服务器,目标服务器为内存数据存储服务器集群中新增的内存数据存储服务器。该方案在增加服务器进行数据重分布时可支持连续服务。

Distributed memory data redistribution method and system, master server

The invention provides a main control system, and the weight distribution method of the distributed memory data server, the method includes: each memory data storage server receives the memory data storage server cluster to send the memory usage data; when at least one memory data storage server using memory data memory usage is greater than the preset threshold, trigger data redistribution sure; data transfer information, data transfer information including business data and the data from the target server to server IP address, HASH, to be transferred after the migration of the IP address; according to the business data transfer information transfer will be migrated to the target server and target server memory for data storage server add cluster memory data in the storage server. The scheme supports continuous service when increasing the data redistribution of the server.

【技术实现步骤摘要】
分布式内存数据重分布方法及系统、主控服务器
本专利技术涉及数据存储和访问
,特别涉及一种分布式内存数据重分布方法及系统、主控服务器。
技术介绍
当前随着业务范围的快速扩展,银行﹑互联网企业面临着不断增长的交易欺诈风险。为降低这些交易的风险,企业将监控环节提前至交易时刻,即在后台服务器收到交易请求后,需要在毫秒级时间内提供历史交易数据以评价当前交易的风险等级,并将新增的交易数据传输给后台服务器成为新的历史评价数据。如何在短时间内为大量的并发交易提供历史交易情况,并将实时的交易数据加工成为实时的评价信息,为企业提供实时决策的依据,直接考验着企业的运营管理水平和技术能力。为此,多数企业采取分布式内存存储/访问技术,将实时数据分布存储在服务器集群的内存中,相比传统数据库,这种直接从内存中存取数据的方式不仅更快速,同时也能避免读取I/O的操作瓶颈,更符合企业短时间处理大量实时交易数据的需求。然而,随着处理交易数据量的不断增大,给服务器集群的内存存储空间带来了巨大压力。目前,企业一般是通过横向扩展的方式,即,增加新的服务器来扩展内存存储空间;再将原有服务器中的内存数据重新分布,最终完成内存服务器集群的扩容。这种方法存在如下问题:在服务器内存数据重分布时,内存数据的存储位置都会发生变化,需要进行大规模的数据重新加载,直至内存数据重分布过程完成之后,系统才能恢复运行状态,提供正常服务,这样大大影响了系统对外提供服务的能力,影响了业务数据处理的实时性,容易造成数据丢失,也降低了系统的安全性和可靠性。
技术实现思路
本专利技术实施例提供了一种分布式内存数据重分布方法,不影响系统对外提供连续服务的能力,不影响业务数据处理的实时性,也不会造成数据丢失,同时也不会降低系统的安全性和可靠性。分布式内存数据重分布方法包括:接收内存数据存储服务器集群发送的每台内存数据存储服务器的内存使用数据;当内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值时,触发数据重分布过程;确定数据迁移信息,所述数据迁移信息包括需要数据迁出的内存数据存储服务器的IP地址、待迁移的业务数据的HASH值、待迁移的业务数据量和目标服务器的IP地址;根据数据迁移信息将持久化存储的待迁移的业务数据迁移到目标服务器,所述目标服务器为内存数据存储服务器集群中新增的内存数据存储服务器。在一个实施例中,该方法还包括:在数据重分布完成后,向需要数据迁出的内存数据存储服务器发送内存数据重分布迁移完成信息,控制需要数据迁出的内存数据存储服务器将已完成迁移的业务数据删除。在一个实施例中,该方法还包括:接收前端访问服务器集群发送的业务数据,并确定该业务数据的HASH值,根据路由表和业务数据的HASH值,将业务数据发送至内存数据存储服务器集群中对应的内存数据存储服务器;所述路由表记录了HASH值与内存数据存储服务器的映射关系,每台内存数据存储服务器的数据存储格式为:<HASH值,业务数据>。在一个实施例中,根据路由表和业务数据的HASH值,将业务数据发送至内存数据存储服务器集群中对应的内存数据存储服务器,包括:判断该业务数据的HASH值是否介于路由表中HASH值的范围内,当该业务数据的HASH值介于路由表中HASH值的范围内时,从路由表中找到与该业务数据的HASH值对应的内存数据存储服务器的IP地址,将该业务数据发送至该IP地址对应的内存数据存储服务器。在一个实施例中,该方法还包括:在数据重分布完成后,对路由表进行参数更新;对路由表进行参数更新,包括:当内存数据存储服务器上存储的业务数据改变时,根据内存数据存储服务器的IP地址,更新对应的业务数据的HASH值;当增加了内存数据存储服务器时,增加新的内存数据存储服务器的IP地址,并增加对应的业务数据的HASH值。在一个实施例中,根据数据迁移信息将持久化存储的待迁移的业务数据分配给目标服务器,包括:将前端访问服务器集群发送的业务数据进行持久化存储,其存储格式为:<内存数据存储服务器的IP地址,HASH值,业务数据>;根据数据迁移信息,对本地存储的重分布表的参数进行更新;重分布表的参数包括需要数据迁出的内存数据存储服务器的IP地址、待迁移的业务数据的HASH值和目标服务器的IP地址,三者一一对应;根据更新后的重分布表,按顺序将待迁移的业务数据迁移到目标服务器。在一个实施例中,该方法还包括:将内存使用数据记录在数据重分布控制参数表中;其中,数据重分布控制参数表中的参数包括每台内存数据存储服务器的标识、每台内存数据存储服务器的内存使用数据和每台内存数据存储服务器的数据重分布状态,三者一一对应;数据重分布状态包括未开始重分布状态、开始重分布状态和完成重分布状态;当内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值时,触发数据重分布过程,包括:当监控到内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值,并且全部内存数据存储服务器的重分布状态为未开始重分布状态时,触发数据重分布过程;在数据重分布过程触发后,修改需要数据迁出的内存数据存储服务器的数据重分布状态。在一个实施例中,按如下方式确定数据迁移信息:确定在新增一台内存数据存储服务器的情况下,平均每台内存数据存储服务器的内存使用数据其计算公式如下:其中,Si为第i台内存数据存储服务器的内存使用数据;N为内存数据存储服务器集群中内存数据存储服务器的个数;确定每台内存数据存储服务器需要迁移的业务数据量:其中,Mi为第i台内存数据存储服务器需要迁移的业务数据量;space为内存数据存储服务器的内存空间;确定每台内存数据存储服务器迁移业务数据的HASH值的个数Ki:其中,m为每一个业务数据的HASH值所占用的存储空间;根据Ki和第i台内存数据存储服务器原始存储的业务数据的HASH值,并根据HASH值划分出相应的迁移业务数据。在一个实施例中,该方法还包括:接收前端访问服务器集群发送的读取数据请求;根据读取数据请求到对应的内存数据存储服务器上获取相应的业务数据;将相应的业务数据发送至前端访问服务器集群。本专利技术实施例还提供了一种主控服务器,该主控服务器包括:接收模块,用于接收内存数据存储服务器集群发送的每台内存数据存储服务器的内存使用数据;触发模块,用于当内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于内存使用阈值时,触发数据重分布过程;信息确定模块,用于确定数据迁移信息,所述数据迁移信息包括需要数据迁出的内存数据存储服务器的IP地址、待迁移的业务数据的HASH值、待迁移的业务数据量和目标服务器的IP地址;发送模块,用于根据数据迁移信息将持久化存储的待迁移的业务数据迁移到目标服务器,所述目标服务器为内存数据存储服务器集群中新增的内存数据存储服务器。在一个实施例中,发送模块还用于:在数据重分布完成后,向需要数据迁出的内存数据存储服务器发送内存数据重分布迁移完成信息,控制需要数据迁出的内存数据存储服务器将已完成迁移的业务数据删除。在一个实施例中,接收模块还用于:接收前端访问服务器集群发送的业务数据;信息确定模块还用于:确定该业务数据的HASH值;发送模块本文档来自技高网...
分布式内存数据重分布方法及系统、主控服务器

【技术保护点】
一种分布式内存数据重分布方法,其特征在于,包括:接收内存数据存储服务器集群发送的每台内存数据存储服务器的内存使用数据;当内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值时,触发数据重分布过程;确定数据迁移信息,所述数据迁移信息包括需要数据迁出的内存数据存储服务器的IP地址、待迁移的业务数据的HASH值、待迁移的业务数据量和目标服务器的IP地址;根据数据迁移信息将持久化存储的待迁移的业务数据迁移到目标服务器,所述目标服务器为内存数据存储服务器集群中新增的内存数据存储服务器。

【技术特征摘要】
1.一种分布式内存数据重分布方法,其特征在于,包括:接收内存数据存储服务器集群发送的每台内存数据存储服务器的内存使用数据;当内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值时,触发数据重分布过程;确定数据迁移信息,所述数据迁移信息包括需要数据迁出的内存数据存储服务器的IP地址、待迁移的业务数据的HASH值、待迁移的业务数据量和目标服务器的IP地址;根据数据迁移信息将持久化存储的待迁移的业务数据迁移到目标服务器,所述目标服务器为内存数据存储服务器集群中新增的内存数据存储服务器。2.如权利要求1所述的分布式内存数据重分布方法,其特征在于,还包括:在数据重分布完成后,向需要数据迁出的内存数据存储服务器发送内存数据重分布迁移完成信息,控制需要数据迁出的内存数据存储服务器将已完成迁移的业务数据删除。3.如权利要求1所述的分布式内存数据重分布方法,其特征在于,还包括:接收前端访问服务器集群发送的业务数据,并确定该业务数据的HASH值,根据路由表和业务数据的HASH值,将业务数据发送至内存数据存储服务器集群中对应的内存数据存储服务器;所述路由表记录了HASH值与内存数据存储服务器的映射关系,每台内存数据存储服务器的数据存储格式为:<HASH值,业务数据>。4.如权利要求3所述的分布式内存数据重分布方法,其特征在于,根据路由表和业务数据的HASH值,将业务数据发送至内存数据存储服务器集群中对应的内存数据存储服务器,包括:判断该业务数据的HASH值是否介于路由表中HASH值的范围内,当该业务数据的HASH值介于路由表中HASH值的范围内时,从路由表中找到与该业务数据的HASH值对应的内存数据存储服务器的IP地址,将该业务数据发送至该IP地址对应的内存数据存储服务器。5.如权利要求4所述的分布式内存数据重分布方法,其特征在于,还包括:在数据重分布完成后,对路由表进行参数更新;对路由表进行参数更新,包括:当内存数据存储服务器上存储的业务数据改变时,根据内存数据存储服务器的IP地址,更新对应的业务数据的HASH值;当增加了内存数据存储服务器时,增加新的内存数据存储服务器的IP地址,并增加对应的业务数据的HASH值。6.如权利要求1所述的分布式内存数据重分布方法,其特征在于,根据数据迁移信息将持久化存储的待迁移的业务数据分配给目标服务器,包括:将前端访问服务器集群发送的业务数据进行持久化存储,其存储格式为:<内存数据存储服务器的IP地址,HASH值,业务数据>;根据数据迁移信息,对本地存储的重分布表的参数进行更新;重分布表的参数包括需要数据迁出的内存数据存储服务器的IP地址、待迁移的业务数据的HASH值和目标服务器的IP地址,三者一一对应;根据更新后的重分布表,按顺序将待迁移的业务数据迁移到目标服务器。7.如权利要求1所述的分布式内存数据重分布方法,其特征在于,还包括:将内存使用数据记录在数据重分布控制参数表中;其中,数据重分布控制参数表中的参数包括每台内存数据存储服务器的标识、每台内存数据存储服务器的内存使用数据和每台内存数据存储服务器的数据重分布状态,三者一一对应;数据重分布状态包括未开始重分布状态、开始重分布状态和完成重分布状态;当内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值时,触发数据重分布过程,包括:当监控到内存数据存储服务器集群中的至少一台内存数据存储服务器的内存使用数据大于预设的内存使用阈值,并且全部内存数据存储服务器的重分布状态为未开始重分布状态时,触发数据重分布过程;在数据重分布过程触发后,修改需要数据迁出的内存数据存储服务器的数据重分布状态。8.如权利要求1所述的分布式内存数据重分布方法,其特征在于,按如下方式确定数据迁移信息:确定在新增一台内存数据存储服务器的情况下,平均每台内存数据存储服务器的内存使用数据其计算公式如下:其中,Si为第i台内存数据存储服务器的内存使用数据;N为内存数据存储服务器集群中内存数据存储服务器的个数;确定每台内存数据存储服务器需要迁移的业务数据量:其中,Mi为第i台内存数据存储服务器需要迁移的业务数据量;space为内存数据存储服务器的内存空间;确定每台内存数据存储服务器迁移业务数据的HASH值的个数Ki:其中,m为每一个业务数据的HASH值所占用的存储空间;根据Ki和第i台内存数据存储服务器原始存储的业务数据的HASH值,并根据HASH值划分出相应的迁移业务数据。9.如权利要求1所述的分布式内存数据重分布方法,其特征在于,还包括:接收前端访问服务器集群发送的读取数据请求;根据读取数据请求到对应的内存数据存储服务器上获取相应的业务数据;将相应的业务数据发送至前端访问服...

【专利技术属性】
技术研发人员:陈俊清舒文宇徐旻轩高峰
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京,11

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

1