CN110781214A - 数据库读写方法、装置、计算机设备和存储介质 - Google Patents
数据库读写方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110781214A CN110781214A CN201910915994.2A CN201910915994A CN110781214A CN 110781214 A CN110781214 A CN 110781214A CN 201910915994 A CN201910915994 A CN 201910915994A CN 110781214 A CN110781214 A CN 110781214A
- Authority
- CN
- China
- Prior art keywords
- database
- task
- transaction
- slave
- data table
- 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
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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种数据库读写方法、装置、计算机设备和存储介质。所述方法包括:获取待处理的数据库事务;数据库事务包括至少一个任务;启动数据库事务并依次执行任务;在当前所执行的任务为读操作任务时,查询与读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;当历史操作记录包括写操作记录时,从主数据库读取目标数据表中与任务对应的数据;当历史操作记录未包括写操作记录时,从与主数据库对应的从数据库,读取目标数据表中与任务对应的数据。采用本方法能够提高数据库的服务性能。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据库读写方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,日常生活中产生了大量的数据,管理这些数据需要用到数据库。在数据量很大的情况下,需要使用多个数据库来存储相同的数据,通过让主数据库处理写操作,例如新增、修改和删除操作,而从数据库处理读操作,例如查询操作,从而实现对数据库操作的读写分离。传统技术中,通常利用额外的第三方服务,比如MyCat、ProxySQL服务(一种代理服务中间件),来实现对数据库操作的读写分离。
然而,利用中间件实现数据库操作的读写分离,存在对数据库操作读写分离不完全,无法实现自适应读写分离的问题,使得数据库的服务性能较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升数据库的服务性能的数据库读写方法、装置、计算机设备和存储介质。
一种数据库读写方法,所述方法包括:
获取待处理的数据库事务,所述数据库事务包括至少一个任务;
启动所述数据库事务并依次执行所述任务;
在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;
当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;
当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。
一种数据库读写装置,所述装置包括:
事务获取模块,用于获取待处理的数据库事务,所述数据库事务包括至少一个任务;
事务启动模块,启动所述数据库事务并依次执行所述任务;
记录查询模块,用于在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;
第一数据读取模块,用于当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;
第二数据读取模块,用于当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待处理的数据库事务;所述数据库事务包括至少一个任务;
启动所述数据库事务并依次执行所述任务;
在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;
当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;
当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待处理的数据库事务;所述数据库事务包括至少一个任务;
启动所述数据库事务并依次执行所述任务;
在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;
当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;
当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。
上述数据库读写方法、装置、计算机设备和存储介质,在执行数据库事务中的读操作任务时,查询与该读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录,从而可根据历史操作记录来分配该读操作任务所需访问的数据库。当历史操作记录包括写操作记录时,在该数据库事务的生命周期内该目标数据表中的数据可能被修改,可能存在未同步至从数据库的情况,则直接从主数据库读取所需的数据。当历史操作记录未包括写操作记录时,则在该数据库事务的生命周期内该目标数据表中的数据未被修改,主数据库和从数据库所存储的数据具有一致性,可从从数据库中读取所需的数据,减轻主数据库的负载压力,使得对数据库的读写操作完全分离,实现了自适应读写分离,提高了数据库的服务性能。
附图说明
图1为一个实施例中数据库读写方法的应用场景图;
图2为一个实施例中数据库读写方法的流程示意图;
图3为另一个实施例中数据库读写方法的流程示意图;
图4为一个实施例中数据库读写装置的结构框图;
图5为另一个实施例中数据库读写装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据库读写方法,可以应用于如图1所示的应用环境中。该应用环境包括用户终端102、计算机设备104、主服务器106以及从服务器108。其中,用户终端102具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。计算机设备104可以是终端也可以是服务器。主服务器106上架构有主数据库,从服务器108上架构有从数据库,可以理解,从服务器108上可架构有多个从数据库。主服务器106和从服务器108均可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
用户终端102和计算机设备104通过网络连接,计算机设备104和主服务器106通过网络连接,计算机设备104和从服务器108也通过网络连接。计算机设备104可从用户终端102处获取数据库事务,启动数据库事务并依次执行任务,在当前所执行的任务为读操作任务时,计算机设备104查询与读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录。当历史操作记录包括写操作记录时,计算机设备104从主服务器106中的主数据库,读取目标数据表中与任务对应的数据。当历史操作记录未包括写操作记录时,计算机设备104从从服务器108中的从数据库中读取目标数据表中与任务对应的数据。本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案相关的部分场景,并不构成对本申请方案应用环境的限定。
在一个实施例中,如图2所示,提供了一种数据库读写方法,以该方法应用于图1中的计算机设备104为例进行说明,包括以下步骤:
S202,获取待处理的数据库事务;数据库事务包括至少一个任务。
其中,数据库事务是由是一序列与数据库操作有关的任务所构成的事务,数据库事务所包括的任务通常是相关的任务。与数据库操作有关的任务包括读操作任务和写操作任务。其中,读操作任务用于对数据库执行读操作;写操作任务用于对数据库执行写操作。其中,写操作具体可包括增加操作、修改操作和删除操作中的至少一种。
具体地,计算机设备可获取用户终端采集的业务信息,并根据业务信息生成相应的与数据库操作有关的任务。计算机设备可将多个任务封装成一个数据库事务。其中,业务信息是与用户终端所处理的业务相关的信息,比如订单信息、资源转移信息或与用户操作相关的信息等。
在一个实施例中,计算机设备可以先获取待执行的多个任务,对获取到的多个任务进行分析,再将多个任务中相关联的至少一个任务封装成一个数据库事务。计算机设备可为各个数据库事务分配对应的事务标识。当计算机设备检测到数据库事务执行指令时,根据数据库事务执行指令所携带的事务标识获取对应的数据库事务。其中,事务标识是一种标识,用于唯一标识数据库事务,具体可以包括字母、数字和符号中至少一种字符的字符串。
可以理解,计算机设备获取数据库事务执行指令的方式有多种,比如,计算机设备可接收其他计算机设备发送的数据库事务执行指令;或者当计算机设备检测到事务触发操作时,依据事务触发操作生成相应的数据库事务执行指令等,本申请实施例在此不做限定。其中,事务触发操作是用于触发数据库事务执行指令生成的触发操作。触发操作具体可以是触摸操作、光标操作、按键操作或者语音操作。其中,触摸操作可以是触摸点击操作、触摸按压操作或者触摸滑动操作,触摸操作可以是单点触摸操作或者多点触摸操作;光标操作可以是控制光标进行点击的操作或者控制光标进行按压的操作;按键操作可以是虚拟按键操作或者实体按键操作等。
在一个实施例中,用户终端向计算机设备发送业务信息,计算机设备接收到业务信息之后,根据该业务信息生成任务。计算机设备将有业务关联关系的至少一个任务封装成数据库事务。
举例说明,当在用户终端创建一个产品交易订单时,该产品交易订单涉及的业务数据具体包括:与该交易订单对应的产品交易数量、产品单价、仓库中产品的剩余库存量、以及相应的资源转移数额等。这些业务数据需要同时处理,就可以将这些具有业务关联关系的业务数据所对应的操作任务,封装成一个数据库事务,这样可以保证数据的一致性。
在一个实施例中,用户终端向计算机设备发送业务信息,计算机设备在接收到业务信息之后,将该业务信息存储在本地。计算机设备可实时根据本地存储的业务信息生成相应的任务。或者当达到预设时间段后,根据该时间段内所存储的业务信息生成相应的任务。还或者,当计算机设备检测到用于触发生成任务的触发动作时,根据本地存储的业务信息生成相应的任务等。计算机设备可按照任一种方式生成相应的任务,并申请实施例在此不做限定。进而,计算机设备可将具有业务关联关系的至少一个任务封装成数据库事务。
S204,启动数据库事务并依次执行任务。
具体地,在计算机设备获取到数据库事务之后,可启动该数据库事务,当数据库事务成功启动时,计算机设备将依次执行数据库事务中所包括的所有任务。
在一个实施例中,计算机设备可以在计算机设备获取到数据库事务之后立刻启动数据库事务,也可以预先设定间隔时间,在计算机设备获取到数据库事务之后,当预设时间到达时自动启动数据库事务。
在一个实施例中,计算机设备可以通过调用接口来启动数据库事务,接口具体可以是API(Application Programming Interface,应用程序编程接口)接口。当计算机设备监测到数据需要更新,比如,在用户终端创建一个交易订单,需要更新该交易订单相关的金额和订单数量等数据时,计算机设备可调用API接口启动数据库事务,数据库事务启动之后,在数据库事务的生命周期内依次执行任务。其中,数据库事务的生命周期是数据库事务启动到数据库事务结束的整个生命周期。
S206,在当前所执行的任务为读操作任务时,查询与读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录。
其中,读操作任务是用于执行读操作的任务。目标数据表是当前读操作任务所要访问的数据表。历史操作记录是在数据库事务生命周期内对目标数据表的读写操作记录,用于记录事务内目标数据表的***作情况。当前数据库事务的生命周期内的历史操作记录,是从该数据库事务被启动开始至当前时刻的所有时间段内所记录的目标数据表***作情况的记录。
具体地,计算机设备在启动数据库事务时可依次执行该数据库事务中的各任务,对于每个任务,计算机设备可先确定该任务的操作类别,当该操作类别为读操作任务的类别时,计算机设备可获取该任务所要访问的目标数据表,并查询该目标数据表在当前数据库事务的生命周期内的历史操作记录。
在一个实施例中,一个数据库事务的生命周期内,只要目标数据表被执行了读操作任务或写操作任务,目标数据表对应的操作记录就会被记录下来。
在一个实施例中,事务内的历史操作记录具体可以包括目标数据表的表名、对目标数据表的操作类型、执行时间以及该历史操作记录对应的事务标识的对应关系。操作类型可以是读操作类型和写操作类型,写操作类型具体可以包括增加操作、修改操作和删除操作。在当前所执行的任务为读操作任务时,计算机设备查询目标数据表的表名,根据目标数据表的表名查询目标数据表的历史操作记录。
在一个实施例中,计算机设备在数据库事务的生命周期内每执行一次任务,都会记录该任务对所指向的目标数据表所进行的操作类型。计算机设备根据本地记录的该任务对所指向的目标数据表所进行的操作类型,生成历史操作记录。
S208,当历史操作记录包括写操作记录时,从主数据库读取目标数据表中与任务对应的数据。
其中,主数据库是存放数据的原始数据库,用于存放数据,且主数据库是唯一的,主数据库不可扩展。为提高数据库的服务性能,通常需要组建数据库集群,比如组建包括有主数据库和从数据库的数据库集群。其中,从数据库是存放从主数据库复制过来的数据的数据库,用于存放从主数据库复制过来的数据。且从数据库可以为一个或者多个。从数据库可以横向扩展,也可以纵向扩展。本申请所有实施例中的“多个”代表“多于一个”。
具体地,计算机设备在查询到目标数据表的历史操作记录之后,对历史操作记录进行分析判断,若历史操作记录包括写操作记录,则计算机设备可连接主数据库,从主数据库读取目标数据表中与任务对应的数据。
在一个实施例中,计算机设备从主数据库读取目标数据表中与任务对应的数据之前,可以先获取本地的配置对象,并从配置对象中获取主数据库的地址。其中,配置对象是用于存储配置信息的对象,具体可以是配置文件,也可以是配置服务器。配置文件是用于存储配置信息的文件,配置服务器是用于存储配置信息的服务器,在配置文件和配置服务器中可以配置主数据库和从数据库各自对应的地址,该地址用于连接对应的数据库。然后计算机设备再根据主数据库的地址连接主数据库。最后计算机设备从连接的主数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
在一个实施例中,主数据库包括至少一张主数据表。主数据表是对应于主数据库的网格虚拟表,用于存放主数据库的数据。计算机设备从至少一张主数据表中,筛选出当前读写操作任务所指向的主数据表作为主数据库的目标数据表。
S210,当历史操作记录未包括写操作记录时,从与主数据库对应的从数据库,读取目标数据表中与任务对应的数据。
具体地,计算机设备在查询到目标数据表的历史操作记录之后,对历史操作记录进行分析判断,若历史操作记录未包括写操作记录,则计算机设备可连接从数据库,从从数据库读取目标数据表中与任务对应的数据。
在一个实施例中,计算机设备可以先确定与主数据库对应的目标从数据库,然后计算机设备再加载本地的配置对象,并从配置对象中获取确定的目标从数据库的地址。接下来计算机设备可以根据目标从数据库的地址连接目标从数据库。最后计算机设备从连接的目标从数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。其中,目标从数据库是将要进行读操作任务的从数据库,用于存放从主数据库复制过来的数据。
在一个实施例中,计算机设备可以确定与主数据库对应的多于一个的从数据库,进而计算机设备可获取各从数据库所在的从服务器对应的权重系数。计算机设备可根据各从数据库对应的权重系数和当前的负载情况,利用负载均衡算法选择目标从数据库。其中,负载均衡算法是均衡计算机设备的负载压力的算法,用于均衡从数据库所对应的从服务器的负载压力。
在一个实施例中,计算机设备可以先确定与主数据库对应的多于一个的从数据库,然后计算机设备再获取各从数据库所在的从服务器对应的硬件信息和负载率。最后计算机设备根据各从数据库对应的硬件信息和负载率,从多于一个的从数据库中筛选满足空闲条件的目标从数据库。其中,硬件信息是用于衡量硬件设备物理性能的详细信息,硬件信息具体可以是数据库所对应的服务器的配置信息,比如服务器的CPU(central processingunit,中央处理器)和内存等。负载率是从数据库所在的从服务器的负载情况,负载率高表示当前的从数据库负载量大,能承担任务的可能性小;负载率低表示当前的从数据库负载量小,能承担任务的可能性大。
在一个实施例中,从数据库包括至少一张从数据表。从数据表是对应于从数据库的网格虚拟表,用于存放从数据库的数据。计算机设备从至少一张从数据表中,筛选出当前读写操作任务所指向的从数据表作为从数据库的目标数据表。
上述数据库读写方法,在执行数据库事务中的读操作任务时,查询与该读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录,从而可根据历史操作记录来分配该读操作任务所需访问的数据库。当历史操作记录包括写操作记录时,在该数据库事务的生命周期内该目标数据表中的数据可能被修改,可能存在未同步至从数据库的情况,则直接从主数据库读取所需的数据。当历史操作记录未包括写操作记录时,则在该数据库事务的生命周期内该目标数据表中的数据未被修改,主数据库和从数据库所存储的数据具有一致性,可从从数据库中读取所需的数据,减轻主数据库的负载压力,使得对数据库的读写操作完全分离,实现了自适应读写分离,提高了数据库的服务性能。
在一个实施例中,步骤S202具体包括:获取待执行的多个任务;将多个任务中相关联的至少一个任务封装成一个数据库事务,并确定数据库事务对应的事务标识;当检测到数据库事务执行指令时,根据数据库事务执行指令所携带的事务标识获取对应的数据库事务。
具体地,计算机设备获取到待执行的多个任务时,将多个任务中相关联的至少一个任务,按照业务逻辑的需要封装成一个数据库事务。数据库事务封装好之后,确定数据库事务所对应的事务标识,当计算机设备检测到数据库事务执行指令时,根据数据库事务执行指令所携带的事务标识,在本地获取对应的数据库事务。
可以理解,计算机设备获取数据库事务执行指令的方式有多种,比如,计算机设备可接收其他计算机设备发送的数据库事务执行指令;或者当计算机设备检测到事务触发操作时,依据事务触发操作生成相应的数据库事务执行指令等,本申请实施例在此不做限定。
上述实施例中,通过获取待执行的多个任务,将这些相关联的任务封装成一个数据库事务,使得对数据库的操作可以在事务内进行。确定数据库事务对应的事务标识,让每一个事务都具有唯一的可确定标记,通过该事务标识可以获取对应的数据库事务,提高了数据库事务的处理效率。
在一个实施例中,该数据库读写方法还包括:在当前所执行的任务为写操作任务时,从主数据库读取目标数据表中与任务对应的数据;写操作任务包括新增操作任务、修改操作任务和删除操作任务中的至少一种。
其中,新增操作任务是用于在数据库中执行新增数据操作的任务,修改操作任务是用于在数据库中执行修改数据操作的任务,删除操作任务是用于在数据库中执行删除数据操作的任务。
具体地,计算机设备在依次执行任务时,可对当前执行的任务进行监测和判断。当监测到当前的任务为新增操作任务、修改操作任务和删除操作任务中的至少一种时,计算机设备将会连接主数据库,从主数据库中读取目标数据表中与任务对应的数据。
在一个实施例中,考虑到主数据库是从数据库同步的数据来源,所以数据的增删改操作必须在主数据库中执行。因而在当前所执行的任务为写操作任务时,计算机设备可从主数据库读取目标数据表中与该写操作任务对应的数据。
上述实施例中,当当前执行的任务为新增操作任务、修改操作任务或删除操作任务时,则连接主数据库,从主数据库中读取数据,实现了数据库操作自适应读写分离,这样可以确保读取到的数据是最新的数据,避免脏读,保证了数据的一致性。
在一个实施例中,步骤S208具体包括:当历史操作记录包括写操作记录时,加载本地的配置对象,并从配置对象中获取主数据库的地址;根据主数据库的地址连接主数据库;从连接的主数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
具体地,在计算机设备查询到历史操作记录之后,对该历史操作记录进行分析判断,若历史操作记录包括写操作记录,计算机设备将读取本地的配置对象,并从配置对象中获取主数据库的地址。计算机设备在获取到主数据库的地址之后,计算机设备将会根据该主数据库的地址连接主数据库。连接成功后,计算机设备将从连接的主数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
在一个实施例中,当读操作任务所指向的目标数据表所对应的历史操作记录中包括写操作记录,说明该目标数据表中的数据被修改过。而在当前整个数据库事务的生命周期内,从数据库还未从主数据库中同步最新的数据,因而从数据库中所存储的该目标数据表的数据不是最新的。在这种情况下,计算机设备可连接主数据库,从主数据库中读取最新的、准确的数据,避免了脏读。
上述实施例中,若历史操作记录包括写操作记录,则获取主数据库的地址并连接主数据库,从主数据库中读取数据,这样可以保证读取的数据是最新的数据,可以有效避免脏读,进一步保证了数据的一致性。
在一个实施例中,步骤S210具体包括:当历史操作记录未包括写操作记录时,确定与主数据库对应的目标从数据库;加载本地的配置对象,并从配置对象中获取确定的目标从数据库的地址;根据目标从数据库的地址连接目标从数据库;从连接的目标从数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
具体地,在计算机设备查询到历史操作记录之后,对该历史操作记录进行分析判断。若历史操作记录未包括写操作记录,计算机设备将会确定与主数据库对应的目标从数据库。计算机设备确定了目标从数据库之后,将会加载本地的配置对象,并从配置对象中获取确定的目标从数据库的地址,在获取到从数据库的地址之后,计算机设备将会根据该从数据库的地址连接从数据库。连接成功后,计算机设备将从连接的从数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
在一个实施例中,当读操作任务所指向的目标数据表所对应的历史操作记录中未包括写操作记录,说明该目标数据表中的数据没有被修改过。因而在当前整个数据库事务的生命周期内,从数据库中所存储的该目标数据表的数据还是最新的。在这种情况下,计算机设备可连接从数据库,从从数据库中读取数据。上述实施例中,当历史操作记录未包括写操作记录时,说明当前读操作任务所指向的目标数据表中的数据没有被修改过,从数据库中所存储的目标数据表中的数据依然是和主数据库中所存储的目标数据表中的数据保持一致。通过获取从数据库的地址并连接从数据库,从从数据库中读取数据,在确保所读取的数据准确的前提下,让从数据库分担部分读操作任务,减轻主数据库的负担。
在一个实施例中,当历史操作记录未包括写操作记录时,确定与主数据库对应的目标从数据库,具体包括:确定与主数据库对应的多于一个的从数据库;获取各从数据库对应的权重系数;根据各从数据库对应的权重系数和当前的负载情况,从多于一个的从数据库中筛选满足空闲条件的目标从数据库。
具体地,在计算机设备查询到历史操作记录之后,对该历史操作记录进行分析判断。若历史操作记录未包括写操作记录,计算机设备将会确定与主数据库对应的多于一个的从数据库,确定了从数据库之后,计算机设备将会获取各从数据库对应的权重系数。根据获取到的各从数据库对应的权重系数,计算机设备将会从多于一个的从数据库中筛选满足空闲条件的目标从数据库。其中,满足空闲条件具体可以是从数据库所在的从服务器的硬件信息高于预设的硬件信息,和/或从服务器的负载率低于预设的负载率阈值。
在一个实施例中,计算机设备可以将存储有与主数据的数据完全相同的数据库,确定为与主数据库对应的从数据库,然后计算机设备再从多于一个的从数据库中筛选出满足空闲条件的目标从数据库。
在一个实施例中,计算机设备可根据各个从数据库对应的从服务器的硬件信息和负载率,计算相应的硬件得分和负载得分,并根据硬件得分和负载得分计算各个从数据库对应的综合得分。从而可选择综合得分满足空闲条件的从服务器对应的从数据库作为目标数据库。
在一个实施例中,计算机设备可将硬件得分和负载得分的差值或者商,作为相应的综合得分。计算机设备可对各从数据库对应的综合得分从高到低进行排序,将排名第一的综合得分对应的从数据库作为目标从数据库。
在一个实施例中,计算机设备可通过负载均衡算法选择目标从数据库,进而使用动态平滑加权轮询装置,获取各从数据库的对应的权重系数。计算机设备确定当前的负载情况,均衡地分配操作任务到各从数据库。其中,动态平滑加权轮询装置是动态给计算机设备分配权重系数的装置,用于给从数据库所对应的从服务器动态分配权重系数。
上述实施例中,通过获取各从数据库对应的权重系数,根据各从数据库对应的权重系数和当前的负载情况,从多于一个的从数据库中筛选满足空闲条件的目标从数据库。这样可以对从数据库进行合理的资源分配,进一步提升了数据库的服务性能。
在一个实施例中,数据库读写方法还包括:在当前的任务执行完成后,根据任务对应的操作类型,更新任务所指向的目标数据表对应的历史操作记录。
在一个实施例中,计算机设备更新的历史操作记录具体可以记录在数据库事务的日志文件中。数据库事务的日志文件是记录数据库中所有数据库事务的文件,用于记录数据库的数据更新情况。计算机设备根据数据库事务的日志文件的记录信息,可以将数据恢复至数据更新前的状态。
上述实施例中,在当前的任务执行完成后,根据任务对应的操作类型,更新任务所指向的目标数据表对应的历史操作记录。这样可以保证每一个任务执行完成之后,对应的历史操作记录就会及时得到更新。确保了在当前所执行的任务为读操作任务时,查询到的与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录是最新的。从而可以根据最新的历史操作记录,准确选择访问的数据库是主数据库还是从数据库,进一步保证数据的一致性。
在一个实施例中,在数据库事务的生命周期结束之后,数据库读写方法还包括:将主数据库的数据同步更新至从数据库。
具体地,当计算机设备监测到数据库事务的生命周期已经结束时,计算机设备将会把在主数据库进行了写操作任务的数据存储至主数据库,并将主数据库的数据同步更新至从数据库。
在一个实施例中,在数据库事务的生命周期结束之后,计算机设备可以通过数据库本身的同步机制来实现数据同步更新,也可以通过备份数据库目录的方式实现数据同步更新。
在一个实施例中,计算机设备可以利用第三方工具来实现数据同步更新,第三方工具具体可以是数据库数据同步软件,例如SQL Compare(Structured Query LanguageCompare,结构化查询语言对比工具)、SQL Delta(Structured Query Language Delta,结构化查询语言对比工具)和SyncNavigator(Synchronize Navigator,同步导航器)等。
上述实施例中,通过在数据库事务的生命周期已经结束之后,将主数据库的数据同步更新至从数据库,可以确保主数据库和从数据库数据的一致性。
如图3所示,在一个具体的实施例中,数据库读写方法包括以下步骤:
S302,获取待执行的多个任务。
S304,将多个任务中相关联的至少一个任务封装成一个数据库事务,并确定数据库事务对应的事务标识。
S306,当检测到数据库事务执行指令时,根据数据库事务执行指令所携带的事务标识获取对应的数据库事务。
S308,启动数据库事务并依次执行任务。
S310,在当前所执行的任务为读操作任务时,查询与读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录。
S312,当历史操作记录包括写操作记录时,从配置对象中获取主数据库的地址。
S314,根据主数据库的地址连接主数据库。
S316,从连接的主数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
S318,在当前的任务执行完成后,根据任务对应的操作类型,更新任务所指向的目标数据表对应的历史操作记录。
S320,将主数据库的数据同步更新至从数据库。
S322,在当前所执行的任务为写操作任务时,从主数据库读取目标数据表中与任务对应的数据;写操作任务包括新增操作任务、修改操作任务和删除操作任务中的至少一种。
S324,确定与主数据库对应的多于一个的从数据库。
S326,获取各从数据库对应的权重系数。
S328,根据各从数据库对应的权重系数和当前的负载情况,从多于一个的从数据库中筛选满足空闲条件的目标从数据库。
S330,从配置对象中获取确定的目标从数据库的地址。
S332,根据目标从数据库的地址连接目标从数据库。
S334,从连接的目标从数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
上述数据库读写方法,在执行数据库事务中的读操作任务时,查询与该读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录,从而可根据历史操作记录来分配该读操作任务所需访问的数据库。当历史操作记录包括写操作记录时,在该数据库事务的生命周期内该目标数据表中的数据可能被修改,可能存在未同步至从数据库的情况,则直接从主数据库读取所需的数据。当历史操作记录未包括写操作记录时,则在该数据库事务的生命周期内该目标数据表中的数据未被修改,主数据库和从数据库所存储的数据具有一致性,可从从数据库中读取所需的数据,减轻主数据库的负载压力,使得对数据库的读写操作完全分离,实现了自适应读写分离,提高了数据库的服务性能。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种数据库读写装置,包括:事务获取模块401、事务启动模块402、记录查询模块403、第一数据读取模块404和第二数据读取模块405,其中:
事务获取模块401,用于获取待处理的数据库事务;数据库事务包括至少一个任务。
事务启动模块402,用于启动数据库事务并依次执行任务。
记录查询模块403,用于在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录。
第一数据读取模块404,用于当历史操作记录包括写操作记录时,从主数据库读取目标数据表中与任务对应的数据。
第二数据读取模块405,用于当历史操作记录未包括写操作记录时,从与主数据库对应的从数据库,读取目标数据表中与任务对应的数据。
在一个实施例中,事务获取模块401,还用于获取待执行的多个任务;将多个任务中相关联的至少一个任务封装成一个数据库事务,并确定数据库事务对应的事务标识;当检测到数据库事务执行指令时,根据数据库事务执行指令所携带的事务标识获取对应的数据库事务。
在一个实施例中,第一数据读取模块404,还用于当历史操作记录包括写操作记录时,从配置对象中获取主数据库的地址;根据主数据库的地址连接主数据库;从连接的主数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
在一个实施例中,第二数据读取模块405,还用于当历史操作记录未包括写操作记录时,确定与主数据库对应的目标从数据库;从配置对象中获取确定的目标从数据库的地址;根据目标从数据库的地址连接目标从数据库;从连接的目标从数据库中读取目标数据表,并从目标数据表中获取与任务对应的数据。
在一个实施例中,第二数据读取模块405,还用于确定与主数据库对应的多于一个的从数据库;获取各从数据库对应的权重系数;根据各从数据库对应的权重系数和当前的负载情况,从多于一个的从数据库中筛选满足空闲条件的目标从数据库。
参考图5,在一个实施例中,数据库读写装置还包括:第三数据读取模块406、记录更新模块407和数据同步模块408,其中:
第三数据读取模块406,用于在当前所执行的任务为写操作任务时,从主数据库读取目标数据表中与任务对应的数据;写操作任务包括新增操作任务、修改操作任务和删除操作任务中的至少一种。
记录更新模块407,用于在当前的任务执行完成后,根据任务对应的操作类型,更新任务所指向的目标数据表对应的历史操作记录。
数据同步模块408,用于将主数据库的数据同步更新至从数据库。
上述数据库读写装置,在执行数据库事务中的读操作任务时,查询与该读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录,从而可根据历史操作记录来分配该读操作任务所需访问的数据库。当历史操作记录包括写操作记录时,在该数据库事务的生命周期内该目标数据表中的数据可能被修改,可能存在未同步至从数据库的情况,则直接从主数据库读取所需的数据。当历史操作记录未包括写操作记录时,则在该数据库事务的生命周期内该目标数据表中的数据未被修改,主数据库和从数据库所存储的数据具有一致性,可从从数据库中读取所需的数据,减轻主数据库的负载压力,使得对数据库的读写操作完全分离,实现了自适应读写分离,提高了数据库的服务性能。
关于数据库读写装置的具体限定可以参见上文中对于数据库读写方法的限定,在此不再赘述。上述数据库读写装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图6为一个实施例中计算机设备的内部结构图,该计算机设备具体可以是上述图1中的计算机设备104。如图6所示,该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据库读写数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据库读写方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据库读写方法的步骤。此处数据库读写方法的步骤可以是上述各个实施例的数据库读写方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据库读写方法的步骤。此处数据库读写法的步骤可以是上述各个实施例的数据库读写方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (11)
1.一种数据库读写方法,其特征在于,所述方法包括:
获取待处理的数据库事务,所述数据库事务包括至少一个任务;
启动所述数据库事务并依次执行所述任务;
在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;
当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;
当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。
2.根据权利要求1所述的方法,其特征在于,所述获取待处理的数据库事务包括:
获取待执行的多个任务;
将所述多个任务中相关联的至少一个任务封装成一个数据库事务,并确定所述数据库事务对应的事务标识;
当检测到数据库事务执行指令时,根据所述数据库事务执行指令所携带的事务标识获取对应的数据库事务。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在当前所执行的任务为写操作任务时,从所述主数据库读取所述目标数据表中与所述任务对应的数据;所述写操作任务包括新增操作任务、修改操作任务和删除操作任务中的至少一种。
4.根据权利要求1所述的方法,其特征在于,所述当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据,包括:
当所述历史操作记录包括写操作记录时,从配置对象中获取主数据库的地址;
根据所述主数据库的地址连接所述主数据库;
从连接的所述主数据库中读取所述目标数据表,并从所述目标数据表中获取与所述任务对应的数据。
5.根据权利要求1所述的方法,其特征在于,所述当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据,包括:
当所述历史操作记录未包括写操作记录时,确定与所述主数据库对应的目标从数据库;
从所述配置对象中获取确定的所述目标从数据库的地址;
根据所述目标从数据库的地址连接所述目标从数据库;
从连接的所述目标从数据库中读取所述目标数据表,并从所述目标数据表中获取与所述任务对应的数据。
6.根据权利要求5所述的方法,其特征在于,所述当所述历史操作记录未包括写操作记录时,确定与所述主数据库对应的目标从数据库,包括:
确定与所述主数据库对应的多于一个的从数据库;
获取各所述从数据库对应的权重系数;
根据各所述从数据库对应的权重系数和当前的负载情况,从所述多于一个的从数据库中筛选满足空闲条件的目标从数据库。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
在当前的任务执行完成后,根据所述任务对应的操作类型,更新所述任务所指向的目标数据表对应的历史操作记录。
8.根据权利要求1至6中任一项所述的方法,其特征在于,在所述数据库事务的生命周期结束之后,所述方法还包括:
将所述主数据库的数据同步更新至所述从数据库。
9.一种数据库读写装置,其特征在于,所述装置包括:
事务获取模块,用于获取待处理的数据库事务,所述数据库事务包括至少一个任务;
事务启动模块,启动所述数据库事务并依次执行所述任务;
记录查询模块,用于在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;
第一数据读取模块,用于当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;
第二数据读取模块,用于当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910915994.2A CN110781214A (zh) | 2019-09-26 | 2019-09-26 | 数据库读写方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910915994.2A CN110781214A (zh) | 2019-09-26 | 2019-09-26 | 数据库读写方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110781214A true CN110781214A (zh) | 2020-02-11 |
Family
ID=69384776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910915994.2A Pending CN110781214A (zh) | 2019-09-26 | 2019-09-26 | 数据库读写方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110781214A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111367718A (zh) * | 2020-02-26 | 2020-07-03 | 上海达梦数据库有限公司 | 数据库的启动方法、装置、设备和存储介质 |
CN111475517A (zh) * | 2020-03-06 | 2020-07-31 | 平安科技(深圳)有限公司 | 数据更新方法、装置、计算机设备及存储介质 |
CN112100208A (zh) * | 2020-09-08 | 2020-12-18 | 北京金山云网络技术有限公司 | 一种操作请求的转发方法和装置 |
CN112115202A (zh) * | 2020-09-18 | 2020-12-22 | 北京人大金仓信息技术股份有限公司 | 集群环境下的任务分发方法和装置 |
CN112783860A (zh) * | 2021-01-11 | 2021-05-11 | 网易(杭州)网络有限公司 | 构造镜像数据库的方法、装置、存储介质及计算机设备 |
CN113190619A (zh) * | 2021-04-29 | 2021-07-30 | 优刻得科技股份有限公司 | 分布式kv数据库的数据读写方法、***、设备和介质 |
CN113296683A (zh) * | 2020-04-07 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 数据存储方法、装置、服务器和存储介质 |
WO2022068220A1 (zh) * | 2020-09-30 | 2022-04-07 | 北京金山云网络技术有限公司 | 数据处理的方法、装置、计算机设备和存储介质 |
CN115794928A (zh) * | 2023-02-03 | 2023-03-14 | 金蝶汽车网络科技有限公司 | 超文本请求处理方法、装置、计算机设备和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090210428A1 (en) * | 2008-02-19 | 2009-08-20 | Yahoo! Inc. | System and method for writing data dependent upon multiple reads in a distributed database database |
CN102591964A (zh) * | 2011-12-30 | 2012-07-18 | 北京新媒传信科技有限公司 | 数据读写分离机制的实现方法和装置 |
CN103530290A (zh) * | 2012-07-03 | 2014-01-22 | 深圳市腾讯计算机***有限公司 | 数据库间的数据迁移方法和*** |
CN104391873A (zh) * | 2014-10-29 | 2015-03-04 | 上海达梦数据库有限公司 | 数据库操作分离方法和*** |
CN107066575A (zh) * | 2017-04-11 | 2017-08-18 | 广东亿迅科技有限公司 | 用于实现数据库读写负载均衡的方法及其*** |
CN108038157A (zh) * | 2017-12-05 | 2018-05-15 | 北京星河星云信息技术有限公司 | 主从数据库读写方法、***、存储装置和服务器 |
CN110019496A (zh) * | 2017-07-27 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 数据读写方法和*** |
CN110188114A (zh) * | 2019-05-27 | 2019-08-30 | 上海达梦数据库有限公司 | 一种数据操作的优化方法、装置、***、设备和存储介质 |
-
2019
- 2019-09-26 CN CN201910915994.2A patent/CN110781214A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090210428A1 (en) * | 2008-02-19 | 2009-08-20 | Yahoo! Inc. | System and method for writing data dependent upon multiple reads in a distributed database database |
CN102591964A (zh) * | 2011-12-30 | 2012-07-18 | 北京新媒传信科技有限公司 | 数据读写分离机制的实现方法和装置 |
CN103530290A (zh) * | 2012-07-03 | 2014-01-22 | 深圳市腾讯计算机***有限公司 | 数据库间的数据迁移方法和*** |
CN104391873A (zh) * | 2014-10-29 | 2015-03-04 | 上海达梦数据库有限公司 | 数据库操作分离方法和*** |
CN107066575A (zh) * | 2017-04-11 | 2017-08-18 | 广东亿迅科技有限公司 | 用于实现数据库读写负载均衡的方法及其*** |
CN110019496A (zh) * | 2017-07-27 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 数据读写方法和*** |
CN108038157A (zh) * | 2017-12-05 | 2018-05-15 | 北京星河星云信息技术有限公司 | 主从数据库读写方法、***、存储装置和服务器 |
CN110188114A (zh) * | 2019-05-27 | 2019-08-30 | 上海达梦数据库有限公司 | 一种数据操作的优化方法、装置、***、设备和存储介质 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111367718A (zh) * | 2020-02-26 | 2020-07-03 | 上海达梦数据库有限公司 | 数据库的启动方法、装置、设备和存储介质 |
CN111367718B (zh) * | 2020-02-26 | 2023-05-02 | 上海达梦数据库有限公司 | 数据库的启动方法、装置、设备和存储介质 |
CN111475517A (zh) * | 2020-03-06 | 2020-07-31 | 平安科技(深圳)有限公司 | 数据更新方法、装置、计算机设备及存储介质 |
CN111475517B (zh) * | 2020-03-06 | 2024-02-20 | 平安科技(深圳)有限公司 | 数据更新方法、装置、计算机设备及存储介质 |
CN113296683B (zh) * | 2020-04-07 | 2022-04-29 | 阿里巴巴集团控股有限公司 | 数据存储方法、装置、服务器和存储介质 |
CN113296683A (zh) * | 2020-04-07 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 数据存储方法、装置、服务器和存储介质 |
CN112100208A (zh) * | 2020-09-08 | 2020-12-18 | 北京金山云网络技术有限公司 | 一种操作请求的转发方法和装置 |
CN112115202A (zh) * | 2020-09-18 | 2020-12-22 | 北京人大金仓信息技术股份有限公司 | 集群环境下的任务分发方法和装置 |
WO2022068220A1 (zh) * | 2020-09-30 | 2022-04-07 | 北京金山云网络技术有限公司 | 数据处理的方法、装置、计算机设备和存储介质 |
CN112783860B (zh) * | 2021-01-11 | 2023-08-08 | 网易(杭州)网络有限公司 | 构造镜像数据库的方法、装置、存储介质及计算机设备 |
CN112783860A (zh) * | 2021-01-11 | 2021-05-11 | 网易(杭州)网络有限公司 | 构造镜像数据库的方法、装置、存储介质及计算机设备 |
CN113190619B (zh) * | 2021-04-29 | 2022-12-27 | 优刻得科技股份有限公司 | 分布式kv数据库的数据读写方法、***、设备和介质 |
CN113190619A (zh) * | 2021-04-29 | 2021-07-30 | 优刻得科技股份有限公司 | 分布式kv数据库的数据读写方法、***、设备和介质 |
CN115794928A (zh) * | 2023-02-03 | 2023-03-14 | 金蝶汽车网络科技有限公司 | 超文本请求处理方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110781214A (zh) | 数据库读写方法、装置、计算机设备和存储介质 | |
CN110209650B (zh) | 数据规整迁移方法、装置、计算机设备和存储介质 | |
US7707136B2 (en) | System and method for providing high availability data | |
CN111143133B (zh) | 虚拟机备份方法和备份虚拟机恢复方法 | |
CN111078507A (zh) | 数据监控方法、***、计算机设备和存储介质 | |
CN109358874B (zh) | 业务规则更新方法、装置、计算机设备和存储介质 | |
CN111209090A (zh) | 一种云平台中虚拟机的创建方法、组件及服务器 | |
CN108763046B (zh) | 线程运行监控方法、装置、计算机设备和存储介质 | |
CN110727698A (zh) | 数据库访问方法、装置、计算机设备和存储介质 | |
CN112416710A (zh) | 用户操作的记录方法、装置、电子设备及存储介质 | |
CN111090701B (zh) | 业务请求处理方法、装置、可读存储介质和计算机设备 | |
CN110543465B (zh) | 目录操作方法、装置、计算机设备和存储介质 | |
CN113515518A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN113590643B (zh) | 基于双轨数据库的数据同步方法、装置、设备和存储介质 | |
CN114416689A (zh) | 数据迁移方法、装置、计算机设备、存储介质 | |
CN112783866B (zh) | 数据读取方法、装置、计算机设备和存储介质 | |
CN112115166B (zh) | 数据缓存方法、装置、计算机设备和存储介质 | |
CN114756293A (zh) | 业务处理方法、装置、计算机设备和存储介质 | |
CN114722261A (zh) | 一种资源的处理方法、装置、电子设备及存储介质 | |
CN114328711A (zh) | 数据处理的方法、装置、计算机设备和存储介质 | |
CN113326052A (zh) | 业务组件的升级方法、装置、计算机设备和存储介质 | |
CN109451064B (zh) | web应用的离线实现方法、装置、计算机设备和存储介质 | |
CN116643846B (zh) | 基于容器集群编排管理平台的定时任务处理方法和装置 | |
CN111507566B (zh) | 物品生产单的生成方法、装置、计算机设备和存储介质 | |
CN114443713A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200211 |
|
RJ01 | Rejection of invention patent application after publication |