CN111191082A - 数据管理方法、装置、计算机设备和存储介质 - Google Patents
数据管理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN111191082A CN111191082A CN201911336597.6A CN201911336597A CN111191082A CN 111191082 A CN111191082 A CN 111191082A CN 201911336597 A CN201911336597 A CN 201911336597A CN 111191082 A CN111191082 A CN 111191082A
- Authority
- CN
- China
- Prior art keywords
- record
- block
- storage array
- recording
- invalid
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013523 data management Methods 0.000 title claims abstract description 27
- 238000004590 computer program Methods 0.000 claims description 25
- 238000003491 array Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000012966 insertion method Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000002407 reforming Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种数据管理方法、装置、计算机设备和存储介质。所述方法包括:建立存储数组,根据所述存储数组,建立有效记录链表和无效记录链表;检测所述存储数组中的记录块;若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。采用本方法能够通过建立有效记录链表和无效记录链表,将存储数组中的记录块进行有序的管理,后续访问无需遍历有效记录链表和无效记录链表。
Description
技术领域
本申请涉及数据库技术领域,特别是涉及一种数据管理方法、装置、计算机设备和存储介质。
背景技术
随着数据库技术的发展,出现了数据管理技术,在相关技术中,普遍使用数组或者链表存储数据,所谓数组是有序的元素序列,是用于储存多个相同类型数据的集合。所谓链表是一种物理存储单元上非连续、非顺序的存储结构。但是,数组或者链表的数据结构的访问效率并不高,其中,链表的缺点是不支持随机读取,读取效率低下。数组虽然支持随机读取,但是对空间的利用不够灵活。而且在多层嵌套遍历的情况下,数组的读取效率还是会成为瓶颈。但是在实际的业务场景中,数据往往会需要按照多个字段排序。
针对相关技术中,存储数组访问效率低下的问题,目前尚未提出有效的解决方案。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有序管理存储数组的数据管理方法、装置、计算机设备和存储介质。
一种数据管理方法,所述方法包括:
建立存储数组,其中,所述存储数组包括多个记录块;
根据所述存储数组,建立有效记录链表和无效记录链表;
检测所述存储数组中的记录块;
若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
在其中一个实施例中,所述建立存储数组包括:
将所述存储数组中多个记录块按顺序标记顺序值。
在其中一个实施例中,所述检测所述存储数组中的记录块包括:
根据所述有效记录块的顺序值,按预设的记录规则生成对应的有效记录值;
根据所述无效记录块的顺序值,按预设的记录规则生成对应的无效记录值。
在其中一个实施例中,所述将所述有效记录链表指向所述有效记录块包括:
检测所述有效记录块的顺序值;
根据预设的顺序规则调整记录块对应的有效记录值。
在其中一个实施例中,所述将所述无效记录链表指向所述无效记录块包括:
检测所述无效记录块的顺序值;
根据预设的顺序规则调整记录块对应的无效记录值。
在其中一个实施例中,所述将所述有效记录链表指向所述有效记录块包括:
所述记录块还包括第一记录块、第二记录块和第三记录块,其中,所述第一记录块位于所述第二记录块之前,所述第三记录块位于所述第二记录块之后;有效记录值包括第一有效记录值和第二有效记录值;
所述第二记录块的第一有效记录值根据顺序值指向所述第一记录块,所述第二记录块的第二有效记录值根据顺序值指向所述第三记录块。
在其中一个实施例中,所述建立存储数组包括:
获取所述存储数组对应的下标;
根据与所述存储数组对应的下标建立红黑树索引;
根据所述红黑树索引读取所述存储数组中数据。
一种数据管理装置,所述装置包括:
数组建立模块,用于建立存储数组,其中,所述存储数组包括多个记录块;
链表建立模块,用于根据所述存储数组,建立有效记录链表和无效记录链表;
检测模块,用于检测所述存储数组中的记录块;
有效记录模块,用于若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
无效记录模块,用于若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
建立存储数组,其中,所述存储数组包括多个记录块;
根据所述存储数组,建立有效记录链表和无效记录链表;
检测所述存储数组中的记录块;
若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
建立存储数组,其中,所述存储数组包括多个记录块;
根据所述存储数组,建立有效记录链表和无效记录链表;
检测所述存储数组中的记录块;
若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
上述数据管理方法、装置、计算机设备和存储介质,通过建立有效记录链表和无效记录链表,将存储数组中的记录块进行有序的管理,后续访问无需遍历有效记录链表和无效记录链表。
附图说明
图1为一个实施例中数据管理方法的流程示意图;
图2为一个实施例中存储数组的示意图;
图3为图2存储数组其中一种存储方式的示意图;
图4为图2存储数组其中一种存储方式的示意图;
图5为本发明一实施例中数据管理方法服务器接收消息的应用环境图;
图6为图5数据管理方法服务器广播消息的应用环境图;
图7为一实施例中反演处理机制的流程示意图;
图8为一个实施例中数据管理装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据管理方法,可以应用于计算机设备中。其中,所述计算机设备可以为个人计算机、笔记本电脑、智能手机、平板电脑、便携式可穿戴设备、服务器或者多个服务器组成的服务器集群。根据存储数组建立有效记录链表和无效记录链表,检测存储数组中的记录块,将所述有效记录链表指向所述有效记录块,将所述无效记录链表指向所述无效记录块,将存储数组中的记录块进行有序的管理。
在一个实施例中,如图1所示,提供了一种数据管理方法,以该方法应用于计算机设备为例进行说明,包括以下步骤:
步骤102,建立存储数组。
其中,所述存储数组包括多个记录块.
具体地,向数据库申请存储空间,根据存储空间建立存储数组,将所述存储数组中多个记录块按顺序标记顺序值。通过提前配置可以避免频繁的释放、申请空间所带来的系统压力。在本实施例中,所述存储数组包括100个记录块,将记录块从1到100进行排序。
所述建立存储数组包括:获取所述存储数组对应的下标;根据与所述存储数组对应的下标建立红黑树索引;根据所述红黑树索引读取所述存储数组中数据。
具体地,所述存储数组使用红黑树来作为索引的存储结构。红黑树的每个结点都保存着存储数组的下标,存储的数据按照多个字段排序,满足不同的业务场景需求。每种排序的结果都保存在红黑树中。每次增加、删除、修改记录都会实时的调整树的结构,保证访问性能的稳定,支持区间索引。
在本实施例中,用户可以对红黑树结构的存储数组,进行查询操作、新增操作、修改操作以及删除。所述查询操作包括关键字查找(find方法)、节点数据下标查找(get方法)、红黑树索引查找(TableScan方法)和其他查找方式,通过查询操作对存储的数据进行查询。所述新增操作为通过插入方法(Insert方法)向存储数组中插入记录,并同时调整红黑树结构。所述修改操作采用更新方法(Update方法),根据关键字或者记录块下标,快速更新存储数组中的记录,并同时调整红黑树结构。所述删除操作采用删除方法(Delete方法),根据存储数组中的记录块下标删除记录,并同时调整红黑树结构。
所述建立存储数组还包括:设立事务处理机制。
具体地,所述建立存储数据通过设立事务处理机制,当部分数据被修改后,出现不能正常继续处理下去,通过事务处理机制将数据回滚至数据修改之前,恢复到原来状态,以保证数据的一致。
步骤104,根据所述存储数组,建立有效记录链表和无效记录链表。
具体地,将存储数组初始化,建立有效记录链表和无效记录链表。
步骤106,检测所述存储数组中的记录块。
具体地,检测所述存储数组中的记录块是否存储有数据,若记录块中存储有数据,则该记录块为有效记录块;若记录块中没有存储有数据,则该记录块为无效记录块。
所述检测所述存储数组中的记录块包括:根据所述有效记录块的顺序值,按预设的记录规则生成对应的有效记录值;根据所述无效记录块的顺序值,按预设的记录规则生成对应的无效记录值。
具体地,通过记录块具有的记录值,快速判断该记录块是否为有效记录块或无效记录块,减少判断所需的时间。在本实施例中,所述记录块中的记录值设为P,其中,有效记录值P大于或等于-1,所述无效记录值为固定值-2。检测预设的存储数组中记录块的记录值,若记录值等于-2,则为无效记录块;若记录值不等于-2,则为有效记录值。
步骤108,若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块。
所述将所述有效记录链表指向所述有效记录块包括:检测所述有效记录块的顺序值;根据预设的顺序规则调整记录块对应的有效记录值。
具体地,所述记录块包括第一记录块和与所述第一记录块相邻的第二记录块;所述第二记录块在所述第一记录块之后,根据所述顺序值将所述第二记录块的有效记录值对应所述第一记录块。更具体地,所述记录块还包括第一记录块、第二记录块和第三记录块,所述第一记录块位于所述第二记录块之前,所述第三记录块位于所述第二记录块之后。有效记录值包括第一有效记录值和第二有效记录值。所述第二记录块的第一有效记录值根据顺序值指向所述第一记录块,所述第二记录块的第二有效记录值根据顺序值指向所述第三记录块。在本实施例中,所述第一记录块、所述第二记录块和所述第三记录块的顺序值依次为1,2,3。所述第二记录块的第一有效记录值为1指向所述第一记录块,所述第二记录块的第二有效记录值为3指向所述第三记录块。所述第一记录块的第二有效记录值为2指向所述第二记录块,所述第三记录值的第一有效记录值为2指向所述第二记录块。
步骤110,若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
所述将所述无效记录链表指向所述无效记录块包括:检测所述无效记录块的顺序值;根据预设的顺序规则调整记录块对应的无效记录值。
具体地,所述记录块还包括第一记录块、第二记录块和第三记录块,所述第一记录块位于所述第二记录块之前,所述第三记录块位于所述第二记录块之后。无效记录值包括第一无效记录值和第二无效记录值。在本实施例中,所述第一记录块、所述第二记录块和所述第三记录块的顺序值依次为1,2,3。所述第一记录块、所述第二记录块和所述第三记录块的第一有效值均为-2。所述第一记录块的第二有效记录值为2指向所述第二记录块,所述第二记录块的第二有效记录值为3指向所述第三记录块。
由于存储数组中数据的删除或添加,一开始在数组中连续的有效记录块,会随着系统的运行,变得不连续。本方法通过建立有效记录链表和无效记录链表,将存储数组中的记录块进行有序的管理,后续访问无需遍历有效记录链表和无效记录链表,通过对碎片空间的管理,使得删除空间可以重复使用,提高空间利用率,也兼顾了查询的时间效率。
在具体的实施例中,如图2~4所示,分别表示存储数组无存储数据、存储数据存储有数据以及存储数组经过一段时间的新增、删除数据的存储状态。
如图2所示,在刚建立存储数组时,所述存储数组中没有存储数据,所有的记录块都属于无效记录块,无效记录链表从存储数组的第一个记录块一直只想存储数组最后一个记录块。其中,P=-2表示这个记录块是无效的。N指向下一条记录的序号。
如图3所示,当数据存入存储数组后,存储数组部分的记录块存储有数据,存储有数据的记录块为有效记录块。
无效记录链表头部的指针从0指向了1。无效记录链表的其余元素没有发生变化。
有效记录链表头部指向了第0条记录。第0条记录的P值变成-1。P值大于-2,表示此记录块为存储有数据的有效记录块。P值-1表示这是有效记录链表的第一条记录,N值变成-1,表示这是有效记录链表的最后一条记录。
如图4所示,存储数组经过一段时间的新增、删除记录之后,布局会有许多种可能,图4为其中一种可能。
无效记录链表头部的指针从0指向了1,因为后一个记录块为有效记录块,所以该无效记录块的N值为3指向下一个无效记录块。
有效记录链表头部指向了第0条记录。第0条记录的P值变成-1。P值大于-2,表示此记录块为存储有数据的有效记录块。P值-1表示这是有效记录链表的第一条记录,N值变成2,指向下一个有效记录块。
如图5~6所示,在一个实施例中,计算机设备应用本发明的数据管理方法,所述计算机设备分别为服务器和客户端。
所述服务器与所述客户端应用所述数据管理方法,拥有相同的数据结构,采用消息反演机制来确保客户端与服务器的数据一致。具体地,客户端和服务器设立消息反演机制,采用相同的消息处理方法使用相同代码,每当客户端产生一个消息,首先交给服务器处理,然后再由客户端来处理,能够获得相同消息内容。其中,所述消息包括业务消息以及构建存储数组消息。服务器和客户端采用相同的处理方式,处理相同的消息,其产生的结果肯定是一致的。在一个实施例中,一个服务器和多个客户端,当客户端1向服务器发送消息后,服务器确认没问题,会将这条消息广播给所有客户端。客户端接收消息通过消息反演机制获得消息的内容,服务器收到的消息与客户端收到的消息,消息内容、先后顺序都是相同的,因此能保证客户端的数据与服务器也是一致的。服务器保存着所有消息,可以保证当有新的客户端连上来时,客户端可以根据服务器广播的消息构建出当前的数据。
如图7所示,所述数据管理方法还包括检测业务消息的数量是否超出消息阈值,若业务消息的数量超出消息阈值,则根据当前的存储数组进行重整,并恢复运行,生成构建存储数组消息;所述业务消息的数量未超出消息阈值,则继续存储业务消息。根据业务消息的数量清理业务消息减轻服务器或客户端的负载。
所述数据管理方法还包括检测设定时间是否超出时间阈值,若设定时间超出时间阈值,则根据当前的存储数组进行重整,并恢复运行,生成构建存储数组消息;所述设定时间未超出时间阈值,则继续存储业务消息。通过定时清理业务消息减轻服务器或客户端的负载。
由于客户端都和服务端都存储有相同的数据,当服务器出现意外的时候,也可以保证数据的安全,不会丢失。客户端也可以独立的运行起来,方便用户学习和程序开发调试。所述消息也可以存储至客户端或服务器本地存储介质中,当客户端或服务器启动时,将本地存储介质中的消息进行使用,提高运行效率,无需进行远程调用。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,提供了一种数据管理装置,包括:数组建立模块210、链表建立模块220、检测模块230、有效记录模块240和无效记录模块250,其中:
所述数组建立模块210,用于建立存储数组,其中,所述存储数组包括多个记录块。
所述链表建立模块220,用于根据所述存储数组,建立有效记录链表和无效记录链表。
所述检测模块230,用于检测所述存储数组中的记录块。
所述有效记录模块240,用于若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块。
所述无效记录模块250,用于若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
所述数组建立模块210还用于将所述存储数组中多个记录块按顺序标记顺序值。
所述检测模块230还用于根据所述有效记录块的顺序值,按预设的记录规则生成对应的有效记录值;根据所述无效记录块的顺序值,按预设的记录规则生成对应的无效记录值。
所述有效记录模块240还用于检测所述有效记录块的顺序值;根据预设的顺序规则调整记录块对应的有效记录值。
所述无效记录模块250还用于检测所述无效记录块的顺序值;根据预设的顺序规则调整记录块对应的无效记录值。
所述有效记录模块240还用于所述记录块还包括第一记录块、第二记录块和第三记录块,其中,所述第一记录块位于所述第二记录块之前,所述第三记录块位于所述第二记录块之后;有效记录值包括第一有效记录值和第二有效记录值;所述第二记录块的第一有效记录值根据顺序值指向所述第一记录块,所述第二记录块的第二有效记录值根据顺序值指向所述第三记录块。
所述数组建立模块210还用于获取所述存储数组对应的下标;根据与所述存储数组对应的下标建立红黑树索引;根据所述红黑树索引读取所述存储数组中数据。
关于数据管理装置的具体限定可以参见上文中对于数据管理方法的限定,在此不再赘述。上述数据管理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据管理数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据管理方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
建立存储数组,其中,所述存储数组包括多个记录块;
根据所述存储数组,建立有效记录链表和无效记录链表;
检测所述存储数组中的记录块;
若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将所述存储数组中多个记录块按顺序标记顺序值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据所述有效记录块的顺序值,按预设的记录规则生成对应的有效记录值;
根据所述无效记录块的顺序值,按预设的记录规则生成对应的无效记录值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
检测所述有效记录块的顺序值;
根据预设的顺序规则调整记录块对应的有效记录值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
检测所述无效记录块的顺序值;
根据预设的顺序规则调整记录块对应的无效记录值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述记录块还包括第一记录块、第二记录块和第三记录块,其中,所述第一记录块位于所述第二记录块之前,所述第三记录块位于所述第二记录块之后;有效记录值包括第一有效记录值和第二有效记录值;
所述第二记录块的第一有效记录值根据顺序值指向所述第一记录块,所述第二记录块的第二有效记录值根据顺序值指向所述第三记录块。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取所述存储数组对应的下标;
根据与所述存储数组对应的下标建立红黑树索引;
根据所述红黑树索引读取所述存储数组中数据。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
建立存储数组,其中,所述存储数组包括多个记录块;
根据所述存储数组,建立有效记录链表和无效记录链表;
检测所述存储数组中的记录块;
若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将所述存储数组中多个记录块按顺序标记顺序值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据所述有效记录块的顺序值,按预设的记录规则生成对应的有效记录值;
根据所述无效记录块的顺序值,按预设的记录规则生成对应的无效记录值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
检测所述有效记录块的顺序值;
根据预设的顺序规则调整记录块对应的有效记录值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
检测所述无效记录块的顺序值;
根据预设的顺序规则调整记录块对应的无效记录值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述记录块还包括第一记录块、第二记录块和第三记录块,其中,所述第一记录块位于所述第二记录块之前,所述第三记录块位于所述第二记录块之后;有效记录值包括第一有效记录值和第二有效记录值;
所述第二记录块的第一有效记录值根据顺序值指向所述第一记录块,所述第二记录块的第二有效记录值根据顺序值指向所述第三记录块。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取所述存储数组对应的下标;
根据与所述存储数组对应的下标建立红黑树索引;
根据所述红黑树索引读取所述存储数组中数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (10)
1.一种数据管理方法,其特征在于,所述方法包括:
建立存储数组,其中,所述存储数组包括多个记录块;
根据所述存储数组,建立有效记录链表和无效记录链表;
检测所述存储数组中的记录块;
若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
2.根据权利要求1所述的方法,其特征在于,所述建立存储数组包括:
将所述存储数组中多个记录块按顺序标记顺序值。
3.根据权利要求2所述的方法,其特征在于,所述检测所述存储数组中的记录块包括:
根据所述有效记录块的顺序值,按预设的记录规则生成对应的有效记录值;
根据所述无效记录块的顺序值,按预设的记录规则生成对应的无效记录值。
4.根据权利要求3所述的方法,其特征在于,所述将所述有效记录链表指向所述有效记录块包括:
检测所述有效记录块的顺序值;
根据预设的顺序规则调整记录块对应的有效记录值。
5.根据权利要求3所述的方法,其特征在于,所述将所述无效记录链表指向所述无效记录块包括:
检测所述无效记录块的顺序值;
根据预设的顺序规则调整记录块对应的无效记录值。
6.根据权利要求4所述的方法,其特征在于,所述将所述有效记录链表指向所述有效记录块包括:
所述记录块还包括第一记录块、第二记录块和第三记录块,其中,所述第一记录块位于所述第二记录块之前,所述第三记录块位于所述第二记录块之后;有效记录值包括第一有效记录值和第二有效记录值;
所述第二记录块的第一有效记录值根据顺序值指向所述第一记录块,所述第二记录块的第二有效记录值根据顺序值指向所述第三记录块。
7.根据权利要求1所述的方法,其特征在于,所述建立存储数组包括:
获取所述存储数组对应的下标;
根据与所述存储数组对应的下标建立红黑树索引;
根据所述红黑树索引读取所述存储数组中数据。
8.一种数据管理装置,其特征在于,所述装置包括:
数组建立模块,用于建立存储数组,其中,所述存储数组包括多个记录块;
链表建立模块,用于根据所述存储数组,建立有效记录链表和无效记录链表;
检测模块,用于检测所述存储数组中的记录块;
有效记录模块,用于若所述存储数组中的记录块为有效记录块,则将所述有效记录链表指向所述有效记录块;以及
无效记录模块,用于若所述存储数组中的记录块为无效记录块,则将所述无效记录链表指向所述无效记录块。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911336597.6A CN111191082B (zh) | 2019-12-23 | 2019-12-23 | 数据管理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911336597.6A CN111191082B (zh) | 2019-12-23 | 2019-12-23 | 数据管理方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111191082A true CN111191082A (zh) | 2020-05-22 |
CN111191082B CN111191082B (zh) | 2023-09-05 |
Family
ID=70709321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911336597.6A Active CN111191082B (zh) | 2019-12-23 | 2019-12-23 | 数据管理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111191082B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416932A (zh) * | 2020-11-18 | 2021-02-26 | 青岛海尔科技有限公司 | 建立字段关联关系的方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060087945A1 (en) * | 2004-10-25 | 2006-04-27 | Samsung Electronics Co., Ltd. | Information storage medium, method of managing replacement information, recording/reproducing apparatus, and host apparatus |
CN101187901A (zh) * | 2007-12-20 | 2008-05-28 | 康佳集团股份有限公司 | 一种实现文件访问的高速缓存系统和方法 |
US20090313418A1 (en) * | 2008-06-11 | 2009-12-17 | International Business Machines Corporation | Using asymmetric memory |
CN102495788A (zh) * | 2011-11-04 | 2012-06-13 | 北京星网锐捷网络技术有限公司 | 一种嵌入式系统内存统计方法及装置 |
CN102855327A (zh) * | 2012-09-18 | 2013-01-02 | 中国石油天然气股份有限公司 | 一种小型嵌入式文件存储管理系统 |
US9081672B1 (en) * | 2013-05-30 | 2015-07-14 | Richard Michael Nemes | Methods and apparatus for information storage and retrieval using a caching technique with external-chain hashing and dynamic resource-dependent data shedding |
CN105653609A (zh) * | 2015-12-24 | 2016-06-08 | 中国建设银行股份有限公司 | 基于内存的数据处理方法及装置 |
US20170308473A1 (en) * | 2016-04-22 | 2017-10-26 | Citrix Systems, Inc. | Dynamic Block-Level Indexing for Cache with Overflow |
CN109144712A (zh) * | 2017-06-19 | 2019-01-04 | 北京信威通信技术股份有限公司 | 内存池构建、内存分配方法及装置 |
-
2019
- 2019-12-23 CN CN201911336597.6A patent/CN111191082B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060087945A1 (en) * | 2004-10-25 | 2006-04-27 | Samsung Electronics Co., Ltd. | Information storage medium, method of managing replacement information, recording/reproducing apparatus, and host apparatus |
CN101187901A (zh) * | 2007-12-20 | 2008-05-28 | 康佳集团股份有限公司 | 一种实现文件访问的高速缓存系统和方法 |
US20090313418A1 (en) * | 2008-06-11 | 2009-12-17 | International Business Machines Corporation | Using asymmetric memory |
CN102495788A (zh) * | 2011-11-04 | 2012-06-13 | 北京星网锐捷网络技术有限公司 | 一种嵌入式系统内存统计方法及装置 |
CN102855327A (zh) * | 2012-09-18 | 2013-01-02 | 中国石油天然气股份有限公司 | 一种小型嵌入式文件存储管理系统 |
US9081672B1 (en) * | 2013-05-30 | 2015-07-14 | Richard Michael Nemes | Methods and apparatus for information storage and retrieval using a caching technique with external-chain hashing and dynamic resource-dependent data shedding |
CN105653609A (zh) * | 2015-12-24 | 2016-06-08 | 中国建设银行股份有限公司 | 基于内存的数据处理方法及装置 |
US20170308473A1 (en) * | 2016-04-22 | 2017-10-26 | Citrix Systems, Inc. | Dynamic Block-Level Indexing for Cache with Overflow |
CN109144712A (zh) * | 2017-06-19 | 2019-01-04 | 北京信威通信技术股份有限公司 | 内存池构建、内存分配方法及装置 |
Non-Patent Citations (2)
Title |
---|
张宝军;潘瑞芳;: "一种面向智能芯片的快速存储管理算法" * |
张宝军;潘瑞芳;: "一种面向智能芯片的快速存储管理算法", 计算机工程, no. 10, pages 1 - 3 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416932A (zh) * | 2020-11-18 | 2021-02-26 | 青岛海尔科技有限公司 | 建立字段关联关系的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111191082B (zh) | 2023-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102392944B1 (ko) | 데이터 백업 방법, 저장 매체 및 컴퓨팅 기기 | |
EP3917115B1 (en) | Data processing method and apparatus, computer device, and storage medium | |
CN109597571B (zh) | 数据存储方法、数据读取方法、装置和计算机设备 | |
CN109460252B (zh) | 基于git的配置文件处理方法、装置和计算机设备 | |
CN112015674A (zh) | 基于多层级的缓存资源访问方法、装置和计算机设备 | |
CN112632375B (zh) | 会话信息处理方法、服务器及存储介质 | |
CN108512948B (zh) | 通讯录更新方法、装置、计算机设备和存储介质 | |
CN111190727A (zh) | 内存的异步析构方法、装置、计算机设备及存储介质 | |
CN116578746A (zh) | 对象去重方法及装置 | |
CN108389124B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN112507010B (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
CN113886496A (zh) | 区块链的数据同步方法、装置、计算机设备和存储介质 | |
CN111191082A (zh) | 数据管理方法、装置、计算机设备和存储介质 | |
CN113065887A (zh) | 资源处理方法、装置、计算机设备和存储介质 | |
CN113312309B (zh) | 快照链的管理方法、装置和存储介质 | |
CN113704027B (zh) | 文件聚合兼容方法、装置、计算机设备和存储介质 | |
CN111708795B (zh) | 对象标识生成方法、更新方法、装置、计算机设备和介质 | |
CN114020745A (zh) | 一种索引构建方法、装置、电子设备和存储介质 | |
CN109460500B (zh) | 热点事件发现方法、装置、计算机设备和存储介质 | |
CN112783866A (zh) | 数据读取方法、装置、计算机设备和存储介质 | |
CN112800123A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN112104569A (zh) | 报文数据处理方法、装置、计算机设备和存储介质 | |
US10795875B2 (en) | Data storing method using multi-version based data structure | |
CN110442447B (zh) | 基于消息队列的负载均衡方法、装置和计算机设备 | |
CN112015758B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231107 Address after: Room 120, Building 2, No. 16, Zhuantang Science and Technology Economic Block, Xihu District, Hangzhou City, Zhejiang Province, 310024 Patentee after: Zhejiang Zhigangtong Technology Co.,Ltd. Address before: 315800 No.301, Xinqi Mingzhou Road, Beilun District, Ningbo City, Zhejiang Province Patentee before: Ningbo Port Information Communication Co.,Ltd. |