一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据存储方法、装置及设备与流程

2021-11-20 02:10:00 来源:中国专利 TAG:


1.本说明书涉及数据存储技术领域,尤其涉及一种数据存储方法、装置及设备。


背景技术:

2.在嵌入式产品中一般均设置有存储介质,用于存储系统数据及用户数据等信息,例如选择快闪存储器(flash memory,简称flash)作为存储介质。
3.以存储用户数据为例,其存储方式是集中式的,即同一个用户的全部数据信息集中存储在一起,对其中部分数据修改,会引起全部数据的变动,导致数据的修改及管理不便。以flash为例,由于flash在写数据前需要先执行擦除操作,而擦除操作的最小单位是一个扇区,导致至少一个扇区的数据被擦除。如果仅需要对用户数据中几个字节的数据进行修改,而将整个扇区的数据擦除再重新写入,数据修改不便。因此,现有数据存储方式,数据的修改及管理效率较低。


技术实现要素:

4.本说明书一个或多个实施例的目的是提供一种数据存储方法、装置及设备,用以解决现有数据存储方式的数据修改及管理效率较低的问题。
5.为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
6.一方面,本说明书一个或多个实施例提供一种数据存储方法,包括:响应于第一用户发出的对目标数据的数据存储请求,获取所述目标数据;根据所述目标数据的第一数据类型,将所述目标数据划分为多个数据块;各所述数据块分别对应的所述第一数据类型不同;确定存储介质中与各所述数据块对应的第一存储区域;所述第一存储区域基于所述数据块对应的所述第一数据类型和/或数据量划分;各所述第一存储区域之间相互独立;将各所述数据块分别存储至对应的所述第一存储区域。
7.另一方面,本说明书一个或多个实施例提供一种数据存储装置,包括:数据获取模块,用于响应于第一用户发出的对目标数据的数据存储请求,获取所述目标数据;数据块划分模块,用于根据所述目标数据的第一数据类型,将所述目标数据划分为多个数据块;各所述数据块分别对应的所述第一数据类型不同;存储区域确定模块,用于确定存储介质中与各所述数据块对应的第一存储区域;所述第一存储区域基于所述数据块对应的所述第一数据类型和/或数据量划分;各所述第一存储区域之间相互独立;数据存储模块,用于将各所述数据块分别存储至对应的所述第一存储区域。
8.再一方面,本说明书一个或多个实施例提供一种数据存储设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:响应于第一用户发出的对目标数据的数据存储请求,获取所述目标数据;根据所述目标数据的第一数据类型,将所述目标数据划分为多个数据块;各所述数据块分别对应的所述第一数据类型不同;确定存储介质中与各所述数据块对应的第一存储区域;所述第一存储区域基于所述数据块对应的所述第一数据类型和/或数据量划分;各所述第一存储区域之间
相互独立;将各所述数据块分别存储至对应的所述第一存储区域。
9.再一方面,本说明书一个或多个实施例提供一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:响应于第一用户发出的对目标数据的数据存储请求,获取所述目标数据;根据所述目标数据的第一数据类型,将所述目标数据划分为多个数据块;各所述数据块分别对应的所述第一数据类型不同;确定存储介质中与各所述数据块对应的第一存储区域;所述第一存储区域基于所述数据块对应的所述第一数据类型和/或数据量划分;各所述第一存储区域之间相互独立;将各所述数据块分别存储至对应的所述第一存储区域。
10.采用本说明书一个或多个实施例的技术方案,可以根据目标数据的第一数据类型,将目标数据划分为多个数据块,各数据块分别对应不同的第一数据类型,然后确定存储介质中与各数据块对应的独立存储区域,并将各数据块分别存储至对应的第一存储区域。因此,通过数据划分及独立存储区域分别存储的方式,对任意一个数据块进行操作时,不会对其他数据造成变动和影响,降低了数据修改的成本,提高了数据的安全性和稳定性;对数据进行划分数据块后存储,同样大小的存储空间可以存储的数量更多,同时方便以数据块为单位进行管理,提高了数据的管理效率。
附图说明
11.为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
12.图1是根据本说明书一实施例的一种数据存储方法的示意性流程图;
13.图2是根据本说明书一实施例的另一种数据存储方法的示意性流程图;
14.图3是根据本说明书一实施例的存储区域的逻辑结构示意图;
15.图4是根据本说明书一实施例的一种数据存储装置的结构示意图;
16.图5是根据本说明书一实施例的一种数据存储设备的结构示意图。
具体实施方式
17.本说明书一个或多个实施例提供一种数据存储方法、装置及设备,降低了数据修改的成本,提高了数据的安全性、稳定性及管理效率。
18.为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书一个或多个实施例保护的范围。
19.图1是根据本说明书一实施例的数据存储方法的示意性流程图,如图1所示,该方法包括:
20.s102,响应于第一用户发出的对目标数据的数据存储请求,获取目标数据。
21.第一用户可以将待存储的目标数据,发送至存储介质或者直接通过输入设备输入上述存储介质。
22.s104,根据目标数据的第一数据类型,将目标数据划分为多个数据块。
23.在本实施例中可以将复杂庞大且多变的目标数据,根据一定的规则进行划分,划分成多个小的数据块,后续分别进行存储。具体地,可以根据目标数据的第一数据类型对目标数据进行划分,该第一数据类型包括固定类数据和可变类数据。固定类数据可以包括不能修改的固定信息,在存储至存储介质后不再进行修改,可变类数据可以包括能修改的信息,例如数据关联信息、数据权限信息、数据属性信息等。
24.以目标数据为用户信息数据为例,固定类数据可以是用户的身份信息,可变类数据可以是除身份信息以外的其他信息。具体地,数据关联信息可以是卡信息、密码信息、指纹信息等,数据权限信息可以是住户权限信息、管理员权限信息、访客权限信息等,数据属性信息可以是序号属性信息、数值属性信息等。
25.可以理解的是,目标数据划分得到的多个数据块,每个数据块分别对应的第一数据类型不同。
26.s106,确定存储介质中与各数据块对应的第一存储区域。
27.针对前述目标数据划分得到的多个数据块,在存储介质中相应地设置有不同的第一存储区域,且各第一存储区域之间相互独立,占用独立的存储空间。可选地,第一存储区域基于数据块对应的第一数据类型和/或数据量划分。例如,数据块对应的第一数据类型的数量为n个,则存储介质中划分的第一存储区域的数量大于等于n;数据块对应的数据量为m,则存储介质中划分的第一存储区域的存储容量大于等于m。以存储介质为快闪存储器(flash memory)为例,第一存储区域包括至少一个扇区。
28.s108,将各数据块分别存储至对应的第一存储区域。
29.通过将目标数据划分为多个数据块,并将各数据块分别存储至对应的独立存储区域,在对任意一个的数据块进行修改不会引起其他数据类型的数据块变动。
30.本说明书实施例提供的数据存储方法,可以根据目标数据的第一数据类型,将目标数据划分为多个数据块,各数据块分别对应不同的第一数据类型,然后确定存储介质中与各数据块对应的独立存储区域,并将各数据块分别存储至对应的第一存储区域。因此,通过数据划分及独立存储区域分别存储的方式,对任意一个数据块进行操作时,不会对其他数据造成变动和影响,降低了数据修改的成本,提高了数据的安全性和稳定性;对数据进行划分数据块后存储,同样大小的存储空间可以存储的数量更多,同时方便以数据块为单位进行管理,提高了数据的管理效率。
31.在一个实施例中,可以通过以下步骤确定存储介质中与各数据块对应的第一存储区域:
32.(1)根据数据块对应的第一数据类型,查找存储介质中是否存在第一数据类型对应的目标存储区域。
33.在存储介质中,可以预先已划分出多个第一存储区域,其分别对应于不同的第一数据类型;也可以未预先划分,当接收到待存储的目标数据后,再根据目标数据的情况灵活划分第一存储区域。因此,若查找存储介质中存在第一数据类型对应的目标存储区域,则将该目标存储区域确定为与数据块对应的第一存储区域;若查找存储介质中不存在第一数据
类型对应的目标存储区域,则进行第一存储区域划分。
34.(2)若存储介质中存在第一数据类型对应的目标存储区域,则将目标存储区域确定为与数据块对应的第一存储区域;若存储介质中不存在第一数据类型对应的目标存储区域,则根据数据块的数据量及第一数据类型,确定第一存储区域的存储容量;以及,根据第一存储区域的存储容量,在存储介质中划分出数据块对应的第一存储区域。
35.可以理解的是,第一存储区域用于存储至少一个数据块,第一存储区域的存储容量需要大于或等于数据块的数据量;而存储介质的总存储容量是有限的,第一存储区域的数量需要大于或等于第一数据类型的数量;结合数据块的数据量和第一数据类型的数量,可以确定第一存储区域的存储容量,进而根据第一存储区域的存储容量,在存储介质中划分出数据块对应的第一存储区域。可选地,还可以考虑存储多个用户的目标数据的需要,在确定第一存储区域的存储容量时,以存储容量大于或等于数据块的数据量与用户数量的乘积来确定。
36.在一个实施例中,如果用户需要对目标数据进行扩展,例如在目标数据中增加新数据类型的数据,可以相应地在存储介质中新增独立的存储区域。在将各数据块分别存储至对应的第一存储区域之后,上述方法还可以包括以下步骤:
37.当接收到第一用户发出的对第二数据类型的数据块的数据存储请求时,在存储介质中划分出第二数据类型对应的第二存储区域,并将第二数据类型的数据块存储至第二存储区域。其中,第二数据类型与目标数据的第一数据类型不同。可以理解的是,第二存储区域可以采用与第一存储区域相同的划分方式。可选地,第二存储区域的存储位置排列在各第一存储区域之后。
38.在一个实施例中,用户还可以对第一存储区域进行裁剪,从而将该第一存储区域存储的全部数据删除,实现对目标数据的裁剪。在将各数据块分别存储至对应的第一存储区域之后,上述方法还可以包括以下步骤:
39.当接收到第一用户发出的对第一数据类型对应的目标存储区域的删除指令时,删除目标存储区域。其中,删除第一数据类型对应的目标存储区域,并不影响其他存储区域的数据,可以节省存储空间。
40.可选地,在s106中,可以通过以下方式将各数据块分别存储至对应的第一存储区域:
41.(1)根据数据块对应的数据类型,确定数据块对应的第一存储区域的起始物理地址信息;及,根据第一存储区域中的已存储数据量,确定第一存储区域对应的空闲位置索引信息。
42.其中,通过数据块对应的数据类型可以确定其具体对应于哪个第一存储区域,进而获得该第一存储区域的起始物理地址信息。第一存储区域对应的空闲位置索引信息在每次存储介质上电后会进行一次初始化,然后每次在第一存储区域写入数据时,均对初始化的空闲位置索引信息进行更新,将空闲位置索引信息对应的值加一。例如,已存储数据量可以基于每个数据块的数据量及该第一存储区域内的数据块数量相乘得到,以每次在第一存储区域写入一名用户对应的数据块为例,该第一存储区域内的数据块数量为已存储至第一存储区域的用户数量。因此,空闲位置索引信息对应的值,可以是已存储至第一存储区域的数据块数量,或者已存储至第一存储区域的用户数量。
43.(2)根据起始物理地址信息、空闲位置索引信息及数据块的数据量,确定数据块对应的目标地址信息。
44.具体地,可以基于公式计算数据块对应的目标地址信息:目标地址信息=起始物理地址信息 数据块的数据量的大小*空闲位置索引信息对应的值。
45.(3)根据上述目标地址信息,将数据块和/或用户标识信息存储至对应的第一存储区域。
46.以目标数据的第一数据类型为可变类数据为例,可以仅将目标数据的数据块存储至对应的第一存储区域,也可以将数据块和目标数据的用户标识信息共同存储至对应的第一存储区域;以目标数据的第一数据类型为固定类数据为例,可以将目标数据的用户标识信息存储至对应的第一存储区域。上述目标数据的用户标识信息,可以包括:用户的身份证标识号或唯一编码、用户的姓名、用户的性别等。由于目标数据被划分为多个数据块,且分别存储至不同的第一存储区域,可以通过用户标识信息将该目标数据所有数据库关联起来,便于进行数据的存储、查找或删除等管理操作。
47.考虑到第一存储区域中存储有多个不同目标数据的数据块,在删除其中一个数据块时,如果将整个第一存储区域全部擦除,影响存储介质的寿命及数据管理效率,因此在本实施例中利用有效性标识实现数据块的删除过程。在数据块中设置有效性标识,该有效性标识包括有效标识或无效标识,上述方法还可以包括:
48.当接收到针对数据块的删除指令时,将数据块对应的有效性标识更新为无效标识;当第一存储区域存满数据时,则删除有效性标识为无效标识的数据块。可以理解的是,在删除有效性标识为无效标识的数据块的情况下,可以保留有效性标识为有效标识的数据块。
49.图2是根据本说明书一个具体实施例的数据存储方法的示意性流程图。在图2中以目标数据为用户信息为例,如图2所示出的,该数据存储方法包括:
50.s201,响应于第一用户发出的对用户信息的数据存储请求,获取第一用户欲存储的用户信息。
51.具体地,一个完整用户信息可以包括:姓名信息、编码信息、指纹信息、密码信息、卡信息、人脸信息、有效期信息、权限信息等。以存储介质是快闪存储器为例,如果将以上各类用户信息存储在快闪存储器中的相同位置,每次修改时都要将其所在的整个扇区擦除后再写入,比较耗时,同时欲保留数据需要搬移至备份扇区,每次数据搬移量较大。
52.s202,根据用户信息的第一数据类型,将用户信息划分为多个数据块。
53.在一个实施例中,可以根据用户信息是否会频繁变动划分成两大类:固定类数据和变动类数据。该固定类数据包括用户基本信息,该变动类数据包括:卡信息、指纹信息、密码信息、权限信息、有效信息等。各数据类型不重复,各数据块彼此独立。各数据块均存储有用户的编码信息,该编码信息是唯一的,因此各数据块可以通过该编码信息进行关联。
54.具体地,用户基本信息,可以包括用户的姓名、性别及用户属性;指纹信息可以包括:用户的编码信息、指纹编码信息、数据属性信息等;密码信息可以包括:用户的编码信息、密码编码信息、数据属性信息等;卡信息可以包括:用户编码信息、卡号信息、数据属性信息等;权限信息可以包括:用户的编码信息、开门附属功能信息、数据属性信息等;有效信息可以包括有效期信息等。
55.s203,根据数据块对应的第一数据类型和数据量,在存储介质中划分多个第一存储区域。
56.参见图3所示的存储区域的逻辑结构示意图,可以根据结合第一数据类型的数量和数据块的数据量进行规划,第一存储区域的数量大于或等于该第一数据类型的数量,第一存储区域的存储空间大于或等于数据块的数据量与可存储的用户信息数量的乘积。如图3所示,存储介质中划分的第一存储区域包括:用户信息区、密码信息区、卡信息区、指纹信息区以及有效信息区。在每个区域中分别包括一个数据存储区和一个数据备份区。例如,用户信息区包括4个扇区的用户信息存储区域以及4个扇区的用户信息备份存储区域。各存储区域与上述用户信息的数据类型一一对应,各存储区域彼此不重叠,各数据类型的数据彼此独立,从而保证各数据类型的数据在实际使用过程中的独立性。
57.s204,根据数据块对应的数据类型,确定数据块对应的第一存储区域的起始物理地址信息;及,根据第一存储区域中的已存储数据量,确定第一存储区域对应的空闲位置索引信息。
58.如图3所示,各第一存储区域分别对应于固定的起始物理地址,例如,用户信息区的起始物理地址为0x6000,密码信息区的起始物理地址为0x6800。第一存储区域中的已存储数据量可以通过用户数量与数据块数据量的乘积确定,或者根据数据块的数量与数据块数据量的乘积确定,该空闲位置索引信息对应的值可以是已存储用户数量或者已存储数据块的数量。
59.s205,根据起始物理地址信息、空闲位置索引信息及数据块的数据量,确定数据块对应的目标地址信息。
60.对于固定类数据,其只存在新增和删除两种可能的变动方式。每新增加一个用户,就在原有数据后写入该新用户的用户信息对应的数据块。以每次在第一存储区域写入一名用户对应的数据块为例,空闲位置索引信息对应的值,可以是已存储至第一存储区域的用户数量,该数据块的目标地址信息计算公式如下:
61.目标地址信息=起始物理地址信息 单个数据块数据量*已存储的用户数量。
62.若用户的编码信息从0开始依次排序,则上述已存储用户数量等于该用户的编码信息对应的值。因此,每个目标数据的数据块在第一存储区域中的地址都是根据用户的编码信息计算得到,从而可以直接定位到该目标地址然后进行数据写入。
63.对于变动类数据,每个数据块都是独立的,可以直接在空闲位置地址进行数据写入。由于第一存储区域对应的空闲位置索引信息在每次存储介质上电后会进行一次初始化,然后每次在第一存储区域写入数据时,均对初始化的空闲位置索引信息对应的值加一。空闲位置索引信息对应的值,可以是第一存储区域内的数据块数量,该数据块的目标地址信息计算公式如下:
64.目标地址信息=起始物理地址信息 单个数据块数据量*数据块数量。
65.上述存储策略最大限度地降低了存储介质的擦除次数。在读取数据块时,可以根据与上述存储过程相同的目标地址信息计算公式,确定读取的目标地址,从而可以快速的进行存储位置定位并读取数据。
66.s206,根据目标地址信息,将数据块和/或用户标识信息存储至对应的第一存储区域。具体可以参见前述实施例的相关内容。
67.s207,当接收到第一用户发出的数据查询指令时,根据该数据查询指令包括的用户的编码信息查询数据。
68.对于固定类数据,可以根据与上述存储过程相同的目标地址信息计算公式,确定读取的,然后直接访问目标地址即可获取数据。
69.对于变动类数据,可以根据查询指令确定检索条件字段进行便宜检索。例如,查询用户的卡信息,可以先确定用户的卡号,然后根据该卡号进行检索。具体地,检索策略可以是遍历或者折半查找。其中,折半查找依赖数据的有序性,因此当目标数据写入完毕后,如果目标数据的信息数量小于阈值,则不对数据进行排序,如果目标数据的信息数量大于阈值,则在空闲的时候进行一次数据排序。上述检索策略可以快速地进行数据的存储位置定位。
70.s208,当接收到第一用户发出的对第二数据类型的数据块的数据存储请求时,在存储介质中划分出第二数据类型对应的第二存储区域,并将第二数据类型的数据块存储至第二存储区域。
71.本实施例的数据存储方法支持对用户信息进行扩展,可以在用户信息中新增一个或者多个第二数据类型的数据块。可以理解的是,第二数据类型与第一数据类型不同。例如,在用户信息中增加人脸信息,则在根据用户的数据类型划分数据块时,可以将人脸信息划分为独立的人脸信息数据块。相应地,在接收到对人脸信息数据块的数据存储请求时,在存储介质中划分出第二存储区域,该第二存储区域独立于已有的第一存储区域,其存储位置可以排在已有的第一存储区域之后,不会对已经存储至第一存储区域的数据造成影响。对于应用上述数据存储方法的嵌入式产品,在产品更新换代时,可能增加某项功能,该功能对应的数据即可存储至存储介质的新划分的第二存储区域,产品增加该项功能不会对产品其他功能模块造成影响。其中,嵌入式产品可以是智能锁或者相关的门禁设备。
72.s209,当接收到第一用户发出的对第一数据类型对应的目标存储区域的删除指令时,删除该目标存储区域。
73.本实施例的数据存储方法还支持对用户信息进行缩减,可以在用户信息中删除一个或者多个第一数据类型的数据块。以应用上述数据存储方法的嵌入式产品,如果需要推出简单版本的产品,例如可以将用户信息中的卡信息和指纹信息删除,则相应地将卡信息和指纹信息对应的第一存储区域,即目标存储区域删除。上述对目标存储区域的删除操作,并不影响其他数据类型的数据,而且有利于节省存储空间。
74.本说明书实施例提供的数据存储方法,可以将用户信息按照数据类型划分为多个数据块,然后存储至存储介质中独立的存储区域。通过对用户信息划分,对各数据块的管理更加方便,且空间使用度高;在对某个数据块进行操作,不会对其他数据造成变动和影响,确保了其他数据的安全稳定;通过对数据类型的增加或删除,可以灵活扩展或裁剪用户信息包括的数据类型,有利于用户信息中数据类型的灵活组合。
75.综上,已经对本主题的特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作可以按照不同的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序,以实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
76.以上为本说明书一个或多个实施例提供的数据存储方法,基于同样的思路,本说
明书一个或多个实施例还提供一种数据存储装置。
77.图4是本说明书的一个实施例的数据存储装置的结构示意图。请参考图4,在一种软件实施方式中,数据存储装置400可包括:数据获取模块41、数据块划分模块42、存储区域确定模块43和数据存储模块44,其中,
78.数据获取模块41,用于响应于第一用户发出的对目标数据的数据存储请求,获取所述目标数据;
79.数据块划分模块42,用于根据所述目标数据的第一数据类型,将所述目标数据划分为多个数据块;各所述数据块分别对应的所述第一数据类型不同;
80.存储区域确定模块43,用于确定存储介质中与各所述数据块对应的第一存储区域;所述第一存储区域基于所述数据块对应的所述第一数据类型和/或数据量划分;各所述第一存储区域之间相互独立;
81.数据存储模块44,用于将各所述数据块分别存储至对应的所述第一存储区域。
82.本说明书实施例提供的数据存储装置,可以根据目标数据的第一数据类型,将目标数据划分为多个数据块,各数据块分别对应不同的第一数据类型,然后确定存储介质中与各数据块对应的独立存储区域,并将各数据块分别存储至对应的第一存储区域。因此,通过数据划分及独立存储区域分别存储的方式,对任意一个数据块进行操作时,不会对其他数据造成变动和影响,降低了数据修改的成本,提高了数据的安全性和稳定性;对数据进行划分数据块后存储,同样大小的存储空间可以存储的数量更多,同时方便以数据块为单位进行管理,提高了数据的管理效率。
83.在一个实施例中,所述第一数据类型包括固定类数据和可变类数据;所述可变类数据包括数据关联信息、数据权限信息、数据属性信息中的至少一项。
84.在一个实施例中,所述存储区域确定模块43,具体用于:
85.根据所述数据块对应的所述第一数据类型,查找所述存储介质中是否存在所述第一数据类型对应的目标存储区域;
86.若是,则将所述目标存储区域确定为与所述数据块对应的所述第一存储区域;
87.若否,则根据所述数据块的数据量及所述第一数据类型,确定所述第一存储区域的存储容量;以及,根据所述第一存储区域的存储容量,在所述存储介质中划分出所述数据块对应的所述第一存储区域。
88.在一个实施例中,所述装置还包括存储区域增加模块,用于:
89.当接收到所述第一用户发出的对第二数据类型的数据块的数据存储请求时,在所述存储介质中划分出所述第二数据类型对应的第二存储区域;所述第二数据类型与所述第一数据类型不同;
90.将所述第二数据类型的数据块存储至所述第二存储区域。
91.在一个实施例中,所述装置还包括存储区域删除模块,用于:
92.当接收到所述第一用户发出的对所述第一数据类型对应的目标存储区域的删除指令时,删除所述目标存储区域。
93.在一个实施例中,所述数据存储模块44,具体用于:
94.根据所述数据块对应的数据类型,确定所述数据块对应的所述第一存储区域的起始物理地址信息;及,根据所述第一存储区域中的已存储数据量,确定所述第一存储区域对
应的空闲位置索引信息;
95.根据所述起始物理地址信息、所述空闲位置索引信息及所述数据块的数据量,确定所述数据块对应的目标地址信息;
96.根据所述目标地址信息,将所述数据块和/或所述目标数据的用户标识信息存储至对应的所述第一存储区域。
97.在一个实施例中,所述数据块包括有效性标识,所述有效性标识包括有效标识或无效标识;所述装置还包括数据删除模块,用于:
98.当接收到针对所述数据块的删除指令时,将所述数据块对应的所述有效性标识更新为所述无效标识;
99.当所述第一存储区域存满数据时,则删除所述有效性标识为所述无效标识的所述数据块。
100.在一个实施例中,所述存储介质为快闪存储器,所述区域包括所述快闪存储器中的至少一个扇区。
101.本领域的技术人员应可理解,上述数据存储装置能够用来实现前文所述的数据存储方法,其中的细节描述应与前文方法部分描述类似,为避免繁琐,此处不另赘述。
102.基于同样的思路,本说明书一个或多个实施例还提供一种数据存储设备,如图5所示。数据存储设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器501和存储器502,存储器502中可以存储有一个或一个以上存储应用程序或数据。其中,存储器502可以是短暂存储或持久存储。存储在存储器502的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对数据存储设备中的一系列计算机可执行指令。更进一步地,处理器501可以设置为与存储器502通信,在数据存储设备上执行存储器502中的一系列计算机可执行指令。数据存储设备还可以包括一个或一个以上电源503,一个或一个以上有线或无线网络接口504,一个或一个以上输入输出接口505,一个或一个以上键盘506。
103.具体在本实施例中,数据存储设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对数据存储设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
104.响应于第一用户发出的对目标数据的数据存储请求,获取所述目标数据;
105.根据所述目标数据的第一数据类型,将所述目标数据划分为多个数据块;各所述数据块分别对应的所述第一数据类型不同;
106.确定存储介质中与各所述数据块对应的第一存储区域;所述第一存储区域基于所述数据块对应的所述第一数据类型和/或数据量划分;各所述第一存储区域之间相互独立;
107.将各所述数据块分别存储至对应的所述第一存储区域。
108.可选地,所述第一数据类型包括固定类数据和可变类数据;所述可变类数据包括数据关联信息、数据权限信息、数据属性信息中的至少一项。
109.可选地,计算机可执行指令在被执行时,还可以使所述处理器:
110.根据所述数据块对应的所述第一数据类型,查找所述存储介质中是否存在所述第
一数据类型对应的目标存储区域;
111.若是,则将所述目标存储区域确定为与所述数据块对应的所述第一存储区域;
112.若否,则根据所述数据块的数据量及所述第一数据类型,确定所述第一存储区域的存储容量;以及,根据所述第一存储区域的存储容量,在所述存储介质中划分出所述数据块对应的所述第一存储区域。
113.可选地,计算机可执行指令在被执行时,还可以使所述处理器:
114.当接收到所述第一用户发出的对第二数据类型的数据块的数据存储请求时,在所述存储介质中划分出所述第二数据类型对应的第二存储区域;所述第二数据类型与所述第一数据类型不同;
115.将所述第二数据类型的数据块存储至所述第二存储区域。
116.可选地,计算机可执行指令在被执行时,还可以使所述处理器:
117.当接收到所述第一用户发出的对所述第一数据类型对应的目标存储区域的删除指令时,删除所述目标存储区域。
118.可选地,计算机可执行指令在被执行时,还可以使所述处理器:
119.根据所述数据块对应的数据类型,确定所述数据块对应的所述第一存储区域的起始物理地址信息;及,根据所述第一存储区域中的已存储数据量,确定所述第一存储区域对应的空闲位置索引信息;
120.根据所述起始物理地址信息、所述空闲位置索引信息及所述数据块的数据量,确定所述数据块对应的目标地址信息;
121.根据所述目标地址信息,将所述数据块和/或所述目标数据的用户标识信息存储至对应的所述第一存储区域。
122.可选地,所述数据块包括有效性标识,所述有效性标识包括有效标识或无效标识;计算机可执行指令在被执行时,还可以使所述处理器:
123.当接收到针对所述数据块的删除指令时,将所述数据块对应的所述有效性标识更新为所述无效标识;
124.当所述第一存储区域存满数据时,则删除所述有效性标识为所述无效标识的所述数据块。
125.可选地,所述存储介质为快闪存储器,所述区域包括所述快闪存储器中的至少一个扇区。
126.本说明书一个或多个实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行上述数据存储方法,并具体用于执行:
127.响应于第一用户发出的对目标数据的数据存储请求,获取所述目标数据;
128.根据所述目标数据的第一数据类型,将所述目标数据划分为多个数据块;各所述数据块分别对应的所述第一数据类型不同;
129.确定存储介质中与各所述数据块对应的第一存储区域;所述第一存储区域基于所述数据块对应的所述第一数据类型和/或数据量划分;各所述第一存储区域之间相互独立;
130.将各所述数据块分别存储至对应的所述第一存储区域。
131.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,
或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
132.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
133.本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
134.本说明书一个或多个实施例是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
135.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
136.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
137.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
138.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
139.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
140.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
141.本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
142.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
143.以上所述仅为本说明书一个或多个实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书一个或多个实施例可以有各种更改和变化。凡在本说明书一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例的权利要求范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献