一种数据更新的方法和装置与流程

文档序号:11155402阅读:258来源:国知局
一种数据更新的方法和装置与制造工艺

本发明实施例涉及计算机数据处理领域,尤其涉及一种数据更新的方法和装置。



背景技术:

随着嵌入式产品的越来越多的应用,其短暂的使用寿命也逐步体现出来,往往一台设备用不了几年就因设备老化等原因而不得不从第一线退役下来。其中的一个重要因素就是存储芯片的老化。Flash存储芯片在其生产出来时就有着明确的擦写次数限制,市场上很多产品在其开发阶段没有充分考虑对Flash寿命的节约使用,过度擦写破坏Flash存储芯片的存储区并最终导致数据丢失、嵌入式程序无法正常的运行等致命问题。一台嵌入式设备往往有很多的硬件和软件相结合来实现其特定功能,由于Flash存储芯片的不合理利用导致整个产品的报废,最终造成了资源的极大浪费。



技术实现要素:

本发明实施例提供一种数据更新的方法和装置,用于减少Flash存储芯片的擦写次数,从而延长Flash存储芯片使用寿命,降低设备的维护成本。

本发明实施例提供了一种数据更新的方法,包括:

接收对存储芯片中的嵌入式数据库的访问请求;

确定所述嵌入式数据库中的第一数据,将所述第一数据保存至内存空间;

接收针对所述第一数据的访问请求时,读写所述内存空间中的所述第一数据;

在设定时间段之后将所述第一数据更新至所述存储芯片。

可选地,所述接收对存储芯片中的嵌入式数据库的访问请求之前,还包括:

将所述嵌入式数据库中的数据分为第一数据和第二数据,所述第一数据为非重要性和\或读写频率高的数据,所述第二数据为重要性数据。

可选地,所述接收对存储芯片中的嵌入式数据库的访问请求之后,还包括:

接收针对所述第二数据的访问请求时,读写所述存储芯片中的所述第二数据。

可选地,所述在设定时间段之后将所述第一数据更新至所述存储芯片,包括:

确定在所述设定时间段内所述第一数据是否发生变化;

若发生变化,则将发生变化的第一数据更新到所述存储芯片。

可选地,接收对存储芯片中的嵌入式数据库的访问请求,包括:

接收应用软件对所述存储芯片中的嵌入式数据库的访问请求;

在设定时间段之后将所述第一数据更新至所述存储芯片之后,还包括:

若接收到针对所述第一数据的访问请求,则读写所述内存空间中的所述第一数据;

若接收到所述应用软件执行结束指令,则将所述内存空间中的所述第一数据更新至所述存储芯片并删除所述内存空间。

相应地,本发明实施例还提供了一种数据更新的装置,包括:

接收模块,用于接收对存储芯片中的嵌入式数据库的访问请求;

保存模块,用于确定所述嵌入式数据库中的第一数据,将所述第一数据保存至内存空间;

处理模块,用于接收针对所述第一数据的访问请求时,读写所述内存空间中的所述第一数据;

更新模块,用于在设定时间段之后将所述第一数据更新至所述存储芯片。

可选地,所述接收模块还用于:

将所述嵌入式数据库中的数据分为第一数据和第二数据,所述第一数据为非重要性和\或读写频率高的数据,所述第二数据为重要性数据。

可选地,所述接收模块还用于:

接收针对所述第二数据的访问请求时,读写所述存储芯片中的所述第二数据。

可选地,所述更新模块具体用于:

确定在所述设定时间段内第一数据是否发生变化;

若发生变化,则将发生变化的第一数据更新到所述存储芯片。

可选地,接收模块具体用于:接收应用软件对所述存储芯片中的嵌入式数据库的访问请求;

处理模块还用于:若接收到针对所述第一数据的访问请求,则读写所述内存空间中的所述第一数据;

若接收到所述应用软件执行结束指令,则将所述内存空间中的所述第一数据更新至所述存储芯片并删除所述内存空间。

本发明实施例提供了一种数据更新的方法和装置,首先接收对存储芯片中的嵌入式数据库的访问请求并确定所述嵌入式数据库中的第一数据,然后将所述第一数据保存至内存空间。接收针对所述第一数据的访问请求时,读写所述内存空间中的所述第一数据,在设定时间段之后将所述第一数据更新至所述存储芯片。本发明实施例中,由于在对嵌入式数据库中的第一数据进行读写操作时,并不是每次读写操作后更新至存储芯片,而是将第一数据保存至内存空间,并且在内存空间中执行对第一数据的读写操作,设定时间段后再更新到存储芯片中,故大幅减少了对存储芯片的擦写次数,从而延长了存储芯片使用寿命,降低设备的维护成本。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种数据更新的方法的流程示意图;

图2为本发明实施例提供的另一种数据更新的方法的流程示意图;

图3为本发明实施例提供的一种数据更新的装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例中存储芯片为Flash,Flash是存储芯片的一种,通过特定的程序可以修改里面的数据。Flash存储器又称闪存,它结合了只读存储器(Read-Only Memory,简称ROM)和随机存取存储器(Random Access Memory,简称RAM)的长处,不仅具备电子可擦除可编程的性能,还可以快速读取数据,使数据不会因为断电而丢失。

图1例性示出了本发明实施例提供的一种数据更新的方法的流程,该流程由数据更新的装置执行。

如图1所示,该流程的具体步骤包括:

步骤S101,接收对存储芯片中的嵌入式数据库的访问请求。

步骤S102,确定嵌入式数据库中的第一数据,将第一数据保存至内存空间。

步骤S103,接收针对第一数据的访问请求时,读写内存空间中的第一数据。

步骤S104,在设定时间段之后将第一数据更新至存储芯片。

以应用软件为例,嵌入式数据库通常是开发人员在开发应用软件时创建的,并将与应用软件相关的数据保存至嵌入式数据库之后,将嵌入式数据库保存至Flash存储芯片中。应用软件在启动时加载嵌入式数据库并访问嵌入式数据库中的数据。应用软件在运行过程中也需要访问嵌入式数据库,或者对嵌入式数据库中的数据进行修改,因而导致Flash存储芯片的多次读写操作。在本发明实施例中,通过将嵌入式数据库中的第一数据保存至内存空间,然后从内存空间中读写第一数据,在设定时间后才将第一数据更新至存储芯片,从而减少了对存储芯片的读写次数。第一数据可以是嵌入式数据库中的所有数据,也可以是嵌入式数据库中的部分数据,还可以是根据设定规则将嵌入式数据库中的数据进行一定的划分。

可选的,在步骤S102中,确定嵌入式数据库中的第一数据之前,将嵌入式数据库中的数据分为第一数据和第二数据,第一数据为非重要性和\或读写频率高的数据,第二数据为重要性数据,如实时同步要求高的数据。应用软件运行时创建内存空间,并将嵌入式数据库中的第一数据保存至内存空间。此实施例可以使得应用软件中的非重要数据在存储芯片中的读写次数减少,一方面延长了存储芯片的使用时间,另一方面也降低了对内存空间的要求。

可选的,本发明实施例中,为了保证第二数据不发生意外丢失,第二数据不能保存在内存空间中。在接收针对第二数据的访问请求时,直接在Flash存储芯片中读写第二数据,第二数据即为重要性数据。此实施例中确保了重要数据的及时更新及不丢失。

在步骤S103和步骤S104,应用软件在运行期间,需要对第一数据进行访问时,在内存空间中读写第一数据。在设定时间段之后将第一数据更新至Flash存储芯片。设定的时间段可根据具体情况设定。将第一数据更新至Flash存储芯片后,若后续应用软件仍在继续运行,则继续在内存空间中读写第一数据,并以设定时间段为周期循环更新内存空间中的第一数据,直至应用软件执行结束指令时结束循环,并将内存空间中的第一数据更新至Flash存储芯片并删除内存空间。具体实施中,还可以在外部配置嵌入式数据库的参数时结束循环,将内存空间中的第一数据更新至Flash存储芯片并删除内存空间。

由于在创建嵌入式数据库时便将数据库中的数据进行分类,并在程序运行时将非重要性和\或读写频率高的数据保存至内存空间,故在内存空间中对非重要性和\或读写频率高的数据进行读写,经过多次读写后才将内存空间中的数据更新至Flash存储芯片,从而减少了Flash存储芯片的擦写次数,延长了Flash存储芯片的使用寿命。

可选地,在设定时间段之后将第一数据更新至Flash存储芯片具体为:首先确定在设定时间段内第一数据是否发生变化。若第一数据发生变化,则将发生变化的第一数据更新到Flash存储芯片。例如,设定内存空间中原始第一数据为A、B、C、D、E,设定时间段内数据A变为数据a,之后又变为a1,数据C变为数据c,则将数据a1和c更新至Flash存储芯片,数据B、D、E不需要更新。若第一数据没有发生变化,则不需要执行将第一数据更新到Flash存储芯片的操作,例如设定内存空间中原始第一数据为A、B、C、D、E,设定时间段后数据A首先变为数据a,之后又从数据a变为数据A,由此在设定时间段内第一数据为A、B、C、D、E没有发生变化,故不需要执行将第一数据更新到Flash存储芯片的操作。由上述实施例可知,在程序运行期间,非重要性和\或读写频率高的数据会进行多次读写,并且在多次读写后会发生多次变换,有时也会出现数据发生多次变化后变回原始数据的情况。若每次对非重要性和\或读写频率高的数据进行读写后更新至Flash存储芯片,则需要多次擦写Flash存储芯片,这样一方面保存的数据意义不大,另一方面浪费了Flash存储芯片的擦写次数。故设定时间段后将内存空间中发生变化的第一数据更新到Flash存储芯片能大幅较少Flash存储芯片的擦写次数,延长Flash存储芯片的使用寿命。

为了更好的解释本发明实施例,下面通过具体的实施场景描述本发明实施例提供的一种数据更新的方法的流程。

如图2所示,该方法包括以下步骤:

步骤S201,将嵌入式数据库中的数据分为第一数据和第二数据。

步骤S202,应用软件加载嵌入式数据库。

步骤S203,创建内存空间并将第一数据保存至内存空间。

步骤S204,判断第一数据是否发生更新,若是执行步骤S205,否则执行步骤S207。

步骤S205,在内存空间中更新第一数据。

步骤S206,设定时间段或特定事件触发后将内存空间的数据更新到Flash存储芯片。

步骤S207,判断第二数据是否发生更新,若是执行步骤S208,否则执行步骤S209。

步骤S208,在Flash存储芯片中直接更新第二数据。

步骤S209,不执行将数据更新到Flash存储芯片的操作。

从上述内容可以看出,本发明实施例提供了一种数据更新的方法和装置,首先接收对存储芯片中的嵌入式数据库的访问请求并确定所述嵌入式数据库中的第一数据,然后将所述第一数据保存至内存空间。接收针对所述第一数据的访问请求时,读写所述内存空间中的所述第一数据,在设定时间段之后将所述第一数据更新至所述存储芯片。本发明实施例中,由于在对嵌入式数据库中的第一数据进行读写操作时,并不是每次读写操作后更新至Flash存储芯片,而是将第一数据保存至内存空间,并且在内存空间中执行对第一数据的读写操作,设定时间段后再更新到Flash存储芯片中,故大幅减少了对Flash存储芯片的擦写次数,从而延长了Flash存储芯片使用寿命,降低设备的维护成本。

基于相同构思,图3示例性的示出了本发明实施例提供的一种数据更新的装置的结构,该装置可以执行数据更新的方法的流程。

如图3所示,该装置包括:

接收模块301,用于接收对存储芯片中的嵌入式数据库的访问请求;

保存模块302,用于确定所述嵌入式数据库中的第一数据,将所述第一数据保存至内存空间;

处理模块303,用于接收针对所述第一数据的访问请求时,读写所述内存空间中的所述第一数据;

更新模块304,用于在设定时间段之后将所述第一数据更新至所述存储芯片。

可选地,所述接收模块301还用于:

将所述嵌入式数据库中的数据分为第一数据和第二数据,所述第一数据为非重要性和\或读写频率高的数据,所述第二数据为重要性数据。

可选地,所述接收模块301还用于:

接收针对所述第二数据的访问请求时,读写所述存储芯片中的所述第二数据。

可选地,所述更新模块304具体用于:

确定在所述设定时间段内所述第一数据是否发生变化;

若发生变化,则将发生变化的第一数据更新到所述存储芯片。

可选地,接收模块301具体用于:接收应用软件对所述存储芯片中的嵌入式数据库的访问请求;

处理模块303还用于:若接收到针对所述第一数据的访问请求,则读写所述内存空间中的所述第一数据;

若接收到所述应用软件执行结束指令,则将所述内存空间中的所述第一数据更新至所述存储芯片并删除所述内存空间。

从上述内容可以看出,本发明实施例提供了一种数据更新的方法和装置,首先接收对存储芯片中的嵌入式数据库的访问请求并确定所述嵌入式数据库中的第一数据,然后将所述第一数据保存至内存空间。接收针对所述第一数据的访问请求时,读写所述内存空间中的所述第一数据,在设定时间段之后将所述第一数据更新至所述存储芯片。本发明实施例中,由于在对嵌入式数据库中的第一数据进行读写操作时,并不是每次读写操作后更新至Flash存储芯片,而是将第一数据保存至内存空间,并且在内存空间中执行对第一数据的读写操作,设定时间段后再更新到Flash存储芯片中,故大幅减少了对Flash存储芯片的擦写次数,从而延长了Flash存储芯片使用寿命,降低设备的维护成本。

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

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

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

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

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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