数据操作方法和系统与流程

文档序号:11950785阅读:205来源:国知局
数据操作方法和系统与流程

本发明涉及数据处理技术领域,具体涉及一种数据操作方法和系统。



背景技术:

现有技术在对外提供数据时,主要是通过数据库,而不通过缓存。现有技术中的缓存是后更新缓存,即从数据库中调用数据后,才会存入缓存,下次再使用时,才会从缓存中调用该数据。

现有技术中只有部分数据才可以走缓存,且现有技术中的缓存,仅仅是保存被使用过的数据,数据库中未被使用过的数据,即便是新建、修改和删除的数据,也不会在缓存中保存。下次调用数据时,则首先在缓存中查询和调用该数据,当缓存中不存在该数据时,再到数据库中去查询和调用数据,同时将该数据同步至缓存中,当下次再使用该数据时,从缓存中去查询该数据。由于缓存大多是临时的,因此,下次在缓存中查询该数据时,有可能还会查询不到,这时,还会再去数据库中查询。这种情况下,缓存能够很快返回查询结果,但是数据库会比较慢,当这种情况较多时,数据库易崩溃。即现有技术中可能包含两次查询和调用的线程,这样,一方面会造成占用系统资源,以及降低查询和调用过程的效率;另一方面,由于数据库一般采用硬盘阵列保存数据,使得访问速度明显低于缓存,也降低了数据的调用效率。



技术实现要素:

本发明实施例的目的是提供一种在数据库中对数据进行操作,并将操作形成的数据发送至缓存,当调用数据时,直接从缓存中查找并调用数据,以提高数据访问速度和数据调用效率的数据操作方法和装置。

根据本发明的一个方面,提供一种数据操作方法,包括:基于接收到的数据操作指令,在数据库中对数据操作指令对应的数据进行操作以形成操作后数据;将所述操作后数据发送到缓存;基于接收到的数据调用指令,从所述缓存中查找并调用目标数据。

进一步,所述方法还包括:当在缓存中查找到所述目标数据时,将所述目标数据作为查找结果返回客户端;当在所述缓存中未查找到所述目标数据时,返回查询失败的消息。

进一步,当所述数据操作指令为新建数据指令时,所述在数据库中对数据操作指令对应的数据进行操作的步骤包括:基于新建数据指令,在数据库中进行新建数据操作,形成新建数据;将所述新建数据发送到缓存。

进一步,当所述数据操作指令为修改数据指令时,所述在数据库中对数据操作指令对应的数据进行操作的步骤包括:基于修改数据指令,在数据库中对修改数据指令对应的数据进行修改,形成修改后数据;将所述修改后数据发送到缓存。

进一步,当所述数据操作指令为删除数据指令时,所述在数据库中对数据操作指令对应的数据进行操作的步骤包括:基于删除数据指令,在数据库中将删除数据指令对应的数据删除;向缓存发送缓存数据删除指令;从所述缓存中删除对应数据。

根据本发明的另一个方面,提供一种数据调用装置,包括:数据库,用于基于接收到的数据操作指令,对数据操作指令对应的数据进行操作以形成操作后数据,以及将所述操作后数据发送到缓存;缓存,用于基于接收到的数据调用指令,查找并调用目标数据。

进一步,所述缓存在查找到所述目标数据时,将所述目标数据作为查找结果返回客户端;当在所述缓存中未查找到所述目标数据时,返回查询失败的消息。

进一步,当所述数据操作指令为新建数据指令时,所述数据库基于新建数据指令,进行新建数据操作以形成新建数据,并将所述新建数据发送到缓存。

进一步,当所述数据操作指令为修改数据指令时,所述数据库基于修改数据指令,对修改数据指令对应的数据进行修改以形成修改后数据,并将所述修改后数据发送到缓存。

进一步,当所述数据操作指令为删除数据指令时,所述数据库基于删除数据指令,将所述删除数据指令对应的数据删除,向缓存发送缓存数据删除指令。

进一步,所述缓存,进一步用于基于所述缓存数据删除指令,将对应数据删除。

本发明实施例通过基于数据操作指令,在数据库中对数据进行相应操作,形成操作后的数据,并将操作后的数据发送到缓存。当需要调用数据时,直接发送数据调用指令给缓存,从缓存中查找并调用数据,并由缓存将查询结果返回客户端。当缓存中查找不到与数据调用指令相应的数据时,则表示该数据不存在,不需要再去访问数据库,从而解决了现有技术中当在缓存中未查询到数据时,再到数据库中查询,由于数据库响应速度较慢,导致在数据库中未查找到数据的情况较多时,数据库易崩溃的问题。以及现有技术中可能包含两次查询和调用的线程,造成占用系统资源,降低查询和调用过程的效率的问题,和由于数据库一般采用硬盘阵列保存数据,使得访问速度明显低于缓存,也降低了数据的调用效率的问题。实现了只需要一次查询和调用过程就能完成数据调用过程,以及缓存中查找到与数据调用指令相应的数据时,缓存能够很快将数据返回,提高了数据访问速度;当缓存中查找不到与数据调用指令相应的数据时,不需要再去访问数据库,能够很快返回查询结果,提高了数据调用效率的效果。

附图说明

图1是现有技术中查询和调用数据的方法流程示意图;

图2是本发明实施例一的一种数据操作方法的流程示意图;

图3为本发明实施例二的一种数据操作方法的流程示意图;

图4为本发明实施例一的一种实施方式的流程示意图;

图5为本发明实施例一的另一种实施方式的流程示意图;

图6为本发明实施例一的又一实施方式的流程示意图;

图7为本发明实施例三的一种数据操作装置的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

图1是现有技术中查询和调用数据的方法流程示意图。

如图1所示,现有技术中查询和调用数据的方法,包括以下步骤:

S101,基于数据查询指令,在缓存中查找目标数据;其中,目标数据是与数据查询指令对应的数据;

S102,当在缓存中查找到目标数据时,则调用目标数据;当在缓存中未查找到目标数据时,则发送数据查询指令至数据库,并返回查询失败的消息;

S103,基于数据查询指令,在数据库中查询目标数据;

S104,当在数据库中查找到目标数据时,则调用目标数据,并将目标数据发送至缓存;当在数据库中未查找到目标数据时,则返回查询失败的消息。

上述步骤S101至步骤S104是现有技术中查询和调用数据的过程,现有技术中,由于是后更新缓存,即只有数据在数据库中被调用后,才会写入缓存,当下次使用数据时,再去缓存中调用数据。而由于现有技术中的缓存都是临时的,因此,当下次使用数据,再去缓存中调用数据时,有可能还会查询不到数据,此时,缓存会返回一个查询失败的消息给客户端,然后客户端再去数据库中查找和调用数据。这种情况下,就包含了两次查找和调用的过程,如果数据库中也查找不到数据,那么数据库也需要返回一个查询失败的消息给客户端。由于缓存响应快,因此,缓存能够很快返回查询结果,但是数据库响应较慢,数据库的响应相对就会滞后,当这种情况较多时,数据库就有可能出现崩溃现象。为了避免数据库出现崩溃现象,本发明采用了如下的数据操作方法和装置,以解决上述技术问题。

图2是本发明实施例一的数据操作方法的流程示意图。

如图2所示,一种数据操作方法,包括:

S201,基于接收到的数据操作指令,在数据库中对数据操作指令对应的数据进行操作以形成操作后数据;

S202,将操作后数据发送到缓存;

S203,基于接收到的数据调用指令,从缓存中查找并调用目标数据。

需要说明的是,本发明实施例中的缓存为永久性缓存。

本发明实施例一通过基于数据操作指令,在数据库中对数据进行相应操作,形成操作后的数据,并将操作后的数据发送到缓存。当需要调用数据时,直接发送数据调用指令给缓存,从缓存中查找并调用数据,并由缓存将查询结果返回客户端。由于数据的操作都是在数据库中完成,然后同步到缓存。因此,当缓存中查找不到与数据调用指令相应的数据时,则表示该数据不存在,此时,不需要再去数据库中查询,直接由缓存返回查询失败的消息,整个数据查询和调用过程至此结束。解决了现有技术中当在缓存中未查询到数据,再到数据库中查询时,由于数据库响应速度较慢,导致在数据库中未查找到数据的情况较多时,数据库易崩溃的问题。以及现有技术中可能包含两次查询和调用的线程,造成占用系统资源,降低查询和调用过程的效率的问题,和由于数据库一般采用硬盘阵列保存数据,使得访问速度明显低于缓存,也降低了数据的调用效率的问题。实现了当缓存中查找到与数据调用指令相应的数据时,缓存能够很快将数据返回,不需要再去访问数据库,提高了数据访问速度;而当缓存中查找不到与数据调用指令相应的数据时,缓存也能够很快返回查询结果,提高了数据调用效率的效果。

图3是本发明实施例二的数据操作方法的流程示意图。

如图3所示,本发明实施例二除了包含实施例一的步骤S201至步骤S203的步骤之外,还包括下述步骤:

S204,当在缓存中查找到目标数据时,将目标数据作为查找结果返回客户端;当在缓存中未查找到目标数据时,返回查询失败的消息。

其中,目标数据是指与数据调用指令对应的数据。步骤S204在具体实施时为:当从缓存中查找到与数据调用指令相应的数据时,则由缓存直接将数据返回。此时,数据查询结果为与数据调用指令相应的数据;当从缓存中查找不到与数据调用指令相应的数据时,则由缓存将数据查询结果返回,此时,数据查询结果为查询失败的消息。

其中,步骤S1中数据操作指令至少包括新建数据指令、修改数据指令或删除数据指令。应当理解的是,数据操作指令还可以为其他指令,而这些指令也都不背离本发明实施例的范围。

基于上述数据操作指令,本发明上述实施例一中步骤S101可以有不同的实施方式。

图4为本发明实施例一中步骤S101的一种实施方式的流程示意图。

如图4所示,当数据操作指令为新建数据指令时,步骤S101包括以下步骤:

S401,接收新建数据指令;

S402,基于新建数据指令,在数据库中进行新建数据操作,形成新建数据;

S403,将新建数据发送到缓存。

图5为本发明实施例一中步骤S101的另一种实施方式的流程示意图。

如图5所示,当数据操作指令为修改数据指令时,在数据库中对数据操作指令对应的数据进行操作的步骤具体为:

S501,接收修改数据指令;

S502,基于修改数据指令,在数据库中对修改数据指令对应的数据进行修改,形成修改后数据;

S503,将修改后数据发送到缓存。

图6为本发明实施例一中步骤S101的又一种实施方式的流程示意图。

如图6所示,当数据操作指令为数据删除指令时,在数据库中对数据操作指令对应的数据进行操作的步骤具体为:

S601,接收数据删除指令;

S602,基于数据删除指令,在数据库中将删除数据指令对应的数据删除;

S603,向缓存发送缓存数据删除指令;

S604,从缓存中删除对应数据。

现有技术中缓存都是临时性的,只有数据在数据库中被调用后,才会放入缓存。而本发明实施例中缓存为永久性存储,当有新建数据、修改数据和删除数据等数据操作时,在数据库中对相应数据进行操作后,再将操作后数据同步到缓存中,从而当需要查询和调用数据时,只需要一次查找和调用数据的过程,即在缓存中查找和调用,当缓存中不存在要调用的数据时,则表示该数据不存在,也不需要再去数据库中查找和调用,直接由缓存返回数据查询失败的消息给客户端,数据查找和调用的过程即结束。减少了一次查找和调用数据的过程。缓存和数据库各自分工,且互相配合,解决了现有技术中当在缓存中未查询到数据时,再到数据库中查询,由于数据库响应速度较慢,导致在数据库中未查找到数据的情况较多时,数据库易崩溃的问题。另一方面,解决了现有技术中可能包含两次查询和调用的线程,造成占用系统资源,降低查询和调用过程的效率的问题。又一方面,由于数据库一般采用硬盘阵列保存数据,使得数据库访问速度明显低于缓存,降低了数据的调用效率的问题。

上述实施例中基于数据操作指令在数据库中进行新建、修改和删除数据等操作,形成操作后数据,并将操作后数据发送至缓存时,具体可以选择实时地将操作后数据发送至缓存,也可以选择按照设定的时间间隔将操作后数据发送至缓存,还可以是选择在缓存空闲时将操作后数据发送至缓存。然而,应当理解的是,这仅是本发明实施例的一部分实施方式,其他类型的将操作后数据发送到缓存的实施方式也不背离本发明的范围。

作为一种优选实施方式,本发明实施例中可以设置多个缓存形成缓存阵列,缓存阵列为永久性缓存。

图7为本发明实施例三的一种数据操作装置一种实施方式的结构示意图。

如图7所示,一种数据操作装置,包括数据库10和缓存11;数据库10,用于基于接收到的数据操作指令,对数据操作指令对应的数据进行操作以形成操作后数据,以及将操作后数据发送到缓存11;缓存11,用于基于接收到的数据调用指令,查找并调用目标数据。其中,目标数据是指与数据调用指令对应的数据。

需要说明的是,本发明实施例中的缓存为永久性缓存。

本发明实施例三通过基于数据操作指令,在数据库中对数据进行相应操作,形成操作后的数据,并将操作后的数据发送到缓存。当需要调用数据时,直接发送数据调用指令给缓存,从缓存中查找并调用数据,并由缓存将查询结果返回客户端。由于数据的操作都是在数据库中完成,然后同步到缓存。因此,当缓存中查找不到与数据调用指令相应的数据时,则表示该数据不存在,此时,不需要再去数据库中查询,直接由缓存返回查询失败的消息,整个数据查询和调用过程至此结束。解决了现有技术中当在缓存中未查询到数据,再到数据库中查询时,由于数据库响应速度较慢,导致在数据库中未查找到数据的情况较多时,数据库易崩溃的问题。以及现有技术中可能包含两次查询和调用的线程,造成占用系统资源,降低查询和调用过程的效率的问题,和由于数据库一般采用硬盘阵列保存数据,使得访问速度明显低于缓存,也降低了数据的调用效率的问题。实现了当缓存中查找到与数据调用指令相应的数据时,缓存能够很快将数据返回,不需要再去访问数据库,提高了数据访问速度;而当缓存中查找不到与数据调用指令相应的数据时,缓存也能够很快返回查询结果,提高了数据调用效率的效果。

其中,缓存11在查找到目标数据时,将目标数据作为查找结果返回客户端;当在缓存11中未查找到目标数据时,返回查询失败的消息。

当数据操作指令为新建数据指令时,数据库10基于新建数据指令,进行新建数据操作以形成新建数据,并将新建数据发送到缓存11。

当数据操作指令为修改数据指令时,数据库10基于修改数据指令,对修改数据指令对应的数据进行修改以形成修改后数据,并将修改后数据发送到缓存11。

当数据操作指令为删除数据指令时,数据库10基于删除数据指令,将删除数据指令对应的数据删除,向缓存发送缓存数据删除指令。

缓存11,进一步用于基于缓存数据删除指令,将对应数据删除。

作为一种优选实施方式,本发明实施例中可以设置多个缓存11形成缓存阵列,缓存阵列为永久性缓存。

上述实施例中数据库基于数据操作指令进行新建、修改和删除数据等操作,形成操作后数据,并将操作后数据发送至缓存时,具体可以选择实时地将操作后数据发送至缓存,也可以选择按照设定的时间间隔将操作后数据发送至缓存,还可以是选择在缓存空闲时将操作后数据发送至缓存。然而,应当理解的是,这仅是本发明实施例的一部分实施方式,其他类型的将操作后数据发送到缓存的实施方式也不背离本发明的范围。

本发明实施例中数据库基于数据操作指令,对数据进行相应操作,形成操作后数据,并将操作后数据发送到缓存。当需要调用数据时,直接发送数据调用指令给缓存,从缓存中查找并调用数据,并由缓存将查询结果返回客户端。由于数据的操作都是在数据库中完成,然后发送到缓存。因此,当缓存中查找不到与数据调用指令相应的数据时,则表示该数据不存在,此时,不再需要去数据库中查询,直接由缓存返回查询失败的消息,整个数据查询和调用过程至此结束。解决了现有技术中当在缓存中未查询到数据时,再到数据库中查询,由于数据库响应速度较慢,导致在数据库中未查找到数据的情况较多时,数据库易崩溃的问题。以及现有技术中可能包含两次查询和调用的线程,造成占用系统资源,降低查询和调用过程的效率的问题,和由于数据库一般采用硬盘阵列保存数据,使得访问速度明显低于缓存,也降低了数据的调用效率的问题。实现了当缓存中查找到与数据调用指令相应的数据时,缓存能够很快将数据返回,不需要再去访问数据库,提高了数据访问速度;而当缓存中查找不到与数据调用指令相应的数据时,缓存也能够很快返回查询结果,提高了数据调用效率的效果。

应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1