CN103092730A - 一种信息存储与读取方法 - Google Patents

一种信息存储与读取方法 Download PDF

Info

Publication number
CN103092730A
CN103092730A CN2013100362845A CN201310036284A CN103092730A CN 103092730 A CN103092730 A CN 103092730A CN 2013100362845 A CN2013100362845 A CN 2013100362845A CN 201310036284 A CN201310036284 A CN 201310036284A CN 103092730 A CN103092730 A CN 103092730A
Authority
CN
China
Prior art keywords
information
file
storage file
information storage
recording
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
Application number
CN2013100362845A
Other languages
English (en)
Other versions
CN103092730B (zh
Inventor
杨帆
庞浩
张长江
马永武
王振举
张涛
侯高雷
邢新超
王文超
李如坤
刘磊磊
许保太
姜会平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
Xuji Group Co Ltd
State Grid Tianjin Electric Power Co Ltd
Henan Xuji Instrument Co Ltd
Original Assignee
State Grid Corp of China SGCC
Xuji Group Co Ltd
Henan Xuji Instrument Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Xuji Group Co Ltd, Henan Xuji Instrument Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201310036284.5A priority Critical patent/CN103092730B/zh
Publication of CN103092730A publication Critical patent/CN103092730A/zh
Application granted granted Critical
Publication of CN103092730B publication Critical patent/CN103092730B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种信息存储与读取方法,采用一个文件对信息进行循环存储的方式,首先设定信息存储文件的最大存储量,并将待存储信息作为一条信息记录进行存储,每条信息记录存储时按照逐条加1的方式编号,当信息存储文件中存储的信息记录达到其最大存储量时,就删除最旧的历史信息,并将新的信息记录存储在删除的最旧的历史信息记录对应的存储位置,如果没有超出其最大存储量,则直接将该信息记录存储在文件中相应的位置即可,这种循环存储的方式避免了文件存储量的无限增长和文件碎片的产生,而且通过校验保证了存储信息的正确性,同时基于信息文件备份,实现了***掉电等故障情况下受损信息的有效恢复。

Description

一种信息存储与读取方法
技术领域
本发明涉及一种信息存储与读取方法。
背景技术
随着信息化的程度越来越高,通过各种通信介质传播的数据越来越多,对信息存储的可靠性、有效性、可读性都要求越来越高。在一些智能终端设备中,往往需要存储一些具有很强时效性的信息,这些信息在不断更新并需要能够保存。同时,这些智能终端设备的存储资源有限,如果不加限制的存储将导致内存崩溃。目前,已有的对这类信息进行存储和读取的方法主要有数据库方式和文件方式两种。
基于数据库方式,可以直接利用数据库驱动程序管理信息,实现存储、删除和读取功能。但数据库软件占用资源量大,其访问速度受到CPU性能限制,其运行还会影响智能终端设备的即时响应和实时控制处理,大大降低了其它功能的性能。
基于文件存储方式,如果只是简单添加信息数据,对大量时变信息存储时,会导致文件增长,如果存储空间溢出,会导致***崩溃,如果采用多个文件分别管理每条信息,通过旧信息文件的删除,释放空间,一方面文件过多,自动命名和管理逻辑比较复杂,另一方面多个文件建立、删除和双备份处理过程如果受到***掉电等干扰,***会积累文件碎片,导致***运行不稳定。
发明内容
本发明的目的是提供一种信息存储与读取方法,用以解决现有信息存储方式管理逻辑复杂、***运行不稳定的问题。
为实现上述目的,本发明的方案是:一种信息存储方法,步骤如下:
(1)设定信息存储文件中存储的信息记录至少包括如下属性:信息编号、信息内容和信息存储位置序号,将待存入信息存储文件中的信息打包为所述信息记录的形式,所述信息编号为每条信息记录在信息存储文件中按照逐条加1的方式进行的顺序编号,所述信息内容为用户输入的信息数据,所述信息存储位置序号是对信息记录在信息存储文件中存储位置的顺序编号;
(2)判断信息存储文件中已存储的信息记录是否已达到其所能存储的最大信息记录条数;
(3)如果否,则将待存入信息存储文件的信息记录写入信息存储文件中相应的存储位置,并将其信息存储位置序号和信息编号分别加1,如果是,则删除信息存储文件存储的信息记录中信息编号最小的那条信息记录,将待存入信息存储文件的信息记录写入删除的那条信息记录对应的存储位置,其信息存储位置序号等于删除的信息记录对应的信息存储位置序号,信息编号加1;
(4)在信息记录存储到信息存储文件后,计算信息存储文件的校验码,将该校验码写入到信息存储文件中;
(5)将信息记录同时备份至信息备份文件中。
进一步地,判断信息存储文件中已存储的信息记录是否已达到其所能存储的最大信息记录条数的方法为:获取信息存储文件中已存储的信息记录的信息编号的最大值Nmax和最小值Nmin,M为信息存储文件能存储的最大信息记录条数,若Nmax-Nmin≤M-2,则没有达到最大信息记录条数,如果Nmax-Nmin>M-2,则达到了最大信息记录条数。
进一步地,所述信息记录属性还包括信息长度,所述信息长度为用户输入的信息数据的总字节数,该总字节数不得超过用户定义的最大信息长度。
本发明还提供一种信息读取方法,步骤如下:
(1)当对信息进行读取时,首先检验信息存储文件的校验码,如果信息存储文件正常且校验码正确,则继续读取信息,进入步骤(2);如果信息存储文件损坏或校验码错误,将信息备份文件中信息记录重新恢复至信息存储文件中;
(2)根据输入的信息存储文件中信息的存储位置序号,搜索该存储位置序号对应的信息记录,如果存在对应的信息记录,则读取并输出该信息记录的信息,并且输出读取成功的状态指示;如果不存在对应的信息记录时,则无信息输出,并且输出读取失败的状态指示。
本发明达到的有益效果:本发明采用一个文件对信息进行循环存储的方式,当信息存储文件存储的信息记录达到其最大存储量时,就删除最旧的历史信息,并将新的信息记录存储在相应的位置,避免了文件存储量的无限增长和文件碎片的产生。
而且,本发明通过校验保证了存储信息的正确性,同时基于信息文件备份,实现了***掉电等故障情况下受损信息的有效恢复,通过建立信息存储管理体系,也方便信息的读取,节省CPU运行资源,提高读取速度和可靠性。
附图说明
图1是信息记录存储流程图;
图2是信息记录备份恢复流程图。
具体实施方式
下面结合附图对本发明做进一步详细的说明。
本发明的信息存储方法实施例:
针对信息存储的具体需要,建立数据的循环存储管理***,同时具有数据校验、文件备份和恢复功能,实现信息的可靠存储,该方法包含对信息的循环存储与读取,如图1所示,在对信息进行循环存储时,步骤如下:
步骤1,将用户输入的信息数据打包为一条待存储的信息记录;每条信息记录包括信息编号、信息内容、信息长度、信息存储位置共4项数据;其中,信息编号的数据类型为无符号整数,信息记录按照信息编号逐条增1的顺序存储;信息内容为用户输入的信息数据;信息长度为用户输入的信息数据的总字节数,总字节数不得超过用户定义的最大信息长度;信息存储位置的数据类型为无符号整数,用于记录信息记录在信息存储文件中的存储位置;
步骤2,获取信息存储文件中已存储的信息记录的最大信息编号值Nmax与最小信息编号值Nmin,M为预定义的最大信息存储位置序号,N0为当前信息存储位置序号,如果(Nmax-Nmin)小于等于(M-2),则将步骤1中待写入的信息记录的信息编号置为(Nmax+1),并将该信息记录写入信息存储文件中N0+1对应的存储位置;如果(Nmax-Nmin)大于(M-2),则首先将信息编号为Nmin的信息记录删除,然后将步骤1中待写入的信息记录的信息编号置为(Nmax+1),并将该条信息记录写入信息存储文件中Nmin对应的存储位置;写入信息记录完成后,获取当前信息存储文件的存储位置编号,并将当前文件存储位置编号返回;
步骤3,计算信息存储文件的校验值,并将校验值写到信息存储文件的前N个字节中,其中N为非负整数,信息存储文件的前N个字节为预留出来的存储空间,用以保存文件的校验值;
步骤4,将信息记录备份至信息备份文件中,当信息存储文件损坏时,将信息备份文件中信息记录重新恢复至信息存储文件中。
例如,设置信息存储文件的最大存储位置编号为256,当前信息记录在信息存储文件中的存储位置编号为1。信息存储的具体过程如下:
(1)将待存储的信息打包为一条信息记录,信息编号为N1,信息存储位置序号为N0
(2)读取信息存储文件,获取最大信息编号N2和最小信息编号N3;如果N2-N3小于等于254,则N1等于N2+1,然后将N0加1后把此信息记录直接写入到信息存储文件的N0+1的位置;如果N2-N3大于254,则将N3对应的信息记录删除,并且令N1等于N2+1、N0等于N3对应的存储位置编号,然后将此信息记录写入到信息存储文件中,并将此信息记录的存储位置编号返回;
(3)使用CRC32的校验方法计算信息存储文件的校验码,并将此校验码写入到信息存储文件的前4个字节中;
本发明的信息读取方法实施例:
如图2,本发明信息读取方法步骤如下:
(1)当对信息进行读取时,首先检验信息存储文件的校验码,如果信息存储文件正常且校验码正确,则继续读取信息,进入步骤(2);如果信息存储文件损坏或校验码错误,将信息备份文件中信息记录重新恢复至信息存储文件中;
(2)根据输入的信息存储位置序号,搜索信息存储文件中该存储位置编号对应的信息记录,如果存在对应的信息记录,则读取并输出该信息记录的信息,并且输出读取成功的状态指示;如果不存在对应的信息记录时,则不读取和输出该信息记录的信息,输出读取失败的状态指示。
当使用本发明的信息存储方法时,在***写入文件时发生错误可以保证文件的正确性,并且建立了一种循环存储信息的机制,使用户对存储信息的访问、管理更加简便。

Claims (4)

1.一种信息存储方法,其特征在于,步骤如下:
(1)设定信息存储文件中存储的信息记录至少包括如下属性:信息编号、信息内容和信息存储位置序号,将待存入信息存储文件中的信息打包为所述信息记录的形式,所述信息编号是对信息记录按照逐条加1的方式进行的顺序编号,所述信息内容为用户输入的信息数据,所述信息存储位置序号是对信息记录在信息存储文件中存储位置的顺序编号;
(2)判断信息存储文件中已存储的信息记录是否已达到其所能存储的最大信息记录条数;
(3)如果否,则将待存入信息存储文件的信息记录写入信息存储文件中相应的存储位置,并将其信息存储位置序号和信息编号分别加1,如果是,则删除信息存储文件存储的信息记录中信息编号最小的那条信息记录,将待存入信息存储文件的信息记录写入删除的那条信息记录对应的存储位置,其信息存储位置序号等于删除的信息记录对应的信息存储位置序号,信息编号加1;
(4)在信息记录存储到信息存储文件后,计算信息存储文件的校验码,将该校验码写入到信息存储文件中;
(5)将信息记录同时备份至信息备份文件中。
2.根据权利要求1所述的信息存储方法,其特征在于,判断信息存储文件中已存储的信息记录是否已达到其所能存储的最大信息记录条数的方法为:获取信息存储文件中已存储的信息记录的信息编号的最大值Nmax和最小值Nmin,M为信息存储文件能存储的最大信息记录条数,若Nmax-Nmin≤M-2,则没有达到最大信息记录条数,如果Nmax-Nmin>M-2,则达到了最大信息记录条数。
3.根据权利要求1所述的信息存储方法,其特征在于,所述信息记录属性还包括信息长度,所述信息长度为用户输入的信息数据的总字节数,该总字节数不得超过用户定义的最大信息长度。
4.一种信息读取方法,其特征在于,步骤如下:
(1)当对信息进行读取时,首先检验信息存储文件的校验码,如果信息存储文件正常且校验码正确,则继续读取信息,进入步骤(2);如果信息存储文件损坏或校验码错误,将信息备份文件中信息记录重新恢复至信息存储文件中;
(2)根据输入的信息存储文件中信息的存储位置序号,搜索该存储位置序号对应的信息记录,如果存在对应的信息记录,则读取并输出该信息记录的信息,并且输出读取成功的状态指示;如果不存在对应的信息记录时,则无信息输出,并且输出读取失败的状态指示。
CN201310036284.5A 2013-01-29 2013-01-29 一种信息存储与读取方法 Active CN103092730B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310036284.5A CN103092730B (zh) 2013-01-29 2013-01-29 一种信息存储与读取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310036284.5A CN103092730B (zh) 2013-01-29 2013-01-29 一种信息存储与读取方法

Publications (2)

Publication Number Publication Date
CN103092730A true CN103092730A (zh) 2013-05-08
CN103092730B CN103092730B (zh) 2016-06-29

Family

ID=48205334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310036284.5A Active CN103092730B (zh) 2013-01-29 2013-01-29 一种信息存储与读取方法

Country Status (1)

Country Link
CN (1) CN103092730B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105022677A (zh) * 2014-04-24 2015-11-04 中国信息安全测评中心 一种usb设备使用记录恢复检查方法
CN112954129A (zh) * 2017-01-31 2021-06-11 佳能株式会社 图像处理装置、图像处理装置的控制方法和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520787A (zh) * 2008-03-19 2009-09-02 中国科学院自动化研究所 一种对实时数据进行存储的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520787A (zh) * 2008-03-19 2009-09-02 中国科学院自动化研究所 一种对实时数据进行存储的方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105022677A (zh) * 2014-04-24 2015-11-04 中国信息安全测评中心 一种usb设备使用记录恢复检查方法
CN105022677B (zh) * 2014-04-24 2018-06-26 中国信息安全测评中心 一种usb设备使用记录恢复检查方法
CN112954129A (zh) * 2017-01-31 2021-06-11 佳能株式会社 图像处理装置、图像处理装置的控制方法和存储介质
CN112954129B (zh) * 2017-01-31 2023-09-08 佳能株式会社 图像处理装置、图像处理装置的控制方法和存储介质

Also Published As

Publication number Publication date
CN103092730B (zh) 2016-06-29

Similar Documents

Publication Publication Date Title
CN109725822B (zh) 用于管理存储***的方法、设备和计算机程序产品
WO2021115021A1 (zh) 数据处理方法、装置、终端设备及计算机可读存储介质
US11232073B2 (en) Method and apparatus for file compaction in key-value store system
CN107807792A (zh) 一种基于副本存储***的数据处理方法及相关装置
CN108563532B (zh) 数据处理方法及相关装置
CN105206306A (zh) 在非易失性存储器处理纠错码的方法及非易失性存储装置
CN115292266B (zh) 一种基于存储器的高可靠日志存储方法
CN103955430A (zh) 一种闪存存储设备中数据管理的方法及装置
CN110008129B (zh) 一种存储定时快照的可靠性测试方法、装置及设备
US20090037646A1 (en) Method of using a flash memory for a circular buffer
CN111400083A (zh) 数据存储方法及***、存储介质
CN112380383B (zh) 一种实时视频流数据的容错索引方法
US20230376226A1 (en) Storage block management information synchronous recording method and system, and terminal and storage medium
CN110222035A (zh) 一种基于异或校验与日志恢复的数据库页面高效容错方法
CN103092730A (zh) 一种信息存储与读取方法
CN115509466B (zh) 一种数据管理方法、装置及电子设备和存储介质
CN105095352A (zh) 应用于分布式***的数据处理方法及装置
CN113742127B (zh) 一种裸闪存文件***的故障恢复方法
WO2020238750A1 (zh) 数据处理方法、装置、电子设备及计算机存储介质
CN113625947B (zh) 一种数据纠错方法、装置、设备及计算机可读存储介质
CN210776642U (zh) 一种多个tf卡自动拼盘装置
CN104504349B (zh) 一种录像数据安全存储装置及方法
US9880926B1 (en) Log structured reserved zone for a data storage device
CN111930302A (zh) 数据读取方法、装置、计算机可读存储介质及电子设备
CN110321073B (zh) 一种闪存的数据存储方法和装置以及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: HENAN XUJI METER CO., LTD. STATE GRID CORPORATION

Free format text: FORMER OWNER: HENAN XUJI METER CO., LTD. STATE GRID CORPORATION OF CHINA

Effective date: 20141223

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20141223

Address after: No. 1298 Xuchang City, Henan province 461000 XJ Avenue

Applicant after: Xuji Group Co., Ltd.

Applicant after: Henan Xuji Instrument Co., Ltd.

Applicant after: State Grid Corporation of China

Applicant after: State Grid Tianjin Electric Power Company

Address before: No. 1298 Xuchang City, Henan province 461000 XJ Avenue

Applicant before: Xuji Group Co., Ltd.

Applicant before: Henan Xuji Instrument Co., Ltd.

Applicant before: State Grid Corporation of China

C14 Grant of patent or utility model
GR01 Patent grant