掌桥专利:专业的专利平台
掌桥专利
首页

数据处理方法及系统、服务器、电子设备和存储介质

文献发布时间:2024-04-18 19:58:21


数据处理方法及系统、服务器、电子设备和存储介质

技术领域

本申请涉及数据库技术领域,具体而言,涉及一种跨机房的数据处理方法及系统、服务器、电子设备和存储介质。

背景技术

随着互联网经济科技的发展,一些业务产品可以面向全球多个国家的用户提供服务。而在大数据背景下,分布式数据处理成为业务服务的重要核心。如何在分散地、跨越大(如跨洲际)的物理距离环境的限制下,为用户提供快速、安全、优质的数据服务体验是分布式数据处理的主要研究点。

而传统的分布式数据库系统包括单机房模式和多机房冗余模式。单机房模式为在一个城市的一个机房中进行业务服务器和数据存储的部署。但单机房模式的可用性较低,当该机房出现故障时,会使得业务服务器发生中断,不能再提供服务;多机房冗余模式为在一个城市的两个或多个机房进行业务服务器和数据存储的部署,当其中一个机房发生故障时,可以同步切换另一个冗余机房提供服务。但由于多机房一般设置在一定的物理距离范围内,则依然可能会出现不可抗力因素导致的多机房均不能提供服务的问题。

基于此,发明人认为目前用于跨机房(如跨洲际)的数据处理方法还有待改进。

发明内容

本申请公开了一种跨机房的数据处理方法及系统、服务器、电子设备和存储介质。

根据本申请的一方面,提供了一种数据处理方法。所述数据处理方法包括:判断用户数据请求的类型;如果判断出用户数据请求的类型为单数据请求,则通过内容分发网络将用户数据请求分发至分流数据中心;通过分流数据中心处理与用户数据请求所对应的响应数据;或者如果判断出用户数据请求的类型为聚合数据请求,则通过内容分发网络将用户数据分发至中间处理层;通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据。

根据本申请的一些实施例,通过内容分发网络将用户数据请求分发至分流数据中心包括:内容分发网络基于用户所在的地域位置确定与用户最近的分流数据中心;将用户数据请求发送至最近的分流数据中心。

根据本申请的一些实施例,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据包括:通过中间处理层对聚合数据中心进行分组处理,以使得中间处理层与每一个聚合数据中心仅通信一次。

根据本申请的一些实施例,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据包括:通过中间处理层多线程地向多个聚合数据中心发送用户数据请求;接收中间处理层在多个聚合数据中心读取并异步聚合的响应数据。

根据本申请的一些实施例,接收中间处理层在多个聚合数据中心读取并异步聚合的响应数据包括:中间处理层优先读取聚合数据中心的缓存数据。

根据本申请的一些实施例,用户数据请求包括用户数据变更请求,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据包括:判断出数据变更异常的情况下,通过中间处理层将变更数据写入队列,并多线程地定时向多个聚合数据中心进行数据同步。

根据本申请的一些实施例,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据包括:通过中间处理层解密从聚合数据中心读取的加密信息。

根据本申请的又一方面,提供了一种跨机房的数据处理系统,包括服务器和业务端。服务器接收来自业务端的用户数据请求,并判断用户数据请求的类型;服务器在用户数据请求的类型为单数据请求的情况下,通过内容分发网络将用户数据请求分发至分流数据中心;在用户数据请求的类型为聚合数据请求的情况下,通过内容分发网络将用户数据分发至中间处理层;服务器在用户数据请求的类型为单数据请求的情况下,通过分流数据中心处理与用户数据请求所对应的响应数据;以及,在用户数据请求的类型为聚合数据请求的情况下,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据。

根据本申请的又一方面,还提供了一种用于跨机房数据处理的服务器。服务器包括判断模块、分发模块和处理模块。判断模块判断用户数据请求的类型;分发模块在用户数据请求的类型为单数据请求的情况下,通过内容分发网络将用户数据请求分发至分流数据中心;以及,在用户数据请求的类型为聚合数据请求的情况下,通过内容分发网络将用户数据分发至中间处理层;处理模块在用户数据请求的类型为单数据请求的情况下,通过分流数据中心处理与用户数据请求所对应的响应数据;以及,在用户数据请求的类型为聚合数据请求的情况下,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据。

本申请通过用户数据请求类型将用户数据请求分发至分流数据中心或者中间处理层,可以通过分流数据中心或中间处理层进行相应地数据处理。以及通过中间处理层可以实现与多个聚合数据中心的同批次数据交互,减少了跨机房数据访问的次数。本申请可以减少用户数据请求的耗时,已经可以避免和减少跨机房通信的次数,可以提供分布式数据的快速、准确和安全性,提高用户体验。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出本申请示例实施例的数据处理方法的一流程示意图;

图2示出本申请示例实施例的数据处理方法的示意图;

图3示出本申请示例实施例的数据处理方法的又一流程示意图;

图4示出本申请示例实施例的服务器的示意图。

附图标记说明:

服务器1;判断模块10;分发模块20;处理模块30。

具体实施方式

现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。

所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有这些特定细节中的一个或更多,或者可以采用其它的方式、组元、材料、装置等。在这些情况下,将不详细示出或描述公知结构、方法、装置、实现、材料或者操作。

此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。

下面结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在大数据背景下,某种业务可以面向全球各个国家提供服务。传统的跨机房分布式数据库通过异地机房之间的通信进行数据交互,而异地机房之间的服务通信的延迟较高,一般平均在几十到几百毫秒。一次用户数据请求可能会导致几次甚至几十次的服务器之间的通信。多次通信之间的高延迟的接口访问叠加会增加整体数据请求访问的耗时。一般异地机房之间需要通过专线进行通信,而长距离(如数千公里)的传输环境不能完全避免网络不稳定的故障发生。

因此,在全球物理距离范围下,如何实现跨洲际物理距离范围的多机房数据中心之间的数据交互,以及如何避免和减少多次跨机房通信以减少耗时是需要解决的技术问题。

基于此,本申请提供了一种跨机房的数据处理方法。图1示出本申请示例实施例的数据处理方法的一流程示意图。如图1所示,该数据处理方法包括步骤S100-S500,该数据处理方法可以由服务器所执行。

根据示例实施例,在步骤S100中,服务器判断用户数据请求的类型。

例如,服务器接收来自业务端的用户数据请求,用户数据请求的类型可以为单数据请求和聚合数据请求。用户数据请求如包括用户注册、登陆、校验、查询或变更等业务。

单数据请求类型为可以为需要通过单一数据中心进行数据处理(如数据读取)的数据请求;聚合数据请求可以为需要通过多个数据中心进行数据处理(如数据读取)的数据请求。

图2示出本申请示例实施例的数据处理方法的示意图。

如图2所示,用户通过业务端发送用户数据请求,内容分发网络(如CDN路由层)判断用户数据请求的类型,并根据用户数据请求的类型将用户数据请求分流到分流数据中心或者中间处理层。

在步骤S100中,服务器判断用户数据请求的类型为单数据请求,卷号:230403CI则进入步骤S200-S300。

在步骤S200中,服务器通过内容分发网络将用户数据请求分发至分流数据中心。

在步骤S300中,服务器通过分流数据中心处理与用户数据请求所对应的响应数据。

例如,如图2所示,服务器与多个跨区域的机房通信连接,每个机房部署有数据中心。数据中心主要包括数据读写服务、缓存层、和提供各个加密的数据读写接口等。

这里可以理解的是,跨区域的机房可以为设置在一个城市中的不同位置的多个机房,也可以为设置在不同国家多个城市中的机房,本申请对比不做限制。

在用户数据请求为单数据请求的情况下,服务器通过CDN路由层将用户数据请求发送至相应的分流数据中心,并从分流数据中心读取相应地数据。

图3示出本申请示例实施例的数据处理方法的又一流程示意图。

可选地,如图3所示,在步骤S200中,服务器通过内容分发网络将用户数据请求分发至分流数据中心包括步骤S210-步骤S220。

在步骤S210中,内容分发网络基于用户所在的地域位置确定与用户最近的分流数据中心。

在步骤S220中,内容分发网络将用户数据请求发送至最近的分流数据中心。

例如,内容分发网络将用户数据请求分发至具体的哪一个分流数据中心可以由用户的地理位置所决定。如通过用户的网络运行商确定用户IP所在位置,并根据所在位置将用户数据请求发送至对应的机房的分流数据中心。

示例性地,确定出用户A属于地区C,则内容分发网络根据用户IP解析出地区C,并将用户数据请求发送至距离地区C最接近的分流数据中心。如此设置,可以使得分散在各地的用户可以根据用户的地理位置自动选择最近的机房进行数据访问,实现尽可能的在同一个机房内进行数据处理,可以减少跨机房访问的次数,从而缩短用户数据请求的耗时。

在步骤S100中,服务器判断用户数据请求的类型为聚合数据请求,则进入步骤S400-S500。

在步骤S400中,服务器通过内容分发网络将用户数据分发至中间处理层。

在步骤S500中,服务器通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据。

在用户数据请求为聚合数据请求的情况下,需要触发跨机房的多个数据中心的调用时,服务器通过CDN路由层将用户数据请求发送至中间处理层。

这里可以理解的是,中间处理层为用于进行数据查询、同步等业务逻辑的中间件,服务器通过中间处理层可以实现与跨机房的多个聚合数据中心的通信连接。

服务器通过中间处理层根据用户数据请求统一进行数据打包分发处理,使得中间处理层可以同时与多个聚合数据中心进行数据交互,如此设置可以使得将多次的IO交互进行分批打包处理,在一批次的请求中包含了与多个聚合数据中心的IO交互,尽可能的减少了跨机房访问的通信次数,从而可以减少通信耗时。

通过上述示例实施例,本申请通过用户数据请求类型将用户数据请求分发至分流数据中心或者中间处理层,可以通过分流数据中心或中间处理层进行相应地数据处理。以及通过中间处理层可以实现与多个聚合数据中心的同批次数据交互,减少了跨机房数据访问的次数。本申请可以减少用户数据请求的耗时,已经可以避免和减少跨机房通信的次数,可以提供分布式数据的快速、准确和安全性,提高用户体验。

可选地,在步骤S500中,服务器通过中间处理层对聚合数据中心进行分组处理,以使得中间处理层与每一个聚合数据中心仅通信一次。

例如,将一次多个数据读写按照相同的聚合数据中心进行分组,这样可以中间处理层与每一个数据中心只通信一次。从而可以尽可能的减少数据中心的通信次数。

可选地,在步骤S500中,服务器通过中间处理层多线程地向多个聚合数据中心发送用户数据请求。

服务器接收中间处理层在多个聚合数据中心读取并异步聚合的响应数据。

例如,中间处理层通过多线程向多个聚合数据中心并发用户数据请求,在接收到与用户数据请求的响应数据后,异步聚合子这些响应数据。如此可以使得,在该批次的数据请求中的耗时为所有聚合数据中心请求的最大一个耗时时间,而非所有聚合数据中心请求的所耗时时间的累加,从而减少了数据交互的耗时。

可选地,在步骤S500中,中间处理层优先读取聚合数据中心的缓存数据。

例如,如图2所示,聚合数据中心包括数据服务缓存和数据库。在聚合数据中心的业务服务器中增加一层数据缓存,缓存层可以使用一级缓存。缓存的数据与各个机房的数据中心是关联同步地,当各个数据中心的数据更新或删除事,缓存数据也会随之相应地变化。

当中间处理层向聚合数据中心发送用户数据请求时,优先通过数据读写接口读取业务服务器中的数据服务缓存数据。如此设置可以缩短数据读写接口应答的耗时,也降低了业务服务器和各个数据中心的访问压力,以此可以提高系统的吞吐量。

可选地,在步骤S500中,用户数据请求包括用户数据变更请求,判断出数据变更异常的情况下,服务器通过中间处理层将变更数据写入同步队列,并多线程地定时向多个聚合数据中心进行数据同步。

例如,当用户的信息变更,触发用户数据变成请求,且数据变更同步的过程中出现异常错误时,会通过中间处理层将信息变更数据同步至多个聚合数据中心。如此可以进行异步容错处理。

示例性地,中间处理层将信息变更数据异步写入队列中,并进行定时同步。若发生同步失败,则按照队列顺序重试数据同步,直至所有的数据中心均成功同步。如此设置,可以使得在数据中心的数据同步过程中出现异常错误时可以进行异步容错处理,保证各个数据中心的数据一致性。以及中间处理层通过定时进行分批打包,可以减少写库的次数。

可选地,在步骤S500中,服务器通过中间处理层解密从聚合数据中心读取的加密信息。

例如,为了保证数据读写安全,在每一次用户数据请求的数据交换中,数据中心均会对数据进行加密,服务器通过中间处理层完成数据的解密。

与传统的跨机房数据处理方法相比,本申请至少具有以下特点:

1.在分布式数据交互背景下,通过多个跨机房的数据中心提供相应的服务。当某一个机房出现故障后,其它机房可以正常提供数据服务,提高了数据交互的高可用性。

2.分散在各地的用户可以根据用户的地理位置自动选择最近的机房进行数据访问,实现尽可能的在同一个机房内进行数据处理,可以减少跨机房访问的次数,从而缩短用户数据请求的耗时。

3.服务器通过中间处理层根据用户数据请求统一进行数据打包分发处理,使得中间处理层可以同时与多个聚合数据中心进行数据交互,如此设置可以使得将多次的IO交互进行分批打包处理,在一批次的请求中包含了与多个聚合数据中心的IO交互,尽可能的减少了跨机房访问的通信此处,从而可以减少通信耗时。

4.将一次多个数据读写按照相同的聚合数据中心进行分组,这样可以中间处理层与每一个数据中心只通信一次。从而可以尽可能的减少数据中心的通信次数。

5.当中间处理层向聚合数据中心发送用户数据请求时,优先通过数据读写接口读取业务服务器中的数据服务缓存数据。可以缩短数据读写接口应答的耗时,也降低了业务服务器和各个数据中心的访问压力,以此可以提高系统的吞吐量。

6.在数据中心的数据同步过程中出现异常错误时可以进行异步容错处理,保证各个数据中心的数据一致性。以及中间处理层通过定时进行分批打包,可以减少写库的次数。

根据本申请的另一方面,还提供了一种跨机房的数据处理系统,该数据处理系统包括服务器和业务端。

根据示例实施例,服务器接收来自业务端的用户数据请求,并判断用户数据请求的类型。

服务器在用户数据请求的类型为单数据请求的情况下,通过内容分发网络将用户数据请求分发至分流数据中心;在用户数据请求的类型为聚合数据请求的情况下,通过内容分发网络将用户数据分发至中间处理层。

服务器在用户数据请求的类型为单数据请求的情况下,通过分流数据中心处理与用户数据请求所对应的响应数据;以及,在用户数据请求的类型为聚合数据请求的情况下,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据。

跨机房的数据处理系统所采用的数据处理方法为上文所述的数跨机房的数据处理方法,其中具体实施例已在上文详细描述,此处不再赘述。

通过上述示例实施例,数据处理系统通过用户数据请求类型将用户数据请求分发至分流数据中心或者中间处理层,可以通过分流数据中心或中间处理层进行相应地数据处理。以及通过中间处理层可以实现与多个聚合数据中心的同批次数据交互,减少了跨机房数据访问的次数。可以减少用户数据请求的耗时,已经可以避免和减少跨机房通信的次数,可以提供分布式数据的快速、准确和安全性,提高用户体验。

根据本申请的又一方面,还提供了一种用于跨机房数据处理的服务器。图4示出本申请示例实施例的服务器的示意图,如图4所示,服务器1包括判断模块10、分发模块20和处理模块30。

根据示例实施例,判断模块10判断用户数据请求的类型。

分发模块20在用户数据请求的类型为单数据请求的情况下,通过内容分发网络将用户数据请求分发至分流数据中心;以及,在用户数据请求的类型为聚合数据请求的情况下,通过内容分发网络将用户数据分发至中间处理层。

处理模块30在用户数据请求的类型为单数据请求的情况下,通过分流数据中心处理与用户数据请求所对应的响应数据;以及,在用户数据请求的类型为聚合数据请求的情况下,通过中间处理层处理跨机房的多个聚合数据中心与用户数据请求所对应的响应数据。

服务器1用于执行如上文所述的数据处理方法,该数据处理方法的具体实施例已在上文中详细描述,此处不再赘述。

根据本申请的又一方面,本申请提供了一种非易失性计算机可读存储。所述存储介质上存储有计算机程序,该计算机程序可以实现如上文所述的数据处理方法。

根据本申请的又一方面,本申请提供了一种电子设备。所述电子设备包括一个或多个处理器和存储装置,存储装置用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器可以实现如上文所述的数据处理方法。

最后应说明的是,以上所述仅为本申请的优选实施例而已,并不用于限制本申请,尽管参照前述实施例对本申请进行详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 区块链数据共识处理方法、系统、存储介质和电子设备
  • 流数据处理方法、系统、电子设备及可读存储介质
  • 一种数据处理方法、装置、系统、服务器及存储介质
  • 一种商品数据的处理方法、系统、服务器和存储介质
  • 知识产权实时数据处理方法、系统、存储介质及服务器
  • 数据处理方法、多服务器系统、数据库、电子设备及存储介质
  • 数据处理方法、数据服务器、电子设备及存储介质
技术分类

06120116484866