CN1700207B - 实现可扩展的数据存储方法 - Google Patents

实现可扩展的数据存储方法 Download PDF

Info

Publication number
CN1700207B
CN1700207B CN 200410034796 CN200410034796A CN1700207B CN 1700207 B CN1700207 B CN 1700207B CN 200410034796 CN200410034796 CN 200410034796 CN 200410034796 A CN200410034796 A CN 200410034796A CN 1700207 B CN1700207 B CN 1700207B
Authority
CN
China
Prior art keywords
data
key
mapping relations
numeric field
territory
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.)
Active
Application number
CN 200410034796
Other languages
English (en)
Other versions
CN1700207A (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.)
Datang Software Technologies Co Ltd
Original Assignee
Datang Software Technologies 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 Datang Software Technologies Co Ltd filed Critical Datang Software Technologies Co Ltd
Priority to CN 200410034796 priority Critical patent/CN1700207B/zh
Publication of CN1700207A publication Critical patent/CN1700207A/zh
Application granted granted Critical
Publication of CN1700207B publication Critical patent/CN1700207B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种实现可扩展的数据存储方法,用于存储由域组成相同的若干数据记录,包括:(1)在所述域中选择一个作为关键域;(2)建立并保存各个数据记录中的所述关键域数据与其它各个非关键域数据的第一映射关系表;(3)当增加数据记录的数据时,判断是否是关键域的域数据,若是,则保存所述域数据,否则,在所述第一映射关系表中保存所述数据记录的关键域数据及所述数据的对应关系。利用该方法进行数据存储,当新增数据时,无须修改历史数据,提高系统的稳定性和存储数据的效率,并且,无须通过人工方式更改系统中历史数据的存储地址,降低了系统开发的成本。

Description

实现可扩展的数据存储方法
技术领域
本发明涉及数据信息存取领域,尤其是涉及一种实现可扩展的数据存储方法。
背景技术
资源管理系统是利用计算机技术和网络技术对资源信息进行采集、共享和管理。在各种资源管理系统中,通常需要将数据进行存储。
以实验室的实验数据管理系统为例,说明现有技术中是如何对实际检测的数据进行存储的。
F = | A 1 A 2 A 3 B 1 B 2 B 3 . . . |
F是实验数据管理系统中数据集合,假设该实现室有设备1、设备2和设备3。其中,A1,A2,A3分别是设备1、设备2、设备3对检测对象A的检测数据,B1,B2,B3分别是设备1、设备2、设备3对检测对象B的检测数据。具有相同检测对象的数据集合被称为数据记录,将数据记录中每个数据记录进行编号,如设备1的检测数据,这个编号称为域。
请参阅图1,图1为现有的数据存储示意图。A、B分别为检测对象的编号,现有的数据存储方法是将F中的每条数据记录的各个数据按照顺序保存在存储单元中,这种数据存储方法能够保存相对固定的数据。但是,它存在以下缺点:
随着用户对资源管理系统的要求不断扩宽,很有可能使得原有的数据不能满足新的需求。比如,用户要求增加设备4,则需要在F中增加各个检测对象在设备4上检测到的数据,由于原有的数据是静态依次保存,所以每个数据之间不存在空余空间,由于其存在扩展性差的缺点,因此在增加域时如何对新增的域数据进行存储,则直接影响系统的正常运行。
现有技术中采用的第一种方法是擦除原有的历史数据,将增加新的域数据的实验数据管理系统重新写入存储单元中。由于存储新增数据需要擦除原有的历史数据,所以导致存储效率低的问题。并且,这种方法需改动历史记录的存储,从而影响系统的稳定性。尤其是当通过记录数据的存储地址信息来读写相应数据时,由于数据的重新存储导致存储地址发生变化,如果不及时修改系统中对应的存储地址信息,就会影响整个系统的正常运行。同时,花费大量人力查找和修改该存储地址信息,增加了系统开发成本。
现有技术中采用的第二种方法是对部分历史数据搬运(请参阅图2)。这种通过搬运方式进行数据存储首先确定哪些历史数据需搬运,并计算各个要搬运的历史数据搬运的距离,然后进行历史数据的搬运,最后将新增的域数据存储到对应的存储空间。该方法数据存储效率慢,并且,容易破坏原有存储的数据,造成系统无法正常工作。
发明内容
本发明的目的在于提供一种实现可扩展的数据存储方法,从而解决由于扩展性差而引起存储效率慢、系统不稳定和开发系统成本高的问题。
为解决上述问题,本发明提供了一种实现可扩展的数据存储方法,用于存储由相同域组成的若干数据记录,包括:(1)在所述域中选择一个作为关键域;(2)建立并保存各个数据记录中的所述关键域数据与其它各个非关键域数据的第一映射关系表;(3)当增加数据记录的数据时,判断是否是关键域的域数据,若是,则保存所述域数据,否则,在所述第一映射关系表中保存所述数据记录的关键域数据及所述数据的对应关系。
其中,所述第一映射关系表包括关键域的域数据与各个非关键域的域名的映射关系及所述域名与所述非关键域的域数据的映射关系。
其中,步骤(2)还包括:设置第一标识,建立并保存关键域中各个域数据和第一标识数据对应的第二映射关系表。
其中,步骤(2)还包括:设置第二标识,建立并保存各个非关键域的域名和第二标识数据对应的第三映射关系表。
其中,步骤(2)中所述第一映射关系表包括:所述第一标识数据与第二标识数据的映射关系及所述第二标识数据与所述数据记录中的域数据的映射关系。
其中,还包括:当增加非关键域时,在所述第三映射关系表中保存所述非关键域的域名及第二标识数据的对应关系。
其中,还包括:当数据记录中增加关键域的域数据时,在第二映射关系表中保存所述域数据和第一标识数据的对应关系。
其中,还包括:当数据记录中增加非关键域的域数据时,在第一映射关系表中保存所述数据记录的关键域对应的第一标识数据和所述非关键域的域数据的对应关系。
其中,还包括:当增加非关键域时,在第二映射关系表中保存所述非关键域的域名和第二标识数据的对应关系。
其中,还包括:当更改数据时,判断所述数据是否关键域的域数据时,若是,在所述第二映射关系表中更改对应的域数据,否则在所述第一映射关系表中更改对应域数据。
其中,还包括:当删除数据时,判断所述数据是否关键域的域数据时,若是,在所述第二映射关系表中删除对应的域数据,否则在所述第一映射关系表中删除对应域数据。
与现有技术相比,本发明具有以下优点:
第一:本发明建立并保存各个数据记录中的关键域数据与其它各个非关键域数据的第一映射关系表。当每次新增数据时,在第一映射关系表中保存新增数据和关键域数据的对应关系,从而避免更改历史数据的存储位置,即历史数据的存储位置是固定且独立的,增加新数据不影响系统中历史数据的存储,因此本发明提高了系统的稳定性,而且在存储数据时,无须计算搬运的距离等步骤,提高了存储效率。还有,由于每一数据记录的各个数据的存储位置是固定的,在通过数据的存储地址进行读写数据时,避免修改系统中的历史数据的存储地址,降低了系统开发成本。
第二:本发明中建立并保存关键域中各个域数据和第一标识数据的第二映射关系表和建立并保存各个非关键域的域名和第二标识数据的第三映射关系表,当更改关键域中的域数据时,只要修改第二映射关系表中对应的域数据即可.当增加/修改非关键域时,只要修改第三映射关系表中对应的非关键域的域名即,提高存储效率,同时也提高数据检索的速率.
附图说明
图1是现有技术中数据的存储结构示意图。
图2是现有技术中增加新数据后的数据进行存储的示意图。
图3是本发明中数据存储的第一实施例的流程图。
图4是第一实施例的第一映射关系表的结构示意图。
图5是新增数据时数据进行存储的流程图。
图6是新增域数据的第一映射关系表的结构示意图。
图7是新增数据记录的第一映射关系表的结构示意图。
图8是本发明的数据存储的第二实施例的流程图。
图9是本发明的第二实施例的第二映射关系表的结构示意图。
图10是本发明的第二实施例的第三映射关系表的结构示意图。
图11是本发明的第二实施例的第一映射关系表的结构示意图。
图12是本发明中新增数据时数据进行存储的流程图。
图13为新增数据时第二映射关系表的结构示意图。
图14为新增数据时第一映射关系表的结构示意图。
具体实施方式
以下结合附图,具体说明本发明的实施方式。
本发明公开一种实现可扩展的数据存储方法,用于存储由域组成相同的若干数据记录,首先在所述域中选择一个作为关键域(步骤S110);然后,建立并保存各个数据记录中的所述关键域数据与其它各个非关键域数据的第一映射关系表(步骤S120);当增加数据记录的数据时,判断是否是关键域的域数据,若是,则保存所述域数据,否则,在所述第一映射关系表中保存所述数据记录的关键域数据及所述数据的对应关系(步骤S130)。
还是以实验室的实验数据管理系统为例,说明本发明是如何对实际检测的数据进行存储的。
F 1 = | A A 1 A 2 A 3 B B 1 B 2 B 3 |
该实验数据管理系统F1中包括两条数据记录:数据记录1是设备1、设备2、设备3对检测对象A的检测数据集合,数据记录2是设备1、设备2、设备3对检测对象B的检测数据集合。所述数据记录包括四个域:检测对象、设备1、设备2、设备3。
首先建立输入界面,以接收用户输入数据和对F1中数据的操作命令.该输入界面包括域增加模块、域数据增加模块、关键域设置模块、数据更改模块和数据删除模块.域增加模块用于接受用户输入新域及对应的域信息,域数据增加模块用于接受用户输入数据记录中的域数据,关键域设置模块用于接受用户选择所述域中的其中一个域为关键域,数据更改模块用于接受用户更改域数据或域信息,数据删除模块用于接受用户删除域数据或域信息.用户通过域增加模块输入上述四个域的域信息,所述域信息包括唯一标识该域的域名,并通过域数据增加模块输入每条数据记录中四个域的域数据.
其次,在所述四个域中选择一个域作为关键域,而其它域作为非关键域。该关键域可以是用户通过关键域设置模块输入,也可以通过系统指定其中一个域为关键域,比如指定第一个域为关键域。系统保存选中的关键域的域信息。以F1为例,通过上述两种方式中的一种选择检测对象为关键域,则设备1、设备2、设备3为非关键域。
最后建立并保存各个数据记录中的所述关键域数据与其它各个非关键域数据的第一映射关系表。如图4所示,所述第一映射关系表包括所述关键域在各个数据记录中的域数据、所述各个非关键域的域名及在所述数据记录中对应的域数据,第一映射关系表包括关键域的域数据与各个非关键域的域名的映射关系及所述域名与所述非关键域的域数据的映射关系。
请参阅图5,为本发明中扩展数据时数据存储的流程图。
首先,接受用户输入新增数据请求(进行步骤S210),当新增域时,通过域增加模块接受用户输入包括域名的域信息,保存域信息。本实施中增加数据主要为增加数据记录中的域数据。
然后进行步骤S220:判断数据是否为关键域的域数据(步骤S220),若是,则新增数据记录,保存所述域数据及所述域数据所在的域名,否则,在所述第一映射关系表中保存所述数据记录中的关键域数据及所述数据的对应关系。
比如,为了满足新需要,在系统中增加新域(设备4)及各个数据记录对应的域数据,则在第一映射关系表中保存各个数据记录的关键域的域数据与设备4的对应关系。见图6,记录关键域A和设备4检测对象A的检测数据A4,并记录关键域B和设备4检测对象B的检测数据B4。
比如,在系统中增加新记录,增加各个检测设备对检测对象C的检测数据,C1为设备1对检测对象C的检测数据,C2为设备2对检测对象C的检测数据,C3为设备3对检测对象C的检测数据,则系统通过域数据增加模块接受用户输入的数据,在第一映射关系表中保存该数据记录的关键域的域数据与其它非关键域的数据的对应关系(见图7)。
从上述步骤可知,当F1中新扩展数据时,不影响历史数据存储,当系统通过直接存址访问数据时,无须更改原数据存储的地址,保证系统的稳定性。当历史数据没有空闲空间时,系统查找空闲的存储块用于存储新扩展的数据并记录空闲的存储块的地址。系统通过预先记录的存储地址即可读出或写入数据,提高存取效率并且方便用户操作。
当用户发出删除数据或更改数据请求时,通过预先记录的存储地址删除或更改第一映射关系表中对应的数据。
本申请人在第一实施例的数据存储方法的基础上进行改进,提出了较优的第二实施方式。
请参阅图7,为本发明数据存储的第二实施例的流程图。
步骤S310:建立用户输入界面,以方便用户输入数据及对数据的命令操作.该输入界面包括域增加模块、域数据增加模块、关键域设置模块、数据更改模块和数据删除模块.域增加模块用于接受用户输入新域及对应的域信息,域数据增加模块用于接受用户输入数据记录中的域数据,关键域设置模块用于接受用户选择所述域中的其中一个域为关键域,数据更改模块用于接受用户更改域数据或域信息,数据删除模块用于接受用户删除域数据或域信息.用户通过域增加模块输入上述四个域的域信息,所述域信息包括唯一标识该域的域名,并通过域数据增加模块输入每条数据记录中四个域的域数据.
步骤S320:在所述域中选择一个域作为关键域,而其它域作为非关键域。该关键域可以是用户通过关键域设置模块输入,也可以通过系统指定其中一个域为关键域,比如指定第一个域为关键域。系统保存选中的关键域的域信息。以F1为例,通过上述两种方式中的一种选择检测对象为关键域,则设备1、设备2、设备3为非关键域。
步骤S330:设置第一标识,建立并保存关键域中各个域数据和第一标识数据的第二映射关系表(见图9),该第二映射关系表中保存所述域数据与所述第一标识数据的映射关系。为了便于检索,第一标识采用连续编号的数字。
步骤S340:设置第二标识,建立并保存各个非关键域的域名和第二标识数据的第三映射关系表(见图10),该第三映射关系表中保存所述域名与第二标识数据的映射关系。为了便于检索,第二标识也采用连续编号的数字。
步骤S350:建立并保存各个数据记录中的所述关键域数据与其它各个非关键域数据的第一映射关系表。第一映射关系表包括:所述第一关键域的域数据对应的第一标识数据、所述各个非关键域的域名对应的第二标识数据及该域名在所述数据记录中的域数据(见图11),所述第一映射关系表包括:所述第一标识数据与第二标识数据的映射关系及所述第二标识数据与所述数据记录中的域数据的映射关系。
通过建立第二映射关系表和第三映射关系表进行数据存储,第一:方便修改数据。比如,将检测对象A更改成D时,无须更改第一关系映射表中的所有的检测对象A,仅修改第二关系映射表中的检测对象A更改成D即可,提高修改数据的效率,并降低修改历史数据的概率,提高系统稳定性。第二:增加读写数据的速度,特别是当关键域为字节型数据时,查询该关键域数据对应的第一标识数据比直接查询该字节型数据要快。
请参阅图12,为增加新数据时的数据存储流程图。
还是以实验室的实验数据管理系统为例,要在F1中增加新域(域名为设备4)及增加各个检测对象在新域中的检测数据。
首先进行步骤S410,通过域增加模块接受并保存用户输入的域信息,该域信息包括域名;
其次进行步骤S420:在所述第三映射关系表中保存所述非关键域的域名及第二标识数据的对应关系(见图13)。
其次进行步骤S430,通过域数据增加模块接受并保存各个数据记录中增加的域数据;
最后进行步骤S440:在第一映射关系表中保存所述数据记录的关键域所对应的第一标识数据和所述非关键域的域数据的对应关系(见图14)。
当增加关键域的域数据时,在第二映射关系表中保存所述域数据和第一标识数据的对应关系。
当更改数据时,判断所述数据是否关键域的域数据时,若是,在所述第二映射关系表中更改对应的域数据,否则在所述第一映射关系表中更改对应域数据。
当删除数据时,判断所述数据是否关键域的域数据时,若是,在所述第二映射关系表中删除对应的域数据,否则在所述第一映射关系表中删除对应域数据。
以上公开的仅为本发明的几个具体实施方式,并非局限于此,任何本技术领域的技术人员能思之的技术变化,都应落入本发明的保护范围。

Claims (11)

1.一种实现可扩展的数据存储方法,用于存储由相同域组成的若干数据记录,其特征在于,包括:
(1)在所述域中选择一个作为关键域;
(2)建立并保存各个数据记录中的所述关键域数据与其它各个非关键域数据的第一映射关系表;
(3)当增加数据记录的数据时,判断是否是关键域的域数据,若是,则保存所述域数据,否则,在所述第一映射关系表中保存所述数据记录的关键域数据及所述数据的对应关系。
2.如权利要求1所述的实现可扩展的数据存储方法,其特征在于:所述第一映射关系表包括关键域的域数据与各个非关键域的域名的映射关系及所述域名与所述非关键域的域数据的映射关系。
3.如权利要求1所述的实现可扩展的数据存储方法,其特征在于:步骤(2)还包括:设置第一标识,建立并保存关键域中各个域数据和第一标识数据对应的第二映射关系表。
4.如权利要求1或3所述的实现可扩展的数据存储方法,其特征在于:步骤(2)还包括:设置第二标识,建立并保存各个非关键域的域名和第二标识数据对应的第三映射关系表。
5.如权利要求4所述的实现可扩展的数据存储方法,其特征在于,步骤(2)中所述第一映射关系表包括:所述第一标识数据与第二标识数据的映射关系及所述第二标识数据与所述数据记录中的域数据的映射关系。
6.如权利要求4所述的实现可扩展的数据存储方法,其特征在于,还包括:当增加非关键域时,在所述第三映射关系表中保存所述非关键域的域名及第二标识数据的对应关系。
7.如权利要求4所述的实现可扩展的数据存储方法,其特征在于,还包括:当数据记录中增加关键域的域数据时,在第二映射关系表中保存所述域数据和第一标识数据的对应关系。
8.如权利要求7所述的实现可扩展的数据存储方法,其特征在于,还包括:当数据记录中增加非关键域的域数据时,在第一映射关系表中保存所述数据记录的关键域对应的第一标识数据和所述非关键域的域数据的对应关系。
9.如权利要求4所述的实现可扩展的数据存储方法,其特征在于,还包括:当增加非关键域时,在第二映射关系表中保存所述非关键域的域名和第二标识数据的对应关系。
10.如权利要求4所述的实现可扩展的数据存储方法,其特征在于,还包括:当更改数据时,判断所述数据是否关键域的域数据时,若是,在所述第二映射关系表中更改对应的域数据,否则在所述第一映射关系表中更改对应域数据。
11.如权利要求4所述的实现可扩展的数据存储方法,其特征在于,还包括:当删除数据时,判断所述数据是否关键域的域数据时,若是,在所述第二映射关系表中删除对应的域数据,否则在所述第一映射关系表中删除对应域数据。
CN 200410034796 2004-05-17 2004-05-17 实现可扩展的数据存储方法 Active CN1700207B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200410034796 CN1700207B (zh) 2004-05-17 2004-05-17 实现可扩展的数据存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200410034796 CN1700207B (zh) 2004-05-17 2004-05-17 实现可扩展的数据存储方法

Publications (2)

Publication Number Publication Date
CN1700207A CN1700207A (zh) 2005-11-23
CN1700207B true CN1700207B (zh) 2010-05-12

Family

ID=35476274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200410034796 Active CN1700207B (zh) 2004-05-17 2004-05-17 实现可扩展的数据存储方法

Country Status (1)

Country Link
CN (1) CN1700207B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914456A (zh) * 2012-12-31 2014-07-09 北京中交兴路信息科技有限公司 一种数据存储方法和系统
CN107909359B (zh) * 2017-11-21 2021-12-07 中国银行股份有限公司 批量调用联机交易公共处理机制的数据处理方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1295292A (zh) * 1999-11-05 2001-05-16 国际商业机器公司 用于多语言万维网服务器的方法和系统
CN1314634A (zh) * 2000-03-17 2001-09-26 索尼株式会社 文档转换方法、文档转换器、以及文档显示系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1295292A (zh) * 1999-11-05 2001-05-16 国际商业机器公司 用于多语言万维网服务器的方法和系统
CN1314634A (zh) * 2000-03-17 2001-09-26 索尼株式会社 文档转换方法、文档转换器、以及文档显示系统

Also Published As

Publication number Publication date
CN1700207A (zh) 2005-11-23

Similar Documents

Publication Publication Date Title
CN101458658B (zh) 用于闪存的数据存储方法及装置
CN109542358A (zh) 一种固态硬盘冷热数据分离方法、装置及设备
CN107644071A (zh) 缓存更新方法、装置及数据存储系统
CN101714391B (zh) 一种数据存储方法及装置
CN100456264C (zh) 一种磁盘空间管理方法及系统
CN102779180A (zh) 数据存储系统的操作处理方法,数据存储系统
CN102609488B (zh) 客户端及其数据查询方法、服务端和数据查询系统
CN101799783A (zh) 一种数据存储处理方法、查找方法及其装置
CN102147711A (zh) 一种基于数据内容识别的存储方法及装置
CN102314485A (zh) 哈希表添加、查找和删除方法及装置
CN100416566C (zh) 一种图片数据存储和读取方法
CN101655861A (zh) 基于双计数布鲁姆过滤器的哈希方法和哈希装置
CN102222099A (zh) 一种数据存储、查找方法及装置
CN100565508C (zh) 结构化文档管理设备、搜索设备、存储和搜索方法
CN103383690A (zh) 分布式数据存储方法及系统
CN104156748A (zh) 一种读写标签的方法及装置
CN104424219A (zh) 一种数据文件的管理方法及装置
US20080162591A1 (en) Method of Logging Transactions and a Method of Reversing a Transaction
CN101833511A (zh) 数据管理方法、装置和系统
CN103092916B (zh) 修改数据结构的方法和装置
CN101963993B (zh) 一种数据库单表记录快速查找的方法
CN102375694A (zh) 数据处理方法和装置
CN1700207B (zh) 实现可扩展的数据存储方法
CN102426601B (zh) 数据删除方法和装置
US6741970B2 (en) Method and apparatus for enhanced, high speed updating and storing of E-commerce orders in a server

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
DD01 Delivery of document by public notice
DD01 Delivery of document by public notice

Addressee: Gao Tingting

Document name: payment instructions

DD01 Delivery of document by public notice
DD01 Delivery of document by public notice

Addressee: Gao Tingting

Document name: Notice of Termination of Patent Rights