CN112783954A - 数据访问方法、装置及服务器 - Google Patents
数据访问方法、装置及服务器 Download PDFInfo
- Publication number
- CN112783954A CN112783954A CN201911080246.3A CN201911080246A CN112783954A CN 112783954 A CN112783954 A CN 112783954A CN 201911080246 A CN201911080246 A CN 201911080246A CN 112783954 A CN112783954 A CN 112783954A
- Authority
- CN
- China
- Prior art keywords
- access
- interface
- data
- storage system
- group
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000013500 data storage Methods 0.000 claims abstract description 143
- 230000002159 abnormal effect Effects 0.000 claims abstract description 23
- 230000006870 function Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000007711 solidification Methods 0.000 description 2
- 230000008023 solidification Effects 0.000 description 2
- 208000001992 Autosomal Dominant Optic Atrophy Diseases 0.000 description 1
- 206010011906 Death Diseases 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/25—Integrating or interfacing systems involving database management systems
-
- 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/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种数据访问方法、装置及服务器;在该服务器中运行有至少一组接口组,每组接口组包括以链式结构排列的多个访问接口,每个访问接口对应有数据存储系统;当接收到来自业务层的数据访问请求,根据该请求,确定待访问的目标接口组;并按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的访问接口对应的数据存储系统,直至完成数据访问请求对应的数据访问。本发明中,接口组中的多个访问接口以链式结构排列,如果当前访问的访问接口对应的数据存储系统异常,可以按照该接口组中的访问接口的排列顺序访问下一个访问接口对应的数据存储系统,直到完成数据访问,从而提高了数据访问服务的稳定性,同时提高了数据存储的安全性。
Description
技术领域
本发明涉及数据处理技术领域,尤其是涉及一种数据访问方法、装置及服务器。
背景技术
相关技术中,大多采用多元存储系统保存数据,该多元存储系统包括多个数据存储系统,如果其中一个数据存储系统发生故障,其他正常的数据存储系统仍可以继续提供数据服务;但是多个数据存储系统的访问逻辑通常存储在代码逻辑中,难以实时修改,一旦访问逻辑有问题,或者数据存储系统中的数据有问题,还是有很大几率需要多元存储系统整体停机升级、修改代码,易导致整个多元存储系统发生故障,不利于数据的安全性和服务的稳定性。
发明内容
有鉴于此,本发明的目的在于提供一种数据访问方法、装置及服务器,以提高数据访问服务的稳定性,并提高数据存储的安全性。
第一方面,本发明实施例提供了一种数据访问方法,该方法应用于运行有访问接口的服务器,该服务器上运行有至少一组接口组;每组接口组包括以链式结构排列的多个访问接口;每个访问接口对应有数据存储系统;该方法包括:接收来自业务层的数据访问请求;根据数据访问请求,确定待访问的目标接口组;按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的访问接口对应的数据存储系统,直至完成数据访问请求对应的数据访问。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,根据数据访问请求,确定待访问的目标接口组的步骤,包括:确定数据访问请求的访问方式;将访问方式对应的接口组,确定为待访问的目标接口组。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述接口组中,除最后一个访问接口以外的访问接口中,保存有下一个访问接口的访问地址;按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的多个访问接口对应的数据存储系统,直至完成数据访问请求对应的数据访问的步骤,包括:将目标接口组中的第一个访问接口确定为当前访问接口;访问当前访问接口对应的数据存储系统,如果当前访问接口对应的数据存储系统访问异常,从当前访问接口中获取下一个访问接口的访问地址;将访问地址对应的访问接口确定为更新的当前访问接口,继续执行访问当前访问接口对应的数据存储系统的步骤,直至完成数据访问请求对应的数据访问。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,从当前访问接口中获取下一个访问接口的访问地址的步骤,包括:获取当前访问接口的访问策略;如果访问策略指示继续访问下一个访问接口,从当前访问接口中获取下一个访问接口的访问地址;如果访问策略指示停止访问,向业务层返回访问异常的信号。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,完成上述数据访问请求对应的数据访问的步骤之后,该方法还包括:确定目标接口组中,返回数据访问请求对应数据的目标接口;如果目标接口不是目标接口组中的第一个访问接口,通过目标接口组中排列在目标接口之前的访问接口,向排列在目标接口之前的访问接口对应的数据存储系统写入数据访问请求对应的数据。
结合第一方面至第一方面的第四种可能的实施方式之中的任意一种,本发明实施例提供了第一方面的第五种可能的实施方式,其中,上述接口组、上述接口组中多个访问接口的排列顺序、以及每个访问接口对应的数据存储系统,设置在zookeeper中。
第二方面,本发明实施例还提供一种数据访问装置,该装置设置于运行有访问接口的服务器,该服务器上运行有至少一组接口组;每组接口组包括以链式结构排列的多个访问接口;每个访问接口对应有数据存储系统;该装置包括:请求接收模块,用于接收来自业务层的数据访问请求;接口组确定模块,用于根据数据访问请求,确定待访问的目标接口组;数据访问模块,用于按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的访问接口对应的数据存储系统,直至完成数据访问请求对应的数据访问。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,上述接口组确定模块还用于:确定数据访问请求的访问方式;将访问方式对应的接口组,确定为待访问的目标接口组。
结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,上述接口组中,除最后一个访问接口以外的访问接口中,保存有下一个访问接口的访问地址;上述数据访问模块还用于:将目标接口组中的第一个访问接口确定为当前访问接口;访问当前访问接口对应的数据存储系统,如果当前访问接口对应的数据存储系统访问异常,从当前访问接口中获取下一个访问接口的访问地址;将访问地址对应的访问接口确定为更新的当前访问接口,继续执行访问当前访问接口对应的数据存储系统的步骤,直至完成数据访问请求对应的数据访问。
第三方面,本发明实施例还提供一种服务器,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述数据访问方法。
第四方面,本发明实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述数据访问方法。
本发明实施例带来了以下有益效果:
上述数据访问方法、装置及服务器,在该服务器中运行有至少一组接口组,每组接口组包括以链式结构排列的多个访问接口,每个访问接口对应有数据存储系统,当接收来自业务层的数据访问请求时,根据该数据访问请求,确定待访问的目标接口组;并按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的多个访问接口对应的数据存储系统,直至完成该数据访问请求对应的数据访问。该方式中,接口组中的多个访问接口以链式结构排列,如果当前访问的访问接口对应的数据存储系统异常,可以按照该接口组中的多个访问接口的排列顺序访问下一个访问接口对应的数据存储系统,直到完成数据访问,从而提高了数据访问服务的稳定性,同时也提高了数据存储的安全性。
本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据访问的应用场景示意图;
图2为本发明实施例提供的一种数据访问方法的流程图;
图3为本发明实施例提供的一种接口组的结构示意图;
图4为本发明实施例提供的另一种数据访问方法的流程图;
图5为本发明实施例提供的另一种数据访问方法的流程图;
图6为本发明实施例提供的一种数据访问装置的结构示意图;
图7为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于理解,首先示出一种数据访问的应用场景,如图1所示,该场景包括依次连接业务层,访问接口层和数据存储系统;业务层、访问接口层及数据存储系统通常都运行在服务器上;它们可以运行在不同的服务器上,或者其中任意两个运行在同一个服务器上,或者三个均运行在同一个服务器上。业务层可以用于与用户端或其他系统进行交互,接收用户端或其他系统发送的业务请求;并根据接收到的业务请求生成数据访问请求,将数据访问请求发送至访问接口层,通过访问接口层访问数据存储系统,以完成接收到的业务请求;上述业务请求可以为查询业务数据等请求。
不同的业务请求对应的业务数据可以存储在不同的数据存储系统中,对应地,在访问接口层设置有各个数据存储系统对应的访问接口。当采用单一的元数据存储方式时,即某一业务数据仅存储在一个数据存储系统中,如果该系统出现故障,则该系统中的数据可能无法访问,甚至会出现丢失数据的风险,影响数据存储的安全性和稳定性。为了提高数据存储的安全性,可以采用多元数据系统对业务数据进行存储,即将同一业务数据保存在多个数据存储系统中,在一个数据存储系统发生故障时,可以通过访问其他的数据存储系统以获取业务数据。
在访问接口层中,可以将多个保存同样的业务数据的数据存储系统对应的访问接口作为一个接口组;以图1所示场景为例,访问接口层可以包括两个接口组,分别为接口组1及接口组2;接口组1包括访问接口1及访问接口2,接口组2包括访问接口3及访问接口4;访问接口1对应于数据存储系统1,访问接口2对应于数据存储系统2,访问接口3对应于数据存储系统3,访问接口4对应于数据存储系统4;通常情况下,数据存储系统1及数据存储系统2中存储的数据是相同的,属于同一数据源;数据存储系统3及数据存储系统4中存储的数据是相同的,属于同一数据源。
上述基于多元存储系统的数据访问场景相较于基于单一的元数据存储方式的数据访问场景,数据访问服务的稳定性较高;然而,相关技术中,对数据存储系统的访问逻辑通常存储在代码逻辑中,难以实时修改;在访问逻辑有问题,或者数据存储系统中的数据有问题的情况下,还是有很大几率需要多元存储系统整体停机升级、修改代码,易导致整个多元存储系统发生故障,不利于数据的安全性和服务的稳定性。基于此,本发明实施例提供了一种数据访问方法、装置以及服务器,可以应用于各种业务系统的数据访问场景中,如企业管理系统、各种运营平台、云存储系统等。
首先参见图2所示的一种数据访问方法;该方法应用于运行有访问接口的服务器,该服务器上运行有至少一组接口组;每组接口组包括以链式结构排列的多个访问接口;每个访问接口对应有数据存储系统。
上述链式结构排列可以通过下述方式实现:按照排列顺序,除最后一个访问接口外,每个访问接口内均保存下一个访问接口的访问地址,该访问地址的具体形式可以为物理地址、相对地址、路径、地址指针等;如图3所示,以接口组包括第一访问接口、第二访问接口及第三访问接口为例,假设排列顺序为第一访问接口、第二访问接口及第三访问接口,则第一访问接口中保存有第二访问接口的访问地址,第二访问接口中保存有第三访问接口的访问地址;可以通过第一访问接口得到第二访问接口的访问地址,如果有需求,可以通过第二访问接口的访问地址访问第二访问接口,以此类推,形成多个访问接口的链式排列。
该方法包括以下步骤:
步骤S200,接收来自业务层的数据访问请求。
上述数据访问请求可以为向某个数据源中存储数据、删除某个数据源的数据、替换某个数据源的数据或查询某个数据源的数据等;上述数据源对应着多个保存同样数据的数据存储系统;该数据访问请求中通常会包括该数据源的相关信息,如约定标识等。
步骤S202,根据数据访问请求,确定待访问的目标接口组。
具体而言,可以通过数据访问请求中,该数据源的相关信息,如数据访问内容、访问类型等信息,在访问接口层的接口组中,查找对应的接口组;如上述数据源的相关信息为约定标识时,对应的接口组也应预先设置该约定标识;通过该约定标识,确认该接口组为目标接口组;通过目标接口组中的访问接口可以访问该数据源对应的数据存储系统。
步骤S204,按照上述目标接口组中的多个访问接口的排列顺序,访问目标接口组中的访问接口对应的数据存储系统,直至完成数据访问请求对应的数据访问。
上述访问接口通常为一种应用程序编程接口(Application ProgrammingInterface,API);例如,DAO(Data Access Object,数据访问对象,也可以称为DAO对象)是一种常见的面向对象的访问接口(也可以称为数据库接口);DAO模式是标准的J2EE(Java2Platform Enterprise Edition,Java 2平台企业版)设计模式,通过使用这个模式,可以将底层的数据访问操作和上层的业务逻辑分开,使得开发人员能够更加专注于编写数据访问代码。
上述排列顺序可以通过相关技术人员设置并保存在设定的存储位置,同时依据该排列顺序,将各个访问接口的访问地址保存到排列顺序中,该访问接口的上一个访问接口中;在确定了目标接口组后,可以从设定的存储位置获取到该目标接口组的排列顺序,从排列顺序中的第一个访问接口开始,对该访问接口对应的数据存储系统进行访问。
上述排列顺序可以视为多元存储系统访问逻辑的一部分,为了减小访问逻辑固化情况对数据访问服务的影响,在不停止整个系统的工作状态的情况下,上述排列顺序应该是可以由相关技术人员查看并修改的;例如,可以在访问接口层的配置过程引入ZooKeeper,将上述排列顺序保存在ZooKeeper中;ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是一个为分布式应用提供一致性服务的软件;ZooKeeper可以封装好复杂易出错的关键服务,将简单易用的接口提供给相关技术人员,使得相关技术人员直接对排列顺序进行修改。具体实现过程中,也可以编写其他与ZooKeeper功能类似的软件以实现排列顺序的易修改的特点。
在对访问接口对应的数据存储系统的访问过程中,当数据访问请求的内容不同时,其具体的访问策略也不同。例如,当数据访问请求为查询某个数据源的数据时,首先访问目标接口组中的第一个访问接口对应的数据存储系统,如果在该数据存储系统中查找到数据访问请求对应的数据,则完成了数据访问请求对应的数据访问;如果该数据存储系统中无法查找到数据访问请求对应的数据,可以依次通过第二个访问接口访问其对应的数据存储系统,以查找数据访问请求对应的数据,以此类推,直到查找到数据访问请求对应的数据,停止对数据存储系统的访问。如果直至访问了目标接口组中,最后一个访问接口对应的数据存储系统,也没有查找到数据访问请求对应的数据,则认为此次数据访问异常,可以向业务层返回数据访问异常的信号。
当数据访问请求为向某个数据源中存储数据时,可能仅仅访问目标接口组中的第一个访问接口对应的数据存储系统,将数据储存至该数据存储系统后,就可以认为完成了数据访问请求对应的数据访问;该数据在同一数据源中其他数据存储系统中的同步过程可以由预先设定的其他流程完成。
上述数据访问方法,应用于运行有访问接口的服务器,且该服务器上运行有至少一组接口组,每组接口组包括以链式结构排列的多个访问接口,每个访问接口对应有数据存储系统,当接收来自业务层的数据访问请求时,根据该数据访问请求,确定待访问的目标接口组;并按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的多个访问接口对应的数据存储系统,直至完成该数据访问请求对应的数据访问。该方式中,接口组中的多个访问接口以链式结构排列,如果当前访问的访问接口对应的数据存储系统异常,可以按照该接口组中的多个访问接口的排列顺序访问下一个访问接口对应的数据存储系统,直到完成数据访问,从而提高了数据访问服务的稳定性,同时也提高了数据存储的安全性。
本发明实施例还提供了另一种数据访问方法,该方法在上述实施例方法的基础上实现;该方法重点描述根据数据访问请求,确定待访问的目标接口组的具体过程(通过下述步骤S402-S406实现),按照排列顺序,访问目标接口组中的访问接口对应的数据存储系统的具体过程(通过下述步骤S410-S420实现),以及在完成数据访问后,对同一数据源的数据存储系统进行数据同步的过程(通过下述步骤S422-S426实现);如图4所示,该方法包括以下步骤:
步骤S400,接收来自业务层的数据访问请求。
步骤S402,确定数据访问请求的访问方式。
由于数据访问请求中通常包括待访问数据的数据源相关信息及对待访问数据的处理方式,如写入、删除或查询等,而当通过同一个访问接口可以对对应的数据存储系统进行增删改查(增加、删除、修改、查询)时,如基于BaseDAO的子类访问接口DAO,上述访问方式可以仅与待访问数据的数据源相关信息有关;如该相关信息为数据源的约定标识时,该访问方式可以为该约定标识。
步骤S404,将访问方式对应的接口组,确定为待访问的目标接口组;具体而言,可以根据访问方式中的数据源相关信息,查找可以访问该数据源对应的数据存储系统的接口组,将其确定为待访问的目标接口组。
步骤S406,将目标接口组中的第一个访问接口确定为当前访问接口。
接口组中访问接口的排列顺序可以预先存储在设定存储位置,可以在获取目标接口的排列顺序后,将其中的第一个访问接口作为当前访问接口。
步骤S408,访问当前访问接口对应的数据存储系统。
通常来说,一个访问接口可以由多个组件组成,各个组件相互配合实现对访问接口对应的数据存储系统进行访问;例如,一个典型的DAO实现有下列几个组件:DAO工厂类、DAO接口、实现DAO接口的具体类及数据传递对象等。其中,DAO接口定义了数据访问的方法,实现DAO接口的具体类包含了从特定的数据源访问数据的逻辑。
步骤S410,如果当前访问接口对应的数据存储系统访问异常,执行步骤S412;否则执行步骤S420。
如果在当前访问接口对应的数据存储系统中无法完成数据访问请求对应的数据访问,可以认为该数据存储系统处于访问异常状态;如无法查找到数据访问请求对应的数据,或者无法删除数据访问请求对应的数据等。
步骤S412,如果当前访问接口是目标接口组中的最后一个访问接口,执行步骤S414;否则执行步骤S416。
在当前访问接口对应的数据存储系统访问异常时,如果按照目标接口组中的排列顺序,当前访问接口为目标接口组中的最后一个访问接口时,则目标接口组中的各个访问接口均已经被访问过,且各个数据存储系统均处于访问异常状态,此时可以结束通过接口对数据存储系统的访问。然而在实际中,由于采用了多个数据存储系统,相比于采用单个数据存储系统的故障几率,每个数据存储系统均出现故障的几率较小。
步骤S414,向业务层返回访问异常的信号。
当目标接口组中的所有访问接口均被访问过,且无法完成数据访问请求对应的数据访问时,可以生成表示访问异常的信号,并将该信号返回至业务层,作为对业务层发送的数据访问请求的回复。
步骤S416,从当前访问接口中获取下一个访问接口的访问地址;具体而言,同一接口组中,按照多个访问接口的排列顺序,除最后一个访问接口以外的访问接口中,保存有下一个访问接口的访问地址;如果当前访问接口不是最后一个访问接口,可以从当前访问接口中读取下一个访问接口的访问地址。
步骤S418,将访问地址对应的访问接口确定为更新的当前访问接口,执行步骤S408;在得到下一个访问接口的访问地址后,可以将当前访问接口的下一个访问接口作为更新后的当前访问接口,继续执行上述步骤S408,访问当前访问接口对应的数据存储系统。
步骤S420,完成数据访问请求对应的数据访问。
在当前访问接口对应的数据存储系统访问正常的情况下,通过该访问接口在数据存储系统中执行了访问请求对应的数据写入、数据查找等操作,则完成了数据访问请求对应的数据访问,此时可以将从数据存储系统中获取到的数据访问请求对应的数据返回至业务层。
步骤S422,确定目标接口组中,返回数据访问请求对应数据的目标接口;在完成数据访问请求对应的数据访问时,将当前访问接口确定为返回数据访问请求对应数据的目标接口。
步骤S424,如果目标接口不是目标接口组中的第一个访问接口,执行步骤S426;如果目标接口是目标接口组中的第一个访问接口,结束。
具体而言,可以查看目标接口在目标接口组中访问接口的排列顺序,确定目标接口是否为目标接口组中的第一个访问接口。如果目标接口是目标接口组中的第一个访问接口,说明第一个访问接口对应数据存储系统处于访问正常状态,而目标接口组中的其他访问接口对应的数据存储系统的访问状态不可知,此时可以直接结束该数据访问过程。
步骤S426,通过目标接口组中排列在目标接口之前的访问接口,向排列在目标接口之前的访问接口对应的数据存储系统写入数据访问请求对应的数据。
如果目标接口不是目标接口组中的第一个访问接口,说明在目标接口之前的访问接口对应数据存储系统处于访问异常状态,数据访问请求对应的数据在访问异常的数据存储系统未找到,此时,需要通过对应的访问接口,将数据访问请求对应的数据写入这些数据存储系统中,此动作称为回写;可以实现回写的访问接口为有效接口。
上述数据访问方法,在接收来自业务层的数据访问请求后,确定数据访问请求的访问方式,并将访问方式对应的接口组确定为待访问的目标接口组,然后按照目标接口组中的排列顺序,首先访问第一个访问接口对应的数据存储系统,如果该数据存储系统处于异常访问状态,从第一个访问接口中获取到下一个访问接口的访问地址,继续通过下一个访问接口访问其对应的数据存储系统,直至完成数据访问请求对应的数据访问;如果完成数据访问时采用的访问接口不是第一个访问接口,将数据访问请求对应的数据写入目标接口组中排在该访问接口之前的访问接口对应的数据存储系统,以实现同一数据源的数据存储系统的数据同步,提高了数据存储的安全性,同时也提高了数据访问服务的稳定性。
本发明实施例还提供了另一种数据访问方法,该方法在上述实施例方法的基础上实现;该方法结合常见的数据访问对象(DAO)这种访问接口重点描述当访问接口对应的数据存储系统访问异常时,基于该访问接口的访问策略进行后续处理的过程。
当访问接口为DAO时,DAO按照访问模式和策略组合进行分组,形成链式接口组(也称为ChainGroup);在一个接口组中,DAO以链表的形式组合在一起。每个DAO对应一个数据存储系统;同一个接口组的DAO对应的数据存储系统属于同一数据源。当该数据存储系统用于储存元数据(data about data,是描述数据属性的信息)时,也可以将其称为元数据存储集群;该集群可以为KTS(Kingsoft Table Service,一种数据库服务)集群、KVDB(一种分布式key-value数据存储服务)集群或Redis(基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API)集群等;同一类的存储集群,如果是两个不同的集群,需要提供两个不同的DAO。由DOA组成的访问接口层可以称为DAOSource层,对应地,DAOSource层中DAO的链式连接方式可以被称为ChainGroupService层(数据访问链式组合服务层)。
如图5所示,该方法包括如下步骤:
步骤S500,接收来自业务层的数据访问请求。
当访问接口为DAO时,上述数据访问请求中通常包括由BaseDAO提供的函数,如mput(多数据写入),put(数据写入),mget(多数据读取),get(数据读取),mdelete(多数据删除),delete(数据删除),recallPut(数据回写),recallMput(多数据回写)等函数,这些函数可以由业务层直接调用。
步骤S502,根据数据访问请求,确定待访问的目标接口组。
步骤S504,将目标接口组中的第一个访问接口确定为当前访问接口;具体地,将链表头的DAO对象作为当前访问接口。
步骤S506,访问当前访问接口对应的数据存储系统。
在通过DAO访问对应的数据存储系统时,会根据数据访问请求中BaseDAO提供的函数调用对应内部函数,如当数据访问请求中的函数为mput时,调用_{mput,…}函数;这些内部函数根据不同的策略,调用自身的handle{…}函数,该函数是比内部函数更为底层,直接与数据存储系统进行交互。如果数据访问请求中的函数是get或mget,后续还可能会调用recallPut或recalMput函数进行数据回写。
步骤S508,如果当前访问接口对应的数据存储系统访问异常,执行步骤S510;否则执行步骤S520。
步骤S510,获取当前访问接口的访问策略。
访问接口的访问策略通常包括在访问接口的组件(也称为对象)中;如每个DAO访问接口都包含一个DAORule对象,DAO的访问策略就存储在DAORule对象中。对应于不同类型的数据访问请求,访问策略包括多种;如当数据访问请求为向某一数据源写入数据时,访问策略包括了对应写入模式,如异步写或同步写,异步写指程序主线无需等待写入结果而继续执行后续逻辑,而写入任务被交给其他辅助线程来完成;同步写指写入任务要在主线程中来完成,才能进行后续逻辑。DAORule对象中可以由asynW这个参数体现这个访问策略:该参数为true时,表示在该DAO访问接口的写入采用异步写方式的访问策略;该参数为false时,表示在该DAO访问接口的写入采用同步写方式的访问策略;当对这个参数的属性进行修改时,对应的访问策略也发生改变。
当涉及到回写时,上述访问策略还可以确定在回写模式中,采用同步还是异步;上述回写指当一个DAO执行查询任务,没有查询到结果,接着向下一个DAO查询,并查询到了结果,那么此时,为了保证数据的一致性,需要将查询结果写入到前一个DAO的数据源中,这个动作称之为回写。异步回写是指回写这个任务不在主线程中完成,主线程继续进行后续逻辑,有其他辅助线程来完成写入动作;同步回写则与异步回写恰恰相反,写入任务在主线程中完成,确认写入完成之后,程序才可继续执行。DAORule对象中可以由asynRcW这个参数体现这个访问策略:该参数为true时,表示在该DAO访问接口的回写模式中,采用异步回写的访问策略;该参数为false时,表示在该DAO访问接口的回写模式中,采用异步回写的访问策略。
上述访问策略中还可以包括对数据存储系统访问异常的处理方式;当前访问接口的访问策略可以为在当前访问接口对应的数据存储系统访问异常时,继续访问下一个访问接口;也可以为停止继续访问。DAORule对象中可以由throwEx这个参数体现这个访问策略,当该参数为true时,表示如果在该DAO对象对应的数据存储系统访问异常时(即访问该DAO对象失败),终止数据访问流程;当该参数为false时,表示如果在该DAO对象对应的数据存储系统访问异常时,继续访问下一个DAO对象。
步骤S512,如果访问策略指示继续访问下一个访问接口,执行步骤S514;如果访问策略指示停止访问,执行步骤S522。
结合DAO的访问策略,即当获取到的throwEx参数为false时,访问策略只是继续访问下一个访问接口,当获取到的throwEx参数true时,访问策略指示停止访问。
步骤S514,如果当前访问接口是目标接口组中的最后一个访问接口,执行步骤S522;否则,执行步骤S516。
步骤S516,从当前访问接口中获取下一个访问接口的访问地址。
步骤S518,将访问地址对应的访问接口确定为更新的当前访问接口,执行步骤S506;在当前DAO的函数执行完成后,直接调用下一个DAO的函数。
步骤S520,完成数据访问请求对应的数据访问;具体地,当前DAO对应的数据存储系统处于正常访问状态时,该DAO提供handle{mput/put…}等函数来实现对相应元数据存储的真正读写操作。
步骤S522,向业务层返回访问异常的信号。
在具体实现过程中,上述接口组、上述接口组中多个访问接口的排列顺序、以及每个访问接口对应的数据存储系统,可以均设置在zookeeper中。例如,访问接口与数据存储系统的对应关系的配置项可以设置在zookeeper的/ufa_ctrl/DAO_source目录中;关于接口组中的链式排列方式,其配置项可以设置在zookeeper的/ufa_ctrl/DAO_group目录中。相关技术人员可以通过zookeeper这一工具对上述配置进行修改,避免了访问逻辑固化对数据访问服务稳定性的不良影响。
上述数据访问方法,通过这种链式的DAO对象组织方式以及灵活的访问策略的支持,使得支持多种元数据存储系统和灵活的访问策略成为可能,使得支持新的元数据存储系统变得更加简单。
对应于上述一种数据访问方法实施例,本发明实施例还提供了一种数据访问装置,该装置设置于运行有访问接口的服务器,该服务器上运行有至少一组接口组;每组接口组包括以链式结构排列的多个访问接口;每个访问接口对应有数据存储系统;如图6所示,该装置包括:
请求接收模块600,用于接收来自业务层的数据访问请求;
接口组确定模块602,用于根据数据访问请求,确定待访问的目标接口组;
数据访问模块604,用于按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的访问接口对应的数据存储系统,直至完成数据访问请求对应的数据访问。
上述数据访问装置,设置于运行有访问接口的服务器,且该服务器上运行有至少一组接口组,每组接口组包括以链式结构排列的多个访问接口,每个访问接口对应有数据存储系统,当接收来自业务层的数据访问请求时,根据该数据访问请求,确定待访问的目标接口组;并按照目标接口组中的多个访问接口的排列顺序,访问目标接口组中的多个访问接口对应的数据存储系统,直至完成该数据访问请求对应的数据访问。该方式中,接口组中的多个访问接口以链式结构排列,如果当前访问的访问接口对应的数据存储系统异常,可以按照该接口组中的多个访问接口的排列顺序访问下一个访问接口对应的数据存储系统,直到完成数据访问,从而提高了数据访问服务的稳定性,同时也提高了数据存储的安全性。
进一步地,上述接口组确定模块还用于:确定数据访问请求的访问方式;将访问方式对应的接口组,确定为待访问的目标接口组。
在具体实现时,上述接口组中,除最后一个访问接口以外的访问接口中,保存有下一个访问接口的访问地址;进一步地,上述数据访问模块还用于:将目标接口组中的第一个访问接口确定为当前访问接口;访问当前访问接口对应的数据存储系统,如果当前访问接口对应的数据存储系统访问异常,从当前访问接口中获取下一个访问接口的访问地址;将访问地址对应的访问接口确定为更新的当前访问接口,继续执行访问当前访问接口对应的数据存储系统的步骤,直至完成数据访问请求对应的数据访问。
进一步地,上述数据访问模块还用于:获取当前访问接口的访问策略;如果访问策略指示继续访问下一个访问接口,从当前访问接口中获取下一个访问接口的访问地址;如果访问策略指示停止访问,向业务层返回访问异常的信号。
进一步地,上述装置还包括:目标接口确定模块,用于确定目标接口组中,返回数据访问请求对应数据的目标接口;数据写入模块,用于如果目标接口不是目标接口组中的第一个访问接口,通过目标接口组中排列在目标接口之前的访问接口,向排列在目标接口之前的访问接口对应的数据存储系统写入数据访问请求对应的数据。
在具体实现时,上述接口组、上述接口组中多个访问接口的排列顺序、以及每个访问接口对应的数据存储系统,设置在zookeeper中。
本发明实施例所提供的数据访问装置,其实现原理及产生的技术效果和前述数据访问方法实施例相同,为简要描述,数据访问装置实施例部分未提及之处,可参考前述数据访问方法实施例中相应内容。
本发明实施例还提供了一种服务器,参见图7所示,该服务器包括处理器130和存储器131,该存储器131存储有能够被处理器130执行的机器可执行指令,该处理器130执行机器可执行指令以实现上述数据访问方法。
进一步地,图7所示的服务器还包括总线132和通信接口133,处理器130、通信接口133和存储器131通过总线132连接。
其中,存储器131可能包含高速随机存取存储器(RAM,RandomAccessMemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口133(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线132可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器130可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器130中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器130可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器131,处理器130读取存储器131中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述数据访问方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的数据访问方法及装置和服务器的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种数据访问方法,其特征在于,所述方法应用于运行有访问接口的服务器,所述服务器上运行有至少一组接口组;每组所述接口组包括以链式结构排列的多个访问接口;每个所述访问接口对应有数据存储系统;所述方法包括:
接收来自业务层的数据访问请求;
根据所述数据访问请求,确定待访问的目标接口组;
按照所述目标接口组中的多个访问接口的排列顺序,访问所述目标接口组中的访问接口对应的数据存储系统,直至完成所述数据访问请求对应的数据访问。
2.根据权利要求1所述的方法,其特征在于,根据所述数据访问请求,确定待访问的目标接口组的步骤,包括:
确定所述数据访问请求的访问方式;
将所述访问方式对应的接口组,确定为待访问的目标接口组。
3.根据权利要求1所述的方法,其特征在于,所述接口组中,除最后一个访问接口以外的访问接口中,保存有下一个访问接口的访问地址;
所述按照所述目标接口组中的多个访问接口的排列顺序,访问所述目标接口组中的多个访问接口对应的数据存储系统,直至完成所述数据访问请求对应的数据访问的步骤,包括:
将所述目标接口组中的第一个访问接口确定为当前访问接口;
访问所述当前访问接口对应的数据存储系统,如果所述当前访问接口对应的数据存储系统访问异常,从所述当前访问接口中获取下一个访问接口的访问地址;
将所述访问地址对应的访问接口确定为更新的当前访问接口,继续执行访问所述当前访问接口对应的数据存储系统的步骤,直至完成所述数据访问请求对应的数据访问。
4.根据权利要求3所述的方法,其特征在于,从所述当前访问接口中获取下一个访问接口的访问地址的步骤,包括:
获取所述当前访问接口的访问策略;
如果所述访问策略指示继续访问下一个访问接口,从所述当前访问接口中获取下一个访问接口的访问地址;
如果所述访问策略指示停止访问,向所述业务层返回访问异常的信号。
5.根据权利要求1所述的方法,其特征在于,完成所述数据访问请求对应的数据访问的步骤之后,所述方法还包括:
确定所述目标接口组中,返回所述数据访问请求对应数据的目标接口;
如果所述目标接口不是所述目标接口组中的第一个访问接口,通过所述目标接口组中排列在所述目标接口之前的访问接口,向排列在所述目标接口之前的访问接口对应的数据存储系统写入所述数据访问请求对应的数据。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述接口组、所述接口组中多个访问接口的排列顺序、以及每个所述访问接口对应的数据存储系统,设置在zookeeper中。
7.一种数据访问装置,其特征在于,所述装置设置于运行有访问接口的服务器,所述服务器上运行有至少一组接口组;每组所述接口组包括以链式结构排列的多个访问接口;每个所述访问接口对应有数据存储系统;所述装置包括:
请求接收模块,用于接收来自业务层的数据访问请求;
接口组确定模块,用于根据所述数据访问请求,确定待访问的目标接口组;
数据访问模块,用于按照所述目标接口组中的多个访问接口的排列顺序,访问所述目标接口组中的访问接口对应的数据存储系统,直至完成所述数据访问请求对应的数据访问。
8.根据权利要求7所述的装置,其特征在于,所述接口组确定模块还用于:
确定所述数据访问请求的访问方式;
将所述访问方式对应的接口组,确定为待访问的目标接口组。
9.根据权利要求7所述的装置,其特征在于,所述接口组中,除最后一个访问接口以外的访问接口中,保存有下一个访问接口的访问地址;
所述数据访问模块还用于:
将所述目标接口组中的第一个访问接口确定为当前访问接口;
访问所述当前访问接口对应的数据存储系统,如果所述当前访问接口对应的数据存储系统访问异常,从所述当前访问接口中获取下一个访问接口的访问地址;
将所述访问地址对应的访问接口确定为更新的当前访问接口,继续执行访问所述当前访问接口对应的数据存储系统的步骤,直至完成所述数据访问请求对应的数据访问。
10.一种服务器,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至6任一项所述的方法。
11.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1至6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911080246.3A CN112783954B (zh) | 2019-11-06 | 2019-11-06 | 数据访问方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911080246.3A CN112783954B (zh) | 2019-11-06 | 2019-11-06 | 数据访问方法、装置及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112783954A true CN112783954A (zh) | 2021-05-11 |
CN112783954B CN112783954B (zh) | 2024-04-05 |
Family
ID=75747723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911080246.3A Active CN112783954B (zh) | 2019-11-06 | 2019-11-06 | 数据访问方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112783954B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113742364A (zh) * | 2021-09-10 | 2021-12-03 | 拉卡拉支付股份有限公司 | 数据访问方法、装置、电子设备、存储介质及程序产品 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114616A1 (en) * | 2002-11-18 | 2005-05-26 | Arm Limited | Access control in a data processing apparatus |
CN1737943A (zh) * | 2004-02-26 | 2006-02-22 | 松下电器产业株式会社 | 存储器接口和数据处理系统 |
US20060168472A1 (en) * | 2005-01-25 | 2006-07-27 | Inventec Corporation | Data storage unit failure condition responding method and system |
US7240143B1 (en) * | 2003-06-06 | 2007-07-03 | Broadbus Technologies, Inc. | Data access and address translation for retrieval of data amongst multiple interconnected access nodes |
US7739543B1 (en) * | 2003-04-23 | 2010-06-15 | Netapp, Inc. | System and method for transport-level failover for loosely coupled iSCSI target devices |
CN104283976A (zh) * | 2013-07-10 | 2015-01-14 | 中兴通讯股份有限公司 | 一种网络接口的切换方法及接入设备 |
CN108541312A (zh) * | 2016-12-30 | 2018-09-14 | 谷歌有限责任公司 | 分组化数据的多模态传输 |
CN108763274A (zh) * | 2018-04-09 | 2018-11-06 | 北京三快在线科技有限公司 | 访问请求的识别方法、装置、电子设备及存储介质 |
CN109165182A (zh) * | 2018-08-07 | 2019-01-08 | 神州融安科技(北京)有限公司 | 通讯方法和装置 |
CN109491587A (zh) * | 2017-09-11 | 2019-03-19 | 华为技术有限公司 | 数据访问的方法及装置 |
-
2019
- 2019-11-06 CN CN201911080246.3A patent/CN112783954B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050114616A1 (en) * | 2002-11-18 | 2005-05-26 | Arm Limited | Access control in a data processing apparatus |
US7739543B1 (en) * | 2003-04-23 | 2010-06-15 | Netapp, Inc. | System and method for transport-level failover for loosely coupled iSCSI target devices |
US7240143B1 (en) * | 2003-06-06 | 2007-07-03 | Broadbus Technologies, Inc. | Data access and address translation for retrieval of data amongst multiple interconnected access nodes |
CN1737943A (zh) * | 2004-02-26 | 2006-02-22 | 松下电器产业株式会社 | 存储器接口和数据处理系统 |
US20060168472A1 (en) * | 2005-01-25 | 2006-07-27 | Inventec Corporation | Data storage unit failure condition responding method and system |
CN104283976A (zh) * | 2013-07-10 | 2015-01-14 | 中兴通讯股份有限公司 | 一种网络接口的切换方法及接入设备 |
CN108541312A (zh) * | 2016-12-30 | 2018-09-14 | 谷歌有限责任公司 | 分组化数据的多模态传输 |
CN109491587A (zh) * | 2017-09-11 | 2019-03-19 | 华为技术有限公司 | 数据访问的方法及装置 |
CN108763274A (zh) * | 2018-04-09 | 2018-11-06 | 北京三快在线科技有限公司 | 访问请求的识别方法、装置、电子设备及存储介质 |
CN109165182A (zh) * | 2018-08-07 | 2019-01-08 | 神州融安科技(北京)有限公司 | 通讯方法和装置 |
Non-Patent Citations (3)
Title |
---|
MINH CHAU NGUYEN ETC.: "Data Storage Adapter in Big Data Platform", 《2015 8TH INTERNATIONAL CONFERENCE ON DATABASE THEORY AND APPLICATION (DTA)》, pages 6 - 9 * |
刘汉波: "对象存储系统的I/O处理与缓存研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, pages 137 - 24 * |
陈惟康: "网络环境下分布式存储系统的研究与设计", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, pages 137 - 9 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113742364A (zh) * | 2021-09-10 | 2021-12-03 | 拉卡拉支付股份有限公司 | 数据访问方法、装置、电子设备、存储介质及程序产品 |
CN113742364B (zh) * | 2021-09-10 | 2023-12-26 | 拉卡拉支付股份有限公司 | 数据访问方法、装置、电子设备、存储介质及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN112783954B (zh) | 2024-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111104392B (zh) | 一种数据库迁移方法、装置、电子设备及存储介质 | |
US7548920B2 (en) | Systems and methods of accessing and updating recorded data via an inter-object proxy | |
CN110032599B (zh) | 数据结构的读取及更新方法、装置、电子设备 | |
CN108599973B (zh) | 一种日志关联方法、装置及设备 | |
US11704114B2 (en) | Data structures for managing configuration versions of cloud-based applications | |
US10691622B2 (en) | Intents and locks with intent | |
CN112685391B (zh) | 一种服务数据迁移方法、装置、计算机设备和存储介质 | |
US20210326359A1 (en) | Compare processing using replication log-injected compare records in a replication environment | |
EP2778962B1 (en) | Silo-aware databases | |
CN110430255A (zh) | 分布式集群中服务请求的处理方法、系统以及电子设备 | |
CN112416710A (zh) | 用户操作的记录方法、装置、电子设备及存储介质 | |
US20200342008A1 (en) | System for lightweight objects | |
CN115237444A (zh) | 基于版本号的并发控制方法、装置、设备及存储介质 | |
CN112783954B (zh) | 数据访问方法、装置及服务器 | |
CN111651235A (zh) | 一种虚拟机组任务管理方法及装置 | |
US9009731B2 (en) | Conversion of lightweight object to a heavyweight object | |
CN113077241B (zh) | 审批处理方法、装置、设备及存储介质 | |
CN115658357A (zh) | 重放区块链交易的方法及装置 | |
CN111258873B (zh) | 测试方法及装置 | |
CN113760863A (zh) | 数据库的配置方法、装置、计算机设备和可读存储介质 | |
CN118467798B (zh) | 一种产品选配方法、装置、设备及介质 | |
US12032589B2 (en) | Bypassing database automations | |
WO2024193153A1 (zh) | 处理源代码的方法、装置及存储介质 | |
US11928238B1 (en) | Protecting customer data using different domains | |
CN111414162B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |