CN109597818A - 数据更新方法、装置、存储介质和设备 - Google Patents
数据更新方法、装置、存储介质和设备 Download PDFInfo
- Publication number
- CN109597818A CN109597818A CN201811438673.XA CN201811438673A CN109597818A CN 109597818 A CN109597818 A CN 109597818A CN 201811438673 A CN201811438673 A CN 201811438673A CN 109597818 A CN109597818 A CN 109597818A
- Authority
- CN
- China
- Prior art keywords
- data
- updated
- request
- queue
- caching
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据更新方法、装置、存储介质和设备,该方法包括:获取前端设备发送的至少一个数据更新请求;将具有相同数据标识的数据更新请求存储到队列;对队列中的数据更新请求依次进行处理,处理包括:根据数据标识,读取数据更新请求对应的待更新数据;响应于数据更新请求,处理待更新数据;存储已处理的待更新数据到缓存;以及,判断处理的时间是否达到预定时间周期;若是,则将缓存中的待更新数据更新到数据库中,并暂停处理直到待更新数据更新到数据库的操作完成。
Description
技术领域
本发明涉及互联网数据存储领域,具体涉及一种数据更新方法、装置、存储介质和设备。
背景技术
随着互联网技术的高速发展,数据业务也越来越复杂,高并发场景尤为普遍,例如在网络云服务中,用户常常在一个文件目录里,同时上传几千个小文件,并发地对目录节点进行读取和修改。在高并发场景下不仅需要快速响应业务请求,还需要保证数据的一致性。
现有技术对于高并发场景下数据的更新和读取主要有两种方案,第一种是在事务流程中,先读取数据库数据,然后修改,再写入数据库,实现持久化。在高并发场景,对同一个数据库键值,需要不断地读取和修改,这时对每一个处理该数据键值的事务,需要进行排队依次进入,读取和修改,然后写入数据库;如果事务不排队,会造成数据库数据不一致。但是这种方案通过事务排队的方式处理数据,往往会导致性能不佳,每秒处理几百个请求。每个事务处理的延时也比较高。
第二种方案是将数据在缓存中进行处理。缓存也即数据交换的缓冲区(Cache),由于缓存的运行速度比数据库快得多,故缓存的作用就是帮助计算机更快地运行。这种方案解决了延迟高的问题。但是如果数据先写入到缓存,向用户返回成功,那么在宕机或者缓存丢失的情况下,数据是不安全的,造成数据丢失。虽然解决了延时问题,但数据可靠性得不到保障。
发明内容
为了解决上述问题。本发明提供一种数据更新方法、装置、存储介质和设备。
根据本发明的第一方面提供了一种数据更新方法,包括:获取前端设备发送的至少一个数据更新请求;将具有相同数据标识的所述数据更新请求存储到队列;对所述队列中的所述数据更新请求依次进行处理,所述处理包括:根据所述数据标识,读取所述数据更新请求对应的待更新数据;响应于所述数据更新请求,处理所述待更新数据;存储已处理的所述待更新数据到缓存;以及
判断所述处理的时间是否达到预定时间周期;若是,则将所述缓存中的所述待更新数据更新到数据库中,并暂停所述处理直到所述待更新数据更新到数据库的操作完成。
进一步地,当所述待更新数据更新到所述数据库后,向所述前端设备发送数据更新完成的响应消息。
进一步地,对所述队列中的所述数据更新请求依次进行处理进一步包括,按照先进先出的顺序读取所述队列的所述数据更新请求。
进一步地,根据所述数据标识,读取所述数据更新请求对应的待更新数据包括:
判断所述缓存中是否存在对应的待更新数据;
若是,则从所述缓存中读取对应的待更新数据;
若否,则从所述数据库中读取对应的待更新数据。
根据本发明的第二方面,提供一种数据更新装置,获取模块,用于获取前端设备发送的至少一个数据更新请求;排队模块,用于将具有相同数据标识的所述数据更新请求存储到队列;处理模块,用于对所述队列中的所述数据更新请求依次进行处理,所述处理模块包括:读取单元,用于根据所述数据标识,读取所述数据更新请求对应的待更新数据;处理单元,用于响应于所述数据更新请求,处理所述待更新数据;存储单元,用于存储已处理的所述待更新数据到缓存;以及
定时模块,用于判断所述处理的时间是否达到预定时间周期;若是,则将所述缓存中的所述待更新数据更新到数据库中,并暂停所述处理直到所述待更新数据更新到数据库的操作完成。
进一步地,当所述待更新数据更新到所述数据库后,向所述前端设备发送数据更新完成的响应消息。
进一步地,对所述队列中的所述数据更新请求依次进行处理进一步包括,按照先进先出的顺序读取所述队列的所述数据更新请求。
进一步地,其特征在于,根据所述数据标识,读取所述数据更新请求对应的待更新数据包括:
判断所述缓存中是否存在对应的待更新数据;
若是,则从所述缓存中读取对应的待更新数据;
若否,则从所述数据库中读取对应的待更新数据。
根据本发明的第三方面,还提供一种非易失性存储介质,所述非易失性存储介质具有存储在其中的指令,当所述指令被执行时,使得处理器执行上述第一方面的数据更新方法。
根据本发明的第四方面,还提供一种设备,包括存储器,存储有计算机可执行指令,处理器,所述处理器被配置为执行所述指令以实施上述第一方面的数据更新方法。
本发明实施方式与现有技术相比,主要区别及其效果在于:
本发明实施例的数据更新方法,在业务数据更新处理时,对数据库没有额外的存储依赖,降低了事务处理延时和简化***复杂度。此外,本发明实施例的数据更新方法利用延迟将更新数据写入数据库,使得能够降低数据库的写入次数,提升***整体的可承载能力。此外,通过根据数据库写入成功的结果,向前端设备发送响应消息,使得在突发宕机的场景下,缓存中的数据是可以丢失的。只要是之前已经完成的更新操作,数据都是可靠的。此外,本发明实施例的数据更新方法可以在一个进程内完成,不需要分布式事务,节约了额外的维护成本和避免了一致性风险。
附图说明
图1示出了本发明的方法的计算机终端的硬件结构框图。
图2示出了根据本发明实施例的数据更新方法的流程图。
图3示出了根据本发明实施例的数据更新装置的模块示意图。
具体实施方式
为使本发明实施例的目的和技术方案更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明实施方式,提供了一种数据更新方法的实施方式,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请方式所提供的方法实施方式可以在移动终端、计算机终端或者服务器中执行。以运行在计算机终端上为例,图1是根据本发明实施方式的数据更新方法的计算机终端的硬件结构框图。如图1所示,计算机终端100可以包括一个或多个(图中仅示出一个)处理器101(处理器101可以包括但不限于中央处理器CPU、图像处理器GPU、数字信号处理器DSP、微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于与用户交互的输入输出接口102、用于存储数据的存储器103、以及用于通信功能的传输装置104。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器103可用于存储数据库、队列、应用软件的软件程序以及模块,如本发明实施方式中的数据更新方法对应的程序指令/模块,处理器101通过运行存储在存储器103内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据更新方法。存储器103可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器103可进一步包括相对于处理器101远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置104用于经由网络接收或者发送数据,网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。上述的网络具体实例可包括计算机终端100的通信供应商提供的互联网。
在在上述运行环境下,本发明提供了如图2所示的数据更新方法。该方法可以应用于服务器中,由服务器中的处理器执行。服务器中安装有至少一个应用程序,本发明实施方式并不限定应用程序的种类,可以为***类应用程序,也可以为软件类应用程序。
图2示出了根据本发明实施例的数据更新方法200的流程图。如图2所示,该方法具体处理流程如下所述。
S210、获取前端设备发送的至少一个数据更新请求。
在本发明的实施例中,前端设备包括但不限于智能手机、平板电脑、计算机,前端设备负责发送数据更新请求到服务器。数据更新请求包括数据标识,该数据标识是数据库、缓存和队列中数据的唯一标识,例如,数据库中事务的键值。作为一个示例,数据更新请求可以通过诸如,网络接受服务器或函数调用等的数据接收模块来获取。
S220、将具有相同数据标识的数据更新请求存储到队列。
可以理解,队列是一种用于存储数据的结构,例如,堆栈、列表、哈希表等。本步骤中,队列用于存储具有相同数据标识的数据更新请求。队列可以是预先建立并常驻缓存的,也可以是获取数据更新请求时建立的,本发明对此不做限定。同时,还可以理解,可以为不同的数据标识,建立对应的队列,并且多个不同的队列可以相互独立地并行地进行以下描述的各种处理。
在并发场景中,队列可以持续存储数据更新请求,直到达到队列的最大存储空间,该存储空间可根据硬件性能确定,本发明对此不做限制。
S230、对队列中的数据更新请求依次进行处理。
作为一个示例,在时间敏感度高的并发场景中,队列可以使用先进先出(FIFO,first-in,first-out)的方法,根据数据更新请求的请求时间的先后顺序,将数据更新请求存储在队列中,队列底部的请求的请求时间比顶部的请求的请求时间更早。这样,队列中最早的请求被最先处理,然后再处理下一个最早的请求,从而保证了按照前端设备发送数据更新请求的顺序依次处理这些请求。作为另一个示例,在与请求的时间顺序无关的并发场景中,可以使用诸如互斥锁(Mutual exclusion,缩写为Mutex)的技术实现抢占排队,使得每个请求都是排队依次进行处理。下面具体描述该处理。
S231、根据数据标识,读取数据更新请求对应的待更新数据。
为了在并发场景中降低延迟,需要在缓存中对数据更新请求进行处理。具体来说,当开始处理数据更新请求时,要判断该数据更新请求对应的要更新的数据是否已经存储在缓存中,一般通过请求的数据标识在缓存中查找是否存在具有相同标识的数据,如果缓存中已经存储了要更新的数据,则只要从缓存中读取这些数据;如果缓存中没有待更新的数据,那么则需要通过接口经由总线或网络从数据库或其他存储介质读取待更新的数据到缓存中,以进行后续处理;如果数据库中也没有对应的待更新的数据,则在数据库中创建对应的目标对象后,将其读取的缓存中;或者直接在缓存中创建目标对象。
作为另一个示例,待更新数据的数据可以在最初的数据更新请求被存储到队列的同时,并行地从数据库或其他存储介质中读取到缓存中。这样在高并发场景下,能够进一步地提高请求处理速度。
S232、响应于数据更新请求,处理待更新数据。
根据数据更新请求对读取的待更新数据执行对应的数据处理操作。示例性地,数据处理操作包括交各种易的任意过程,例如,资金和库存的增减,或是商品的线上秒杀,操作还可以是对象属性的修改等。
S233、存储已处理的待更新数据到缓存。
可以理解,缓存可以是通常的内存,但根据服务器架构的设计,也可以是外部缓存,比如Redis、Mongo等数据库。当队列中的后续请求开始处理时,只需要读取缓存中前一请求处理后的待更新数据。这样,即不需要读取数据库,数据可以给下一个同样键值的请求使用,直接从缓存中获取数据,速度更快;又可以保证数据操作的串行。
根据本发明的实施例,待更新数据存储到缓存后,可以更改或返回对应的数据更新请求的状态,表明该请求的业务操作已经完成。之后,通知队列该数据更新请求的业务已经完成,队列中的后续请求可以开始处理,或者也可以是释放互斥锁。可选地,在一些对数据安全性要求相对较低,但对处理性能要求较高的场景中,此时可以进一步地向该数据更新请求对应的前端设备返回数据更新成功的响应信息。这样可以进一步提高50%的性能。
S240、判断处理的时间是否达到预定时间周期。
缓存中的数据由于没有持久化,存在丢失的风险。因此需要根据并发的请求的数量,预先设定时间周期,定时将缓存中的待更新数据写入数据库中,完成数据更新。
作为一个示例,可以在队列中的第一个或最初的数据更新请求开始被处理时,启动定时器线程等定时任务,当定时器达到预定时间周期时,通过接口将缓存中的待更新数据写入数据库或其他存储介质,以完成数据的持久化。一般来说,在高并发时,预定时间周期为微秒级。为了保证数据操作的一致性,在待更新数据写入数据库的过程中,可以暂停对队列中后续更新请求的处理,待数据库写入完成后,继续执行对数据更新的处理。一般来说,在原子操作量级,数据库写入操作所花费的时长要远大于一个请求的处理时长,因此不会出现数据冲突或不一致的情况。
可选地,预定周期内完成处理的数据更新请求可以缓存中进行等待,等待到待更新数据更新到数据库后,再向预定周期内完成处理的数据更新请求对应的所有前端设备批量地发送数据更新完成的响应消息。这样,在突发宕机的场景中,由于在数据没有持久化之前并没有告知前端设备数据更新成功的消息,则缓存中的数据是可以丢失的,而只要是之前已经完成的更新操作,表面数据已被持久化,那么数据都是可靠的。
此后,结束本流程。
在实际测试中,对于现有技术,一个键值按正常方式更新,每次都从缓存中读取和修改,修改后马上存储到数据库。测试的性能结果:每秒300次处理能力。主要耗时在排队处理、网络开销和数据库的写入开销,即1秒一共有300次的数据库修改操作。
根据本发明的实施例,一个键值按本发明的方式进行更新,测试的性能:本地调用可以达到每秒9000次处理能力,比常规做法性能好30倍。对于50ms的设定时间周期,1秒做了20次的数据库修改操作,数据库操作的数量减少了93%。
综上所述,本实施例提供的数据更新方法,在业务数据更新处理时,对数据库没有额外的存储依赖,降低了事务处理延时和简化***复杂度。此外,本发明实施例的数据更新方法利用延迟将更新数据写入数据库,使得能够降低数据库的写入次数,提升***整体的可承载能力。此外,通过根据数据库写入成功的结果,向前端设备发送响应消息,使得在突发宕机的场景下,缓存中的数据是可以丢失的。只要是之前已经完成的更新操作,数据都是可靠的。此外,本发明实施例的数据更新方法可以在一个进程内完成,不需要分布式事务,节约了额外的维护成本和避免了一致性风险。
本发明的各方法实施方式均可以以软件、磁件、固件等方式实现。不管本发明是以软件、磁件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable ArrayLogic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称“PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(Electrically Erasable Programmable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
图3是根据本发明实施例的数据更新装置300的示意性框图。该装置用于执行上述方法流程,包括:
获取模块310,用于获取前端设备发送的至少一个数据更新请求;
排队模块320,用于将具有相同数据标识的数据更新请求存储到队列;
处理模块330,用于对队列中的数据更新请求依次进行处理,处理模块包括:
读取单元331,用于根据数据标识,读取数据更新请求对应的待更新数据;
处理单元332,用于响应于数据更新请求,处理待更新数据;
存储单元333,用于存储已处理的待更新数据到缓存;以及
定时模块340,用于判断处理的时间是否达到预定时间周期;
若是,则将缓存中的待更新数据更新到数据库中,并暂停处理直到待更新数据更新到数据库的操作完成。
在一示例中,当待更新数据更新到数据库后,向前端设备发送数据更新完成的响应消息。
在一示例中,对队列中的数据更新请求依次进行处理进一步包括,按照先进先出的顺序读取队列的数据更新请求。
在一示例中,根据数据标识,读取数据更新请求对应的待更新数据包括:
判断缓存中是否存在对应的待更新数据;
若是,则从缓存中读取对应的待更新数据;
若否,则从数据库中读取对应的待更新数据。
需要说明的是,数据更新装置300可以被配置为用于执行方法200中相应的操作、动作以及过程,此处省略对这些操作、动作以及过程的描述。
综上所述,本实施例提供的数据更新装置,在业务数据更新处理时,对数据库没有额外的存储依赖,降低了事务处理延时和简化***复杂度。此外,本发明实施例的数据更新方法利用延迟将更新数据写入数据库,使得能够降低数据库的写入次数,提升***整体的可承载能力。此外,通过根据数据库写入成功的结果,向前端设备发送响应消息,使得在突发宕机的场景下,缓存中的数据是可以丢失的。只要是之前已经完成的更新操作,数据都是可靠的。此外,本发明实施例的数据更新方法可以在一个进程内完成,不需要分布式事务,节约了额外的维护成本和避免了一致性风险。
根据本发明的另一实施例,还提供一种非易失性存储介质,该非易失性存储介质具有存储在其中的指令,当该指令被执行时,使得处理器执行数据更新方法,包括:
获取前端设备发送的至少一个数据更新请求;
将具有相同数据标识的数据更新请求存储到队列;
对队列中的数据更新请求依次进行处理,处理包括:
根据数据标识,读取数据更新请求对应的待更新数据;
响应于数据更新请求,处理待更新数据;
存储已处理的待更新数据到缓存;以及
判断处理的时间是否达到预定时间周期;
若是,则将缓存中的待更新数据更新到数据库中,并暂停处理直到待更新数据更新到数据库的操作完成。
进一步地,当待更新数据更新到数据库后,向前端设备发送数据更新完成的响应消息。
进一步地,对队列中的数据更新请求依次进行处理进一步包括,按照先进先出的顺序读取队列的数据更新请求。
进一步地,根据数据标识,读取数据更新请求对应的待更新数据包括:
判断缓存中是否存在对应的待更新数据;
若是,则从缓存中读取对应的待更新数据;
若否,则从数据库中读取对应的待更新数据。
进一步的,根据本发明的另一实施例,还提供一种设备,包括存储器,存储有计算机可执行指令,处理器,处理器被配置为执行指令以实施数据更新的过程,包括:
获取前端设备发送的至少一个数据更新请求;
将具有相同数据标识的数据更新请求存储到队列;
对队列中的数据更新请求依次进行处理,处理包括:
根据数据标识,读取数据更新请求对应的待更新数据;
响应于数据更新请求,处理待更新数据;
存储已处理的待更新数据到缓存;以及
判断处理的时间是否达到预定时间周期;
若是,则将缓存中的待更新数据更新到数据库中,并暂停处理直到待更新数据更新到数据库的操作完成。
进一步地,当待更新数据更新到数据库后,向前端设备发送数据更新完成的响应消息。
进一步地,对队列中的数据更新请求依次进行处理进一步包括,按照先进先出的顺序读取队列的数据更新请求。
进一步地,根据数据标识,读取数据更新请求对应的待更新数据包括:
判断缓存中是否存在对应的待更新数据;
若是,则从缓存中读取对应的待更新数据;
若否,则从数据库中读取对应的待更新数据。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的终端设备来实现。在列举了若干终端设备的单元权利要求中,这些终端设备中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种数据更新方法,其特征在于,包括:
获取前端设备发送的至少一个数据更新请求;
将具有相同数据标识的所述数据更新请求存储到队列;
对所述队列中的所述数据更新请求依次进行处理,所述处理包括:
根据所述数据标识,读取所述数据更新请求对应的待更新数据;
响应于所述数据更新请求,处理所述待更新数据;
存储已处理的所述待更新数据到缓存;以及
判断所述处理的时间是否达到预定时间周期;
若是,则将所述缓存中的所述待更新数据更新到数据库中,并暂停所述处理直到所述待更新数据更新到数据库的操作完成。
2.根据权利要求1所述的数据更新方法,其特征在于,当所述待更新数据更新到所述数据库后,向所述前端设备发送数据更新完成的响应消息。
3.根据权利要求1所述的数据更新方法,其特征在于,对所述队列中的所述数据更新请求依次进行处理进一步包括,按照先进先出的顺序读取所述队列的所述数据更新请求。
4.根据权利要求1所述的数据更新方法,其特征在于,根据所述数据标识,读取所述数据更新请求对应的待更新数据包括:
判断所述缓存中是否存在对应的待更新数据;
若是,则从所述缓存中读取对应的待更新数据;
若否,则从所述数据库中读取对应的待更新数据。
5.一种数据更新装置,其特征在于,包括:
获取模块,用于获取前端设备发送的至少一个数据更新请求;
排队模块,用于将具有相同数据标识的所述数据更新请求存储到队列;
处理模块,用于对所述队列中的所述数据更新请求依次进行处理,所述处理模块包括:
读取单元,用于根据所述数据标识,读取所述数据更新请求对应的待更新数据;
处理单元,用于响应于所述数据更新请求,处理所述待更新数据;
存储单元,用于存储已处理的所述待更新数据到缓存;以及
定时模块,用于判断所述处理的时间是否达到预定时间周期;
若是,则将所述缓存中的所述待更新数据更新到数据库中,并暂停所述处理直到所述待更新数据更新到数据库的操作完成。
6.根据权利要求5所述的数据更新装置,其特征在于,当所述待更新数据更新到所述数据库后,向所述前端设备发送数据更新完成的响应消息。
7.根据权利要求5所述的数据更新装置,其特征在于,对所述队列中的所述数据更新请求依次进行处理进一步包括,按照先进先出的顺序读取所述队列的所述数据更新请求。
8.根据权利要求5所述的数据更新装置,其特征在于,根据所述数据标识,读取所述数据更新请求对应的待更新数据包括:
判断所述缓存中是否存在对应的待更新数据;
若是,则从所述缓存中读取对应的待更新数据;
若否,则从所述数据库中读取对应的待更新数据。
9.一种非易失性存储介质,所述非易失性存储介质具有存储在其中的指令,当所述指令被执行时,使得处理器执行如权利要求1至4中任一项所述的数据更新方法。
10.一种设备,包括存储器,存储有计算机可执行指令,处理器,所述处理器被配置为执行所述指令以实施如权利要求1至4中任一项所述的数据更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811438673.XA CN109597818A (zh) | 2018-11-28 | 2018-11-28 | 数据更新方法、装置、存储介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811438673.XA CN109597818A (zh) | 2018-11-28 | 2018-11-28 | 数据更新方法、装置、存储介质和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109597818A true CN109597818A (zh) | 2019-04-09 |
Family
ID=65959231
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811438673.XA Pending CN109597818A (zh) | 2018-11-28 | 2018-11-28 | 数据更新方法、装置、存储介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109597818A (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110134698A (zh) * | 2019-04-15 | 2019-08-16 | 平安普惠企业管理有限公司 | 数据管理方法及相关产品 |
CN110515959A (zh) * | 2019-07-25 | 2019-11-29 | 北京奇艺世纪科技有限公司 | 数据一致性实现方法、装置及可读存储介质 |
CN110543486A (zh) * | 2019-08-28 | 2019-12-06 | 北京奇艺世纪科技有限公司 | 数据变更方法、装置及服务器 |
CN110716916A (zh) * | 2019-09-02 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 资源在线管理方法、装置、计算机设备和存储介质 |
CN110727690A (zh) * | 2019-10-15 | 2020-01-24 | 刘卫立 | 一种数据更新方法 |
CN110941623A (zh) * | 2019-11-12 | 2020-03-31 | 北京达佳互联信息技术有限公司 | 数据的同步方法及装置 |
CN110955257A (zh) * | 2019-12-17 | 2020-04-03 | 深圳市道通智能航空技术有限公司 | 一种多目标传输方法、***及遥控设备、无人机 |
CN111143383A (zh) * | 2019-12-20 | 2020-05-12 | 五八有限公司 | 一种数据更新方法、装置、电子设备及存储介质 |
CN111177161A (zh) * | 2019-11-07 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算设备和存储介质 |
CN111198766A (zh) * | 2020-01-06 | 2020-05-26 | 中科驭数(北京)科技有限公司 | 数据库访问操作部署方法、数据库访问方法及装置 |
CN111459893A (zh) * | 2020-04-03 | 2020-07-28 | 北京字节跳动网络技术有限公司 | 文件处理方法、装置和电子设备 |
CN111488366A (zh) * | 2020-04-09 | 2020-08-04 | 百度在线网络技术(北京)有限公司 | 关系型数据库更新方法、装置、设备及存储介质 |
CN111782667A (zh) * | 2020-06-22 | 2020-10-16 | 成都校精灵科技有限公司 | 一种MongoDB更新数据的驱动方法、***及存储介质 |
CN111866120A (zh) * | 2020-07-17 | 2020-10-30 | 合肥移瑞通信技术有限公司 | 文件事务传输的方法与***、可读存储介质、服务器 |
CN112818021A (zh) * | 2021-02-23 | 2021-05-18 | 东莞中国科学院云计算产业技术创新与育成中心 | 数据请求处理方法、装置、计算机设备和存储介质 |
CN112860715A (zh) * | 2019-11-28 | 2021-05-28 | 北京沃东天骏信息技术有限公司 | 数据处理方法、装置、***及存储介质 |
CN112860750A (zh) * | 2021-03-11 | 2021-05-28 | 广州市网星信息技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113297232A (zh) * | 2020-07-31 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 一种基于数据库分区的数据更新方法、装置及*** |
CN113986981A (zh) * | 2021-11-11 | 2022-01-28 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种数据同步方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020156786A1 (en) * | 2001-04-24 | 2002-10-24 | Discreet Logic Inc. | Asynchronous database updates |
CN102741843A (zh) * | 2011-03-22 | 2012-10-17 | 青岛海信传媒网络技术有限公司 | 从数据库中读取数据的方法及装置 |
CN104376096A (zh) * | 2014-11-24 | 2015-02-25 | 北京京东尚科信息技术有限公司 | 基于缓冲区的异步更新的方法 |
CN104750740A (zh) * | 2013-12-30 | 2015-07-01 | 北京新媒传信科技有限公司 | 数据更新的方法及装置 |
CN105373541A (zh) * | 2014-08-22 | 2016-03-02 | 博雅网络游戏开发(深圳)有限公司 | 数据库的数据操作请求的处理方法和*** |
CN105956166A (zh) * | 2016-05-19 | 2016-09-21 | 北京京东尚科信息技术有限公司 | 数据库读写方法和读写装置 |
-
2018
- 2018-11-28 CN CN201811438673.XA patent/CN109597818A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020156786A1 (en) * | 2001-04-24 | 2002-10-24 | Discreet Logic Inc. | Asynchronous database updates |
CN102741843A (zh) * | 2011-03-22 | 2012-10-17 | 青岛海信传媒网络技术有限公司 | 从数据库中读取数据的方法及装置 |
CN104750740A (zh) * | 2013-12-30 | 2015-07-01 | 北京新媒传信科技有限公司 | 数据更新的方法及装置 |
CN105373541A (zh) * | 2014-08-22 | 2016-03-02 | 博雅网络游戏开发(深圳)有限公司 | 数据库的数据操作请求的处理方法和*** |
CN104376096A (zh) * | 2014-11-24 | 2015-02-25 | 北京京东尚科信息技术有限公司 | 基于缓冲区的异步更新的方法 |
CN105956166A (zh) * | 2016-05-19 | 2016-09-21 | 北京京东尚科信息技术有限公司 | 数据库读写方法和读写装置 |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110134698A (zh) * | 2019-04-15 | 2019-08-16 | 平安普惠企业管理有限公司 | 数据管理方法及相关产品 |
CN110515959A (zh) * | 2019-07-25 | 2019-11-29 | 北京奇艺世纪科技有限公司 | 数据一致性实现方法、装置及可读存储介质 |
CN110543486A (zh) * | 2019-08-28 | 2019-12-06 | 北京奇艺世纪科技有限公司 | 数据变更方法、装置及服务器 |
CN110543486B (zh) * | 2019-08-28 | 2022-03-04 | 北京奇艺世纪科技有限公司 | 数据变更方法、装置及服务器 |
CN110716916A (zh) * | 2019-09-02 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 资源在线管理方法、装置、计算机设备和存储介质 |
CN110727690A (zh) * | 2019-10-15 | 2020-01-24 | 刘卫立 | 一种数据更新方法 |
CN111177161A (zh) * | 2019-11-07 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算设备和存储介质 |
CN111177161B (zh) * | 2019-11-07 | 2023-08-15 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、计算设备和存储介质 |
CN110941623A (zh) * | 2019-11-12 | 2020-03-31 | 北京达佳互联信息技术有限公司 | 数据的同步方法及装置 |
CN112860715A (zh) * | 2019-11-28 | 2021-05-28 | 北京沃东天骏信息技术有限公司 | 数据处理方法、装置、***及存储介质 |
CN110955257A (zh) * | 2019-12-17 | 2020-04-03 | 深圳市道通智能航空技术有限公司 | 一种多目标传输方法、***及遥控设备、无人机 |
CN110955257B (zh) * | 2019-12-17 | 2024-02-09 | 深圳市道通智能航空技术股份有限公司 | 一种多目标传输方法、***及遥控设备、无人机 |
CN111143383B (zh) * | 2019-12-20 | 2023-07-14 | 五八有限公司 | 一种数据更新方法、装置、电子设备及存储介质 |
CN111143383A (zh) * | 2019-12-20 | 2020-05-12 | 五八有限公司 | 一种数据更新方法、装置、电子设备及存储介质 |
CN111198766B (zh) * | 2020-01-06 | 2021-02-05 | 中科驭数(北京)科技有限公司 | 数据库访问操作部署方法、数据库访问方法及装置 |
CN111198766A (zh) * | 2020-01-06 | 2020-05-26 | 中科驭数(北京)科技有限公司 | 数据库访问操作部署方法、数据库访问方法及装置 |
CN111459893A (zh) * | 2020-04-03 | 2020-07-28 | 北京字节跳动网络技术有限公司 | 文件处理方法、装置和电子设备 |
CN111459893B (zh) * | 2020-04-03 | 2023-08-22 | 北京字节跳动网络技术有限公司 | 文件处理方法、装置和电子设备 |
CN111488366A (zh) * | 2020-04-09 | 2020-08-04 | 百度在线网络技术(北京)有限公司 | 关系型数据库更新方法、装置、设备及存储介质 |
CN111782667B (zh) * | 2020-06-22 | 2024-05-17 | 成都校精灵科技有限公司 | 一种MongoDB更新数据的驱动方法、***及存储介质 |
CN111782667A (zh) * | 2020-06-22 | 2020-10-16 | 成都校精灵科技有限公司 | 一种MongoDB更新数据的驱动方法、***及存储介质 |
CN111866120A (zh) * | 2020-07-17 | 2020-10-30 | 合肥移瑞通信技术有限公司 | 文件事务传输的方法与***、可读存储介质、服务器 |
CN113297232B (zh) * | 2020-07-31 | 2024-03-01 | 阿里巴巴集团控股有限公司 | 一种基于数据库分区的数据更新方法、装置及*** |
CN113297232A (zh) * | 2020-07-31 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 一种基于数据库分区的数据更新方法、装置及*** |
CN112818021B (zh) * | 2021-02-23 | 2024-02-02 | 东莞中国科学院云计算产业技术创新与育成中心 | 数据请求处理方法、装置、计算机设备和存储介质 |
CN112818021A (zh) * | 2021-02-23 | 2021-05-18 | 东莞中国科学院云计算产业技术创新与育成中心 | 数据请求处理方法、装置、计算机设备和存储介质 |
CN112860750B (zh) * | 2021-03-11 | 2023-11-17 | 广州市网星信息技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN112860750A (zh) * | 2021-03-11 | 2021-05-28 | 广州市网星信息技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113986981A (zh) * | 2021-11-11 | 2022-01-28 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种数据同步方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109597818A (zh) | 数据更新方法、装置、存储介质和设备 | |
CN113641457B (zh) | 容器创建方法、装置、设备、介质及程序产品 | |
CN110442463B (zh) | Tee***中的数据传输方法和装置 | |
US10116746B2 (en) | Data storage method and network interface card | |
CN107066570A (zh) | 数据管理方法及装置 | |
CN111400307B (zh) | 支持远程并发访问的持久哈希表访问*** | |
CN105068817B (zh) | 将数据写入存储设备的方法及存储设备 | |
CN105447167B (zh) | 分布式***中节点缓存数据的处理方法及装置 | |
CN107704310B (zh) | 一种实现容器集群管理的方法、装置和设备 | |
US11579874B2 (en) | Handling an input/output store instruction | |
CN110149231A (zh) | 更新虚拟交换机的方法、装置、存储介质和设备 | |
CN105933380A (zh) | 一种数据传输的方法、装置及终端 | |
CN109471843A (zh) | 一种元数据缓存方法、***及相关装置 | |
CN108762668A (zh) | 一种处理写入冲突的方法及装置 | |
WO2015084506A1 (en) | System and method for managing and supporting virtual host bus adaptor (vhba) over infiniband (ib) and for supporting efficient buffer usage with a single external memory interface | |
CN110457251A (zh) | 一种多处理器间的数据通信方法及装置 | |
US10389697B1 (en) | Software container activation and throttling | |
US8407444B2 (en) | Hardware off-load garbage collection acceleration for languages with finalizers | |
CN107025064B (zh) | 一种低延迟高iops的数据访问方法 | |
US10042554B2 (en) | Increased bandwidth of ordered stores in a non-uniform memory subsystem | |
CN110716923B (zh) | 数据处理方法、装置、节点设备及存储介质 | |
CN110162415B (zh) | 用于处理数据请求的方法、服务器、装置及存储介质 | |
CN108874560B (zh) | 进行通信的方法和通信设备 | |
CN103399949B (zh) | 一种数据库存储块状态控制方法和装置 | |
CN112231290A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190409 |