CN116489175A - 数据处理方法、装置、存储介质及电子装置 - Google Patents
数据处理方法、装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN116489175A CN116489175A CN202310398489.1A CN202310398489A CN116489175A CN 116489175 A CN116489175 A CN 116489175A CN 202310398489 A CN202310398489 A CN 202310398489A CN 116489175 A CN116489175 A CN 116489175A
- Authority
- CN
- China
- Prior art keywords
- target
- request
- area
- storage area
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 12
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000012545 processing Methods 0.000 claims abstract description 46
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000004590 computer program Methods 0.000 claims description 16
- 230000000694 effects Effects 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000013500 data storage Methods 0.000 description 13
- 238000013508 migration Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 230000005012 migration Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种数据处理方法、装置、存储介质及电子装置,其中,该方法包括:接收目标终端发送的第一请求,其中,第一请求用于请求对目标数据进行处理;根据第一请求确定存储目标数据的第一存储区域,第一存储区域是存储目标数据的地理区域;在第一存储区域与目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过目标服务器对目标数据进行处理,多个服务器中的每个服务器分别部署在不同的地理区域,目标服务器与请求区域之间的网络延迟最小。通过本发明,解决了相关技术中存在的跨区域访问延迟较高的技术问题,达到了降低访问延迟的效果。
Description
技术领域
本发明实施例涉及数据处理技术领域,具体而言,涉及一种数据处理方法、装置、存储介质及电子装置。
背景技术
随着全球化的发展,企业纷纷出海寻求发展机遇,在世界各国开展业务,使得用户来源于全球各地。这种情况下,单区域节点部署的服务因为远距离访问网络延迟大,跨国访问网络稳定性差,难以满足业务需要。因此,多区域跨数据中心部署成为多数公司的选择,即在多个国家地区部署服务,数据存储一般采用多主多从或一主多从。但是这些方式存在部署成本高,扩展难度大,写入延迟高等问题。如何在多区域跨数据中心场景下降低部署成本,减少读写延迟,是一个需要解决的技术问题。
相关技术中有采用通过本区域的数据中心服务器接收该区域内的用户终端(或客户端)发送的访问申请,当本地数据库中不存在用户终端所对应的用户数据时,向用户中心服务器发送查询请求,从而将与用户终端所对应的正确的区域信息发送给用户终端,然后用户终端再次请求正确的区域信息所对应的区域的数据中心,该方法当用户信息在当前区域查询不存在时,向中心服务器查询区域信息,返回给客户端,客户端再次请求正确的区域数据中心服务器,该方法需要客户端发出两次请求,增加了访问延迟,影响跨区域访问的速度。
针对相关技术中存在的跨区域访问延迟较高的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法、装置、存储介质及电子装置方法、装置、存储介质及电子装置,以至少解决相关技术中存在的跨区域访问延迟较高的技术问题。
根据本发明的一个实施例,提供了一种数据处理方法,包括:接收目标终端发送的第一请求,其中,所述第一请求用于请求对目标数据进行处理;根据所述第一请求确定存储所述目标数据的第一存储区域,其中,所述第一存储区域是存储所述目标数据的地理区域;在所述第一存储区域与所述目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过所述目标服务器对所述目标数据进行处理,其中,所述多个服务器中的每个服务器分别部署在不同的地理区域,所述目标服务器与所述请求区域之间的网络延迟最小。
在一个示例性实施例中,所述在多个服务器中确定目标服务器,包括:获取所述请求区域与多个存储区域之间的网络延迟,得到第一组延迟值,其中,所述多个存储区域中的每个存储区域是存储数据的地理区域,所述多个存储区域包括所述第一存储区域,每个所述存储区域内部署了所述多个服务器中的一个服务器,不同的存储区域内部署的服务器不同;根据所述第一组延迟值确定所述目标服务器。
在一个示例性实施例中,所述根据所述第一组延迟值确定所述目标服务器,包括:在所述第一组延迟值中确定取值最小的延迟值为最小延迟值;在所述第一存储区域是所述最小延迟值对应的存储区域的情况下,将所述第一存储区域内部署的服务器确定为所述目标服务器;在所述第一存储区域不是所述最小延迟值对应的存储区域的情况下,将所述最小延迟值对应的存储区域确定为第二存储区域,并将所述第二存储区域内部署的服务器确定为所述目标服务器。
在一个示例性实施例中,在所述将所述最小延迟值对应的存储区域确定为第二存储区域之后,所述方法还包括:将所述目标数据转移至所述第二存储区域。
在一个示例性实施例中,所述方法还包括:解析所述第一请求,得到所述第一请求的当前IP地址;根据所述当前IP地址确定所述目标终端当前所在的所述请求区域。
在一个示例性实施例中,所述根据所述第一请求确定存储所述目标数据的第一存储区域,包括:通过区域选择服务器解析所述第一请求,得到目标帐号的目标帐号标识,其中,所述第一请求是所述目标帐号发送的请求;在第一缓存中查找与所述目标帐号标识对应的存储区域为所述第一存储区域,其中,所述第一缓存中记录有帐号标识与存储区域之间的对应关系,所述第一缓存位于所述请求区域。
在一个示例性实施例中,在所述接收目标终端发送的第一请求之前,所述方法还包括:接收所述目标终端发送的注册请求,其中,所述注册请求用于请求注册目标帐号;根据所述注册请求确定所述目标终端当前所在的区域;在多个存储区域中确定与所述目标终端的当前所在的区域满足预定关系的第三存储区域;通过所述第三存储区域内部署的服务器对所述目标帐号进行注册。
在一个示例性实施例中,在所述通过所述第三存储区域内部署的服务器对所述目标帐号进行注册之后,所述方法还包括:建立所述目标帐号与所述第三存储区域之间的对应关系,并将所述对应关系记录在多个存储区域对应的多个缓存中。
在一个示例性实施例中,所述在多个存储区域中确定与所述目标终端的当前所在的区域满足预定关系的第三存储区域,包括:获取所述目标终端当前所在的区域与多个存储区域之间的网络延迟,得到第二组延迟值;将所述多个存储区域中与所述第二组延迟值中的最小的延迟值所对应的存储区域确定为所述第三存储区域。
根据本发明的另一个实施例,还提供了一种数据处理装置,包括:第一接收模块,用于接收目标终端发送的第一请求,其中,所述第一请求用于请求对目标数据进行处理;第一确定模块,用于根据所述第一请求确定存储所述目标数据的第一存储区域,其中,所述第一存储区域是存储所述目标数据的地理区域;处理模块,用于在所述第一存储区域与所述目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过所述目标服务器对所述目标数据进行处理,其中,所述多个服务器中的每个服务器分别部署在不同的地理区域,所述目标服务器与所述请求区域之间的网络延迟最小。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,接收目标终端发送的第一请求,其中,第一请求用于请求对目标数据进行处理;根据第一请求确定存储目标数据的第一存储区域;在第一存储区域与目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,其中,目标服务器与请求区域之间的网络延迟最小,并通过目标服务器对目标数据进行处理。避免了相关技术中需要客户端发出两次请求从而影响跨区域访问的速度的问题,以及相关技术中仅可通过当前存储目标数据的第一存储区域来进行处理的方式存在灵活性较差的问题。因此,解决了相关技术中存在的跨区域访问延迟较高的技术问题,达到了降低访问延迟的效果。
附图说明
图1是本发明实施例的数据处理方法的移动终端硬件结构框图;
图2是根据本发明实施例的数据处理方法的流程图;
图3是根据本发明实施例的数据处理系统框架图;
图4是根据本发明实施例的用户注册流程图;
图5是根据本发明实施例的用户查询请求流程图;
图6是根据本发明实施例的用户迁移流程图;
图7是根据本发明实施例的用户迁移后查询流程图;
图8是根据本发明实施例的数据处理装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的数据处理方法的移动终端硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种数据处理方法,图2是根据本发明实施例的数据处理方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,接收目标终端发送的第一请求,其中,所述第一请求用于请求对目标数据进行处理;
步骤S204,根据所述第一请求确定存储所述目标数据的第一存储区域,其中,所述第一存储区域是存储所述目标数据的地理区域;
步骤S206,在所述第一存储区域与所述目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过所述目标服务器对所述目标数据进行处理,其中,所述多个服务器中的每个服务器分别部署在不同的地理区域,所述目标服务器与所述请求区域之间的网络延迟最小。
通过上述步骤,接收目标终端发送的第一请求,其中,第一请求用于请求对目标数据进行处理;根据第一请求确定存储目标数据的第一存储区域;在第一存储区域与目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,其中,目标服务器与请求区域之间的网络延迟最小,并通过目标服务器对目标数据进行处理。避免了相关技术中需要客户端发出两次请求从而影响跨区域访问的速度的问题,以及相关技术中仅可通过当前存储目标数据的第一存储区域来进行处理的方式存在灵活性较差的问题。因此,解决了相关技术中存在的跨区域访问延迟较高的技术问题,达到了降低访问延迟的效果。
其中,上述步骤的执行主体可以为数据处理系统,或服务端,或服务器,或者为配置在存储设备上的具备人机交互能力的处理器,或者为具备类似处理能力的处理设备或处理单元等,但不限于此。
在上述实施例中,接收目标终端发送的第一请求,其中,第一请求用于请求对目标数据进行处理;根据第一请求确定存储目标数据的第一存储区域,第一存储区域是存储目标数据的地理区域;第一请求可以是对目标数据进行访问,例如,第一请求可以是请求对目标数据进行查询、修改、删除操作,或者第一请求还可以是请求新增数据等;数据处理系统(或服务端)接收到第一请求后,可对第一请求进行解析,以得到目标账号标识,例如发出第一请求的目标终端(或客户端)上所使用的目标账号的标识,或者是用户标识,进而可以确定出与该目标账号标识相对应的目标数据的第一存储区域,在实际应用中,系统中会预先将所有账号标识和存储区域之间的对应关系存储起来,例如将对应关系存入NoSQL缓存中,例如,账号001对应区域A,账号002对应区域B,账号003对应区域C等;而当第一存储区域与目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过目标服务器对目标数据进行处理,多个服务器中的每个服务器分别部署在不同的地理区域,目标服务器与请求区域之间的网络延迟最小,例如,目标终端在区域A发出上述第一请求,假若目标终端是登录的账号003发出的第一请求,在上述步骤S204中可确定出存储与账号003关联的目标数据的第一存储区域为区域C,而目标终端当前所在的请求区域为区域A,此时,数据处理系统可在多个服务器中确定出目标服务器,其中,目标服务器与当前的请求区域之间的网络延迟最小,并通过目标服务器对目标数据进行处理,例如,可通过解析上述第一请求,以得到发出第一请求的目标终端的当前IP地址,再根据当前IP地址可确定目标终端当前所在的请求区域,然后,可检测当前的请求区域与各区域数据中心(或数据中心服务器)的网络延迟,例如,假若当前的请求区域为区域A,而目标数据存储于区域C,如果区域A中有部署区域数据中心的话,可将目标数据从区域C迁移到区域A的数据库中,这样可由区域A中的区域数据中心对目标数据进行处理;或者,假若上述发出第一请求的目标终端所在的请求区域为区域X,而区域X中并未部署相应的区域数据中心(或数据中心服务器),此时,可检测当前的请求区域(如区域X)与各区域数据中心(如上述区域A、B、C)之间的网络延迟,如果确定出区域B与当前的请求区域X之间的网络延迟最小的话,可将目标数据从区域C迁移到区域B的数据库中,这样可由区域B中的区域数据中心对目标数据进行处理。本实施例中的数据处理系统包括多个区域数据中心,分别部署于不同的区域。在本实施例中,通过分析当前的请求区域与各区域数据中心(如上述多个服务器)的延迟,从而选择延迟最低的区域数据中心存储用户信息,保证用户在在跨国移动场景下,降低用户请求延迟。避免了相关技术中需要客户端发出两次请求从而影响跨区域访问的速度的问题,以及相关技术中仅可通过当前存储目标数据的第一存储区域来进行处理的方式存在灵活性较差的问题,而相关技术中当第一存储区域与当前的请求区域之间的网络延迟较高时,也会导致访问延迟进一步增高的问题。因此,解决了相关技术中存在的跨区域访问延迟较高的技术问题,达到了降低访问延迟的效果。
在一个可选的实施例中,所述在多个服务器中确定目标服务器,包括:获取所述请求区域与多个存储区域之间的网络延迟,得到第一组延迟值,其中,所述多个存储区域中的每个存储区域是存储数据的地理区域,所述多个存储区域包括所述第一存储区域,每个所述存储区域内部署了所述多个服务器中的一个服务器,不同的存储区域内部署的服务器不同;根据所述第一组延迟值确定所述目标服务器。在本实施例中,可检测请求区域与多个存储区域之间的网络延迟,例如,当前的请求区域为区域X,而数据处理系统中包括多个区域数据中心(或数据中心服务器),分别部署于多个不同的存储区域,如上述区域A、区域B、区域C,即检测区域X分别与区域A、区域B、区域C之间的网络延迟,得到第一组延迟值,然后根据第一组延迟值确定目标服务器,例如,将网络延迟最小的区域(如区域B)中部署的区域数据中心(或数据中心服务器)确定为目标服务器;上述区域X可以上述区域A、B、C其中之一,也可以是上述区域A、B、C之外的其它区域,上述区域X可以是部署了区域数据中心的区域之一,也可以是未部署区域数据中心的区域。通过本实施例,实现了确定与当前的请求区域之间的网络延迟最小的目标服务器的目的。
在一个可选的实施例中,所述根据所述第一组延迟值确定所述目标服务器,包括:在所述第一组延迟值中确定取值最小的延迟值为最小延迟值;在所述第一存储区域是所述最小延迟值对应的存储区域的情况下,将所述第一存储区域内部署的服务器确定为所述目标服务器;在所述第一存储区域不是所述最小延迟值对应的存储区域的情况下,将所述最小延迟值对应的存储区域确定为第二存储区域,并将所述第二存储区域内部署的服务器确定为所述目标服务器。在本实施例中,可确定出一组延迟值中的最小延迟值,如果上述第一存储区域与当前的请求区域之间的网络延迟最小的话,可将第一存储区域内部署的服务器(即上述区域数据中心)确定为目标服务器;而如果第一存储区域与当前的请求区域之间的网络延迟不是最小值的话,将第二存储区域内部署的服务器确定为目标服务器,其中,第二存储区域与当前的请求区域之间的网络延迟最小。通过本实施例,实现了将网络延迟最小的区域内部署的服务器确定为目标服务器的目的。
在一个可选的实施例中,在所述将所述最小延迟值对应的存储区域确定为第二存储区域之后,所述方法还包括:将所述目标数据转移至所述第二存储区域。在本实施例中,在目标数据当前的存储区域为第一存储区域,而发出第一请求的目标终端当前所在的请求区域与第一存储区域之间的网络延迟不是上述最小延迟值时,例如,与当前的请求区域之间的网络延迟最小的区域为第二存储区域,此时,可将目标数据迁移至第二存储区域,然后可由第二存储区域内部署的服务器对目标数据进行处理,达到了降低用户访问延迟的效果。
在一个可选的实施例中,所述方法还包括:解析所述第一请求,得到所述第一请求的当前IP地址;根据所述当前IP地址确定所述目标终端当前所在的所述请求区域。在本实施例中,可通过解析上述第一请求,以得到发出第一请求的目标终端的当前IP地址,再根据当前IP地址可确定目标终端当前所在的请求区域。通过本实施例,实现了根据目标终端当前的IP地址确定目标终端当前所在的请求区域的目的。
在一个可选的实施例中,所述根据所述第一请求确定存储所述目标数据的第一存储区域,包括:通过区域选择服务器解析所述第一请求,得到目标帐号的目标帐号标识,其中,所述第一请求是所述目标帐号发送的请求;在第一缓存中查找与所述目标帐号标识对应的存储区域为所述第一存储区域,其中,所述第一缓存中记录有帐号标识与存储区域之间的对应关系,所述第一缓存位于所述请求区域。在本实施例中,在接收到目标终端发送的第一请求时,通过解析第一请求可得到目标账号标识,例如,登录目标终端的目标账号标识,或用户标识,前述目标数据可以是与目标账号标识相关联的数据,或登录目标终端的用户的信息;然后,可以在第一缓存中查找与该目标账号标识对应的存储区域,如果该目标账号标识关联的数据之前是存储于第一存储区域,此时通过第一缓存中就可以查找到与该目标账号标识所对应的存储区域为第一存储区域。在实际应用中,在部署有区域数据中心(或服务器)的各个区域中都有部署数据库,如SQL,以及,在各个区域中也都有部署缓存,如NoSQL缓存,缓存可用于存储用户区域信息,例如每个用户分别对应的区域,即用户与区域之间的对应关系;可选地,可选择其中一个区域的NoSQL缓存为主节点,其他为从节点,区域信息可由主节点同步至从节点,或者,区域信息可在多个缓存之间进行共享。
在一个可选的实施例中,在所述接收目标终端发送的第一请求之前,所述方法还包括:接收所述目标终端发送的注册请求,其中,所述注册请求用于请求注册目标帐号;根据所述注册请求确定所述目标终端当前所在的区域;在多个存储区域中确定与所述目标终端的当前所在的区域满足预定关系的第三存储区域;通过所述第三存储区域内部署的服务器对所述目标帐号进行注册。在本实施例中,当接收到目标终端发送的注册请求时,可根据注册请求确定目标终端当前所在的区域,然后,在多个存储区域中确定与目标终端当前所在的区域满足预定关系的第三存储区域,再通过第三存储区域内部署的服务器对目标账号进行注册,例如,第三存储区域可以是多个存储区域中与目标终端当前所在的区域之间的网络延迟最小的区域。在实际应用中,在确定出上述第三存储区域后,通过部署在第三存储区域中的NoSQL缓存可判断上述请求注册的目标账号是否已注册过,如果缓存中包括该目标账号对应的区域信息,说明该目标账号已注册,此时可向目标终端返回提示信息,如该账号已注册;而如果缓存中不包括该目标账号对应的区域信息,则说明该账号未注册,此时,可通过第三存储区域的区域数据中心(如服务器)对目标账号进行注册。注册信息可存储于第三存储区域中的数据库中,而目标账号与存储区域之间的对应关系可存储于第三存储区域中的缓存中。
在一个可选的实施例中,在所述通过所述第三存储区域内部署的服务器对所述目标帐号进行注册之后,所述方法还包括:建立所述目标帐号与所述第三存储区域之间的对应关系,并将所述对应关系记录在多个存储区域对应的多个缓存中。在本实施例中,在对目标账号进行注册之后,可建立目标账号与第三存储区域之间的对应关系,并将该对应关系记录在各个存储区域对应的各个缓存中,如上述NoSQL缓存。
在一个可选的实施例中,所述在多个存储区域中确定与所述目标终端的当前所在的区域满足预定关系的第三存储区域,包括:获取所述目标终端当前所在的区域与多个存储区域之间的网络延迟,得到第二组延迟值;将所述多个存储区域中与所述第二组延迟值中的最小的延迟值所对应的存储区域确定为所述第三存储区域。在本实施例中,可获取目标终端当前所在的区域与多个存储区域之间的网络延迟,得到第二组延迟值,然后将其中网络延迟最小的延迟值所对应的存储区域确定为第三存储区域。
显然,上述所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。下面结合实施例对本发明进行具体说明。
本发明实施例提供了一种数据处理系统,图3是根据本发明实施例的数据处理系统框架图,本发明实施例提出的方法可以解决全球不同地区用户数据访问,跨区域移动时的高延迟问题。本发明实施例中各区域由区域选择服务、区域路由服务、数据存储区域分析服务、区域数据中心四部分构成。
区域选择服务的作用是通过解析请求中的标识(如前述目标账号标识,或用户标识)或请求体数据,从NoSQL缓存中查询请求标识对应的存储区域(如前述第一存储区域),然后将存储区域信息添加到HTTP请求中,最后将请求转发到区域路由服务,如果数据存储区域与当前区域不一致,则将转发请求到数据存储区域分析服务。
区域路由服务的作用是根据区域选择服务添加的区域信息,判断当前请求区域和数据存储区域(对应于前述第一存储区域)是否一致,若一致,则将请求转发至本区域数据中心处理;若不一致,则将根据区域信息将请求转发至对应区域数据中心处理。
数据存储分析服务的作用是通过解析用户请求IP,确认IP的所在国家(或地区,或区域),检测所在国家与各区域数据中心的网络延迟,当检测到用户请求地与当前数据存储区域的延迟不是最低时,将用户的数据转移到延迟最低的区域,提高用户访问速度。
区域数据中心的作用是对本区域数据进行新增、查询、修改、删除操作。对应于前述对目标数据进行处理。
每个区域部署有数据库,每个区域数据库独立。每个区域部署有NoSQL缓存,用于存储用户区域信息(对应于前述账号标识与存储区域之间的对应关系),选择其中一个区域的NoSQL缓存为主节点,其他为从节点,区域信息由主节点同步至从节点。
具体实施例1:
图4是根据本发明实施例的用户注册流程图,该流程包括:
S402,客户端(对应于前述目标终端)发出注册请求到区域选择服务。
S404,区域选择服务通过分析请求IP,确定用户所在国家(或区域),选择该国家网络延迟最低的区域数据中心,将区域信息写入HTTP请求头中,转发请求到区域路由服务。例如,增加HTTP请求头'user_region:region_A'。
S406,区域路由服务收到请求,通过解析HTTP头,获取需要路由的区域,将请求转发到对应的区域数据中心处理。
S408,区域数据中心收到请求,通过查询NoSQL区域缓存,判断账号是否已注册;
S410,如果存在区域信息缓存,即账号已注册,返回客户端已注册。然后进入步骤S418,结束。
S412,如果不存在区域信息缓存,说明未注册,开始注册用户。注册用户,保存用户信息到当前区域数据库。即步骤S408中对应的区域的数据库。
S414,保存用户区域信息到主NoSQL缓存,并同步到其他区域的从NoSQL缓存。例如,redis主从同步。
S416,返回客户端注册完成。
具体实施例2:
图5是根据本发明实施例的用户查询请求流程图,该流程包括:
S502,用户终端发出请求,请求到区域选择服务。此处区域选择服务前可以增加一个网关,用于接受外部请求。
S504,区域选择服务收到请求,根据用户标识,从NoSQL缓存中查询区域信息,将区域信息添加到HTTP请求中,将请求转发到区域路由服务。
S506,区域路由服务收到请求,通过解析HTTP请求中的区域信息,判断用户数据存储区域与当前区域是否一致。
S508,若上述步骤S506的判断结果为一致的情况下,则将请求转发至当前区域数据中心。
S510,区域数据中心进行数据处理,返回用户信息,区域信息。
S512,若上述步骤S506的判断结果为不一致的情况下,则将请求转发至正确的区域数据中心。
S514,正确的区域数据中心返回用户信息、区域信息。
客户端根据返回的区域信息,来确定下一次请求的区域,使得下一次请求可以直接到正确的区域数据中心,避免路由转发。
具体实施例3:
图6是根据本发明实施例的用户迁移流程图,该流程包括:
S602,用户终端发出请求,请求到区域选择服务。
S604,区域选择服务收到用户请求,根据用户标识,从NoSQL缓存中查询区域信息;
S606,判断当前区域与数据存储区域是否一致;
S608,若上述步骤S606的判断结果为不一致的情况下,则将请求转发到数据存储区域分析服务。若一致,则无需迁移。
S610,数据存储区域分析服务收到分析请求,通过分析用户请求IP,从而确认用户所在国家(或区域),通过检测用户国家与各区域数据中心的网络延迟,当检测到用户国家与当前数据存储区域的延迟不是最低时,请求区域数据中心进行数据迁移。区域数据中心收到迁移请求,进行数据迁移。
S612,数据迁移完成后,修改NoSQL用户区域信息缓存。当用户下一次请求时,请求就会路由至延迟最低的区域。
S614,结束。
具体实施例4:
图7是根据本发明实施例的用户迁移后查询流程图,该流程包括:
S702,用户终端发出请求,请求到区域选择服务。此处区域选择服务前可以增加一个网关,用于接受外部请求。
S704,区域选择服务收到请求,根据用户标识,从NoSQL缓存中查询区域信息,将区域信息添加到HTTP请求中,将请求转发到区域路由服务。
S706,区域路由服务收到请求,通过解析HTTP请求中的区域信息,判断用户数据存储区域与当前区域是否一致。由于进行了用户数据迁移,此时用户当前请求区域和用户数据区域保持一致,因此会转发请求到本区域数据中心,避免了跨区转发请求到其他区域数据中心产生延迟。
S708,当前区域数据中心进行数据处理,返回用户信息,区域信息。
S710,结束。
在上述实施例中,在用户迁移后再进行查询时可达到减少查询延迟的效果。
通过上述实施例,提供了一种在多区域场景下的服务数据处理系统与方法,通过多区域部署区域选择服务与多区域存储用户区域映射关系,能够快速查询用户所在的区域节点,对于跨区访问用户对用户请求信息进行分析,对不合理的区域分配进行数据迁移,使用户始终访问到延时最低的区域节点;此外,通过对用户与区域的映射关系进行全球分发,各个区域的区域选择服务可以本区域的区域索引关系判断用户当前的区域节点,并由区域路由服务根据用户区域选择服务的区域选择结果进行请求分发;当用户发生跨区域请求时,通过分析用户请求IP、用户所在地与各区域数据中心的延迟,将原区域节点用户信息迁移到延时最低的区域节点,保障后续用户请求到延时最低的区域节点。
与相关技术相比,本发明实施例具有突出的优点:通过将用户标识与区域关系多区域存储、部署,避免在用户区域查询等情况下产生跨区请求,从而达到降低延迟的效果。通过增加区域路由服务,可以在请求区域错误时,将请求转发至正确区域,实现避免客户端二次请求的目的。通过分析用户请求IP、用户所在地与各区域数据中心的延迟,从而选择延迟最低的区域数据中心存储用户信息,保证用户在在跨国移动场景下,达到降低用户请求延迟的效果。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种数据处理装置,图8是根据本发明实施例的数据处理装置的结构框图,如图8所示,该装置包括:
第一接收模块802,用于接收目标终端发送的第一请求,其中,所述第一请求用于请求对目标数据进行处理;
第一确定模块804,用于根据所述第一请求确定存储所述目标数据的第一存储区域,其中,所述第一存储区域是存储所述目标数据的地理区域;
处理模块806,用于在所述第一存储区域与所述目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过所述目标服务器对所述目标数据进行处理,其中,所述多个服务器中的每个服务器分别部署在不同的地理区域,所述目标服务器与所述请求区域之间的网络延迟最小。
在一个可选的实施例中,上述第一确定模块804包括:第一获取单元,用于获取所述请求区域与多个存储区域之间的网络延迟,得到第一组延迟值,其中,所述多个存储区域中的每个存储区域是存储数据的地理区域,所述多个存储区域包括所述第一存储区域,每个所述存储区域内部署了所述多个服务器中的一个服务器,不同的存储区域内部署的服务器不同;第一确定单元,用于根据所述第一组延迟值确定所述目标服务器。
在一个可选的实施例中,上述第一确定单元包括:第一确定子单元,用于在所述第一组延迟值中确定取值最小的延迟值为最小延迟值;第二确定子单元,用于在所述第一存储区域是所述最小延迟值对应的存储区域的情况下,将所述第一存储区域内部署的服务器确定为所述目标服务器;第三确定子单元,用于在所述第一存储区域不是所述最小延迟值对应的存储区域的情况下,将所述最小延迟值对应的存储区域确定为第二存储区域,并将所述第二存储区域内部署的服务器确定为所述目标服务器。
在一个可选的实施例中,上述装置还包括:转移模块,用于在所述将所述最小延迟值对应的存储区域确定为第二存储区域之后,将所述目标数据转移至所述第二存储区域。
在一个可选的实施例中,上述装置还包括:解析模块,用于解析所述第一请求,得到所述第一请求的当前IP地址;第二确定模块,用于根据所述当前IP地址确定所述目标终端当前所在的所述请求区域。
在一个可选的实施例中,上述第一确定模块804包括:获得单元,用于通过区域选择服务器解析所述第一请求,得到目标帐号的目标帐号标识,其中,所述第一请求是所述目标帐号发送的请求;查找单元,用于在第一缓存中查找与所述目标帐号标识对应的存储区域为所述第一存储区域,其中,所述第一缓存中记录有帐号标识与存储区域之间的对应关系,所述第一缓存位于所述请求区域。
在一个可选的实施例中,上述装置还包括:第二接收模块,用于在所述接收目标终端发送的第一请求之前,接收所述目标终端发送的注册请求,其中,所述注册请求用于请求注册目标帐号;第三确定模块,用于根据所述注册请求确定所述目标终端当前所在的区域;第四确定模块,用于在多个存储区域中确定与所述目标终端的当前所在的区域满足预定关系的第三存储区域;注册模块,用于通过所述第三存储区域内部署的服务器对所述目标帐号进行注册。
在一个可选的实施例中,上述装置还包括:建立模块,用于在所述通过所述第三存储区域内部署的服务器对所述目标帐号进行注册之后,建立所述目标帐号与所述第三存储区域之间的对应关系,并将所述对应关系记录在多个存储区域对应的多个缓存中。
在一个可选的实施例中,上述第四确定模块包括:第二获取单元,用于获取所述目标终端当前所在的区域与多个存储区域之间的网络延迟,得到第二组延迟值;第二确定单元,用于将所述多个存储区域中与所述第二组延迟值中的最小的延迟值所对应的存储区域确定为所述第三存储区域。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种数据处理方法,其特征在于,包括:
接收目标终端发送的第一请求,其中,所述第一请求用于请求对目标数据进行处理;
根据所述第一请求确定存储所述目标数据的第一存储区域,其中,所述第一存储区域是存储所述目标数据的地理区域;
在所述第一存储区域与所述目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过所述目标服务器对所述目标数据进行处理,其中,所述多个服务器中的每个服务器分别部署在不同的地理区域,所述目标服务器与所述请求区域之间的网络延迟最小。
2.根据权利要求1所述的方法,其特征在于,所述在多个服务器中确定目标服务器,包括:
获取所述请求区域与多个存储区域之间的网络延迟,得到第一组延迟值,其中,所述多个存储区域中的每个存储区域是存储数据的地理区域,所述多个存储区域包括所述第一存储区域,每个所述存储区域内部署了所述多个服务器中的一个服务器,不同的存储区域内部署的服务器不同;
根据所述第一组延迟值确定所述目标服务器。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一组延迟值确定所述目标服务器,包括:
在所述第一组延迟值中确定取值最小的延迟值为最小延迟值;
在所述第一存储区域是所述最小延迟值对应的存储区域的情况下,将所述第一存储区域内部署的服务器确定为所述目标服务器;
在所述第一存储区域不是所述最小延迟值对应的存储区域的情况下,将所述最小延迟值对应的存储区域确定为第二存储区域,并将所述第二存储区域内部署的服务器确定为所述目标服务器。
4.根据权利要求3所述的方法,其特征在于,在所述将所述最小延迟值对应的存储区域确定为第二存储区域之后,所述方法还包括:
将所述目标数据转移至所述第二存储区域。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
解析所述第一请求,得到所述第一请求的当前IP地址;
根据所述当前IP地址确定所述目标终端当前所在的所述请求区域。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第一请求确定存储所述目标数据的第一存储区域,包括:
通过区域选择服务器解析所述第一请求,得到目标帐号的目标帐号标识,其中,所述第一请求是所述目标帐号发送的请求;
在第一缓存中查找与所述目标帐号标识对应的存储区域为所述第一存储区域,其中,所述第一缓存中记录有帐号标识与存储区域之间的对应关系,所述第一缓存位于所述请求区域。
7.根据权利要求1所述的方法,其特征在于,在所述接收目标终端发送的第一请求之前,所述方法还包括:
接收所述目标终端发送的注册请求,其中,所述注册请求用于请求注册目标帐号;
根据所述注册请求确定所述目标终端当前所在的区域;
在多个存储区域中确定与所述目标终端的当前所在的区域满足预定关系的第三存储区域;
通过所述第三存储区域内部署的服务器对所述目标帐号进行注册。
8.根据权利要求7所述的方法,其特征在于,在所述通过所述第三存储区域内部署的服务器对所述目标帐号进行注册之后,所述方法还包括:
建立所述目标帐号与所述第三存储区域之间的对应关系,并将所述对应关系记录在多个存储区域对应的多个缓存中。
9.根据权利要求7所述的方法,其特征在于,所述在多个存储区域中确定与所述目标终端的当前所在的区域满足预定关系的第三存储区域,包括:
获取所述目标终端当前所在的区域与多个存储区域之间的网络延迟,得到第二组延迟值;
将所述多个存储区域中与所述第二组延迟值中的最小的延迟值所对应的存储区域确定为所述第三存储区域。
10.一种数据处理装置,其特征在于,包括:
第一接收模块,用于接收目标终端发送的第一请求,其中,所述第一请求用于请求对目标数据进行处理;
第一确定模块,用于根据所述第一请求确定存储所述目标数据的第一存储区域,其中,所述第一存储区域是存储所述目标数据的地理区域;
处理模块,用于在所述第一存储区域与所述目标终端当前所在的请求区域不同的情况下,在多个服务器中确定目标服务器,并通过所述目标服务器对所述目标数据进行处理,其中,所述多个服务器中的每个服务器分别部署在不同的地理区域,所述目标服务器与所述请求区域之间的网络延迟最小。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至9任一项中所述的方法的步骤。
12.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至9任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310398489.1A CN116489175A (zh) | 2023-04-04 | 2023-04-04 | 数据处理方法、装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310398489.1A CN116489175A (zh) | 2023-04-04 | 2023-04-04 | 数据处理方法、装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116489175A true CN116489175A (zh) | 2023-07-25 |
Family
ID=87224383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310398489.1A Pending CN116489175A (zh) | 2023-04-04 | 2023-04-04 | 数据处理方法、装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116489175A (zh) |
-
2023
- 2023-04-04 CN CN202310398489.1A patent/CN116489175A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10440069B2 (en) | System and method for acquiring, processing, and updating global information | |
CN101904135B (zh) | 为全局流量负载均衡确定客户端位置和解析器负载的dns通配符信标 | |
CN103281409B (zh) | 基于tcp协议的移动互联网域名解析方法及dns服务器 | |
US10333788B2 (en) | System and method for acquiring, processing and updating global information | |
CN106375987A (zh) | 一种网络切片的选择方法及系统 | |
CN111327714A (zh) | 域名递归查询方法、系统以及服务器、dns系统 | |
CN101510874A (zh) | 网络连接设置系统及方法、网络通讯工具及方法 | |
CN112217856A (zh) | 应用实例的地址获取方法、装置、设备及存储介质 | |
CN101673272B (zh) | 搜索信息的方法、系统、装置及垂直搜索引擎注册的方法 | |
CN105095313A (zh) | 一种数据访问方法和设备 | |
CN106357539A (zh) | 一种数据获取方法和设备 | |
CN114222284B (zh) | 终端设备识别方法、装置及可读存储介质 | |
US7406071B1 (en) | Method and system for resolving between geographic information and network addresses in a wide area network, preferably in the internet | |
KR100902934B1 (ko) | 전자 지도의 업데이트 방법 및 장치 | |
CN116489175A (zh) | 数据处理方法、装置、存储介质及电子装置 | |
JP7412505B2 (ja) | 同期ローカル検索結果のための可視ネットワークの添付 | |
CN104092751A (zh) | 一种业务访问方法和设备 | |
CN105610924A (zh) | 一种云桌面多节点连接的方法和装置 | |
CN106326296A (zh) | 数据查询方法及装置 | |
EP3422674A1 (en) | A method of resolving a domain name by a dns server to a plurality of ip addresses based on location information of the user equipment | |
CN101741889B (zh) | 一种网络服务集中管理的方法、系统及服务器 | |
CN114124890A (zh) | 一种确定方法、虚拟路由器、控制设备及域名解析系统 | |
US11057463B2 (en) | Method for synchronizing context data of network functions in a mobile network | |
CN114422477B (zh) | 基于边缘云架构的域名解析方法、装置及存储介质 | |
CN104734919A (zh) | 一种测量网络时延的方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |