CN100543729C - 动态对象存取系统及方法 - Google Patents

动态对象存取系统及方法 Download PDF

Info

Publication number
CN100543729C
CN100543729C CNB200410069488XA CN200410069488A CN100543729C CN 100543729 C CN100543729 C CN 100543729C CN B200410069488X A CNB200410069488X A CN B200410069488XA CN 200410069488 A CN200410069488 A CN 200410069488A CN 100543729 C CN100543729 C CN 100543729C
Authority
CN
China
Prior art keywords
attribute value
dynamic
predetermine
database
index data
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.)
Withdrawn - After Issue
Application number
CNB200410069488XA
Other languages
English (en)
Other versions
CN1713176A (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.)
Caxa Technology Co Ltd
Original Assignee
Caxa Technology 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 Caxa Technology Co Ltd filed Critical Caxa Technology Co Ltd
Priority to CNB200410069488XA priority Critical patent/CN100543729C/zh
Publication of CN1713176A publication Critical patent/CN1713176A/zh
Application granted granted Critical
Publication of CN100543729C publication Critical patent/CN100543729C/zh
Withdrawn - After Issue legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供一种动态对象存取系统及方法,该系统包含有一数据库、一对象储存模块以及一数据检索模块。该数据库包含有一对象数据表以及一索引数据表。该对象数据表用以预存多个预定对象并包含有多个属性名称字段、多个属性值字段以及多个动态属性值字段。所述属性名称字段用以分别预存多个预定属性名称。每一属性值字段用以预存一个预定对象,一预定属性值。每一动态属性值字段用以预存一动态属性值。该索引数据表用以预存一索引数据。该对象储存模块连接于该数据库,用以依据一可延伸标记语言对动态属性值执行一动态对象储存处理,同时同步更新该索引数据表所对应的该索引数据。该数据检索模块连接于该数据库用以依据一快取规则检索该数据库。

Description

动态对象存取系统及方法
技术领域
本发明涉及一种动态对象存取系统及方法,特别是涉及一种使用于一数据库的动态对象存取系统及方法,用以存取预存于该数据库的多个预定对象中一预定对象的一属性名称与该属性名称所对应的一预定属性值。
背景技术
请参阅图1,图1为公知数据表10的示意图。公知数据库常利用一数据表10以储存多个预定对象。如图1所示,公知数据表10包含有多个属性名称字段121以及多个属性值字段13。所述属性名称字段121用以分别记录多个预定属性名称,例如Name、Age、Phone number、ID等。所述属性值字段13中,每一属性值字段13用以记录一个预定对象在所述预定属性名称中的一个预定属性名称所对应的一预定属性值。例如数据表10中,以“Tony”开头的第二列所包含的多个属性值字段13便可以代表一预定对象15,预定对象15可以称为对象“Tony”,而“26”则为对象“Tony”所对应的属性名称“Age”的一属性值。
请参阅图2,图2为公知重置数据表12的示意图。在公知技术中,当需要增加对象“Tony”的一新属性名称为“Year”的属性值时,需先将数据表10中所有数据汇出,接着在数据库中建罝(Create)一重罝数据表12,再将所汇出的数据汇入重置数据表12。
由图二可知,当重置数据表12增加对象“Tony”的新属性名称为“Year”的属性值“2”之后,在重置数据表12中则浪费了属性值字段14、16的存储器空间,由此可知,当所述预定对象间的预定属性名称的重复性愈低,则会浪费更多的存储器空间。
发明内容
本发明提供一种使用于一数据库的动态对象存取系统及方法,以解决上述问题。
本发明提供一种使用于一数据库的动态对象存取系统及方法,用以改善该数据库中一对象的一新增属性储存时间。
本发明提供一种使用于一数据库的动态对象存取系统及方法,用以快速查询该数据库。
具体地,本发明提供了一种动态对象存取系统,包含有一数据库、一对象储存模块以及一数据检索模块。该数据库包含有一对象数据表(object table)以及一索引数据表(index table)。该对象数据表用以预存多个预定对象并包含有多个属性名称字段(attribute name fields)、多个属性值字段(attributevalue fields)以及多个动态属性值字段(dynamic attribute value fields)。所述属性名称字段用以分别预存多个预定属性名称(predetermined attributename)。所述属性值字段中每一属性值字段用以预存多个预定对象中的一个预定对象,在所述预定属性名称中的一个预定属性名称所对应的一预定属性值(predetermined attribute value)。多个动态属性值字段中每一动态属性值字段用以预存所述预定对象中的一个预定对象所对应的一动态属性值。该索引数据表用以预存根据每一动态属性值字段的该动态属性值所各自对应的一索引数据。该对象储存模块连接于该数据库,用以依据一可延伸标记语言(extensible markup language,XML)对所述预定对象中一个预定对象所对应的一动态属性值执行一动态对象储存处理,同时同步更新该索引数据表所对应的该索引数据。该数据检索模块连接于该数据库,用以依据一快取规则检索该数据库。
本发明还提供了一种使用于一数据库的动态对象存取方法,该数据库包含有一对象数据表(object table)以及一索引数据表(index`table),该对象数据表用以预存多个预定对象并包含有:
多个属性名称字段(attribute name fields),用以分别预存多个预定属性名称(predetermined attribute name);
多个属性值字段(attribute value fields),每一属性值字段用以预存多个预定对象中的一个预定对象,在所述预定属性名称中的一个预定属性名称所对应的一预定属性值(predeterrmined attribute value);以及
多个动态属性值字段(dynamic attribute value fields),每一动态属性值字段用以预存所述预定对象中的一个预定对象所对应的一动态属性值;
该索引数据表用以预存根据每一动态属性值字段的该动态属性值所各自对应的一索引数据;
该动态对象存取方法包含有以下步骤:
(B1)依据一可延伸标记语言(extensible markup language,XML)对所述预定对象中的一个预定对象所对应的该动态属性值,执行一动态对象储存处理,同时同步更新该索引数据表所对应的该索引数据;以及
(B2)依据一快取规则检索该数据库。
通过本发明,数据库管理者可不必再担心数据库存储器空间不足或于增加一对象时的储存时间太长的情形。
关于本发明的优点与精神可以通过以下的发明详述及附图得到进一步的了解。
附图说明
图1为一数据厍中一数据表数据排列示意图。
图2为公知增加图1数据表中的一对象的属性名称及属性值示意图。
图3为本发明一实施例的一动态对象存取系统18的示意图。
图4为本发明一实施例的增加图3的一数据表22中对象“Tony”的一新属性名称“Year”及一属性值“2”的示意图。
图5为本发明一实施例的动态对象存取方法的步骤流程图。
图中:
10:数据表              11:属性名称字段
12:重置数据表          13:属性值字段
18:动态对象存取系统    20:数据库
22:对象数据表          23:预定对象
24:对象储存模块        25:数据检索模块
26:属性名称字段        27:索引数据表
28:属性值字段          30:动态属性值字段
具体实施方式
请参阅图3及图4,图3为本发明动态对象存取系统18的示意图,图4为图3所示对象数据表22的示意图。本发明提供一种动态对象存取系统18包含有一数据库20、一对象储存模块24以及一数据检索模块25。数据库20包含有一对象数据表22及一索引数据表27,其中数据库20可以是一实体关系数据模型(Entity-Relationship Data Model,ER Model)系统。对象数据表22用以预存多个预定对象,其包含有多个属性名称字段26、多个属性值字段28以及多个动态属性值字段30。
多个属性名称字段26用以分别记录多个预定属性名称,例如Name、Age、Phone number、ID等。每一属性值字段28用以记录多个预定对象中的一个预定对象,在多个预定属性名称中的一个预定属性名称所对应的一预定属性值。多个动态属性字段30中,每一动态属性值字段30用以记录所述预定对象中的一个预定对象所对应的一动态属性值(如“DAV1”)。其中,“DAV1”用以指示一可延伸标记语言(extensible markup language,XML)之文字,该动态属性值以一文本(TEXT)型态储存。
请参阅图4。例如在对象数据表22中,以“Tony”开头的第二列所包含的多个属性值字段28以及一个动态属性值字段30便可以代表一预定对象23,预定对象23可以称为对象“Tony”,而“26”则为对象“Tony”所对应的属性名称“Age”的一属性值,而“DAV1”则为对象“Tony”所对应的动态属性值。
此外,索引数据表27用以预存根据每一动态属性值字段的该动态属性值所各自对应的一索引数据,在本发明实施例中,索引数据表27中可以记录一预定对象(例如对象“Tony”)的一属性名称(例如“Age”)。
请参阅图3及图4。对象储存模块24连接于数据库20,当本发明动态对象存取系统18要增加对象“Tony”的一新属性名称“Year”及一属性值“2”时,对象储存模块24会依据一可延伸标记语言(extensible markup language,XML)对对象“Tony”所对应的动态属性值“DAV1”执行一动态对象储存处理,其中动态对象储存处理包含以下步骤:
由对象“Tony”所相对应的动态属性值字段30中,读取出对象“Tony”所对应的动态属性值“DAV1”;
在对象“Tony”所对应的动态属性值“DAV1”中,寻找是否有一标记(tag)表示为</xml>;
若能找到一标记为</xml>,则加入一对象储存字符串至该标记的前端;以及
将动态属性值“DAV1”储存回对象“Tony”所对应的动态属性值字段30,同时同步更新索引数据表27,且记录新增的属性名称于索引数据表27中。
本发明动态对象存取系统18所采用的对象储存字符串可以由一左中括号字符“<”,加上对象“Tony”所想增加的属性名称(如“Year”)、一右中括号字符“>”,接着加上属性名称所相应的属性值(如“2”)、一左中括号字符“<”、一反斜线“/”,加上对象“Tony”所想增加的属性名称(如“Year”)、以及一右中括号字符“>”。在本发明的一实施例中,对象储存字符串为“<year>2</year>”。
此外,本发明动态对象存取系统18的实施例中,动态属性值“DAV1”可用以指示出下列字符串:
<xml>
     <year>2</year>
</xml>。
此外,当本发明动态对象存取系统18要再增加对象“Tony”的一新增属性名称“country”及一新增属性值“china”时,动态属性值“DAV1”可用以指示出下列字符串:
<xml>
     <year>2</year><country>china</country>
</xml>。
此外,本发明动态对象存取系统18的数据检索模块25连接于数据库20,用以依据一快取规则检索数据库20,其中该快取规则包含:
搜寻索引数据表27以获得预定对象所对应的索引数据;以及
根据索引数据搜寻数据库20的所述动态属性值字段30,以获得预定对象所对应的动态属性值。
在本发明实施例中,当想要查询对象“Tony”是否有属性名称“Year”的属性值时,首先,先搜寻对象数据表22是否有属性名称“Year”,若无属性名称“Year”时,则数据检索模块25依据该快取规则检索数据库20的索引数据表27,以获得对象“Tony”所对应的一索引数据(如属性名称“Year”);若有属性名称“Year”时,则根据该索引数据搜寻数据库20的动态属性值字段30,以获得对象“Tony”所对应的动态属性值“2”。
此外,数据检索模块25会将检索数据库20后的数据储存于一寄存器例如RAM中。当下一次想要再查询对象“Tony”是否有属性名称“Year”的属性值时,即可直接从该寄存器得知,这样便可提升数据查询速度。
由此可知,本发明动态对象存取系统18相较于公知技术,当增加预定对象的一新预定属性名称及一预定属性值时,并不需要建置(create)多余的存储器空间。不仅如此,本发明还提供了一种可快速查询数据库的动态对象存取系统。
请参阅图5,图5为本发明动态对象存取方法的流程图。本发明动态对象存取方法包含下列步骤:
步骤S50:开始;
步骤S52:由对象“Tony”所相对应的动态属性值字段30中,读取出对象“Tony”所对应的动态属性值“DAV1”;
步骤S54:在对象“Tony”所对应的动态属性值“DAV1"中寻找是否有一标记(tag)表示为</xml>;
步骤S56:若找到一个标记</xml>,则在</xml>前加入一左中括号字符“<”,加上对象“Tony”所想增加的预定属性名称(如“Year”)、一右中括号字符“>”;
步骤S58:接着加上该预定属性名称(如“Year”)所相应的该属性值(如“2”);
步骤S60:再加上一左中括号字符“<”、一反斜线“/”,加上该预定对象所想增加的该预定属性名称(如“/Year”)、以及一右中括号字符“>”;
步骤S62:将动态属性值“DAV1”储存回对象“Tony”所对应的动态属性值字段30;
步骤S64:同时同步更新索引数据表27;
步骤S66:当想要查询对象“Tony”是否有属性名称“Year”的属性值时,先搜寻对象数据表22;
步骤S68:搜寻索引数据表27以获得对象“Tony”所对应的一索引数据(如属性名称“Year”);
步骤S70:根据该索引数据搜寻对象数据表22的动态属性值字段30,以获得对象“Tony”所对应的动态属性值;
步骤S72:数据检索模块25会将数据检索模块25检索数据库20后的数据储存于一寄存器例如RAM中;以及
步骤S74:完成。
相较于公知技术,通过本发明动态对象存取方法,本发明还提供了一种可快速查询数据库的动态对象存取方法。
通过以上较佳具体实施例的详述,更加清楚描述了本发明的特征与精神,但是并非以上述所揭示的较佳具体实施例来对本发明的范围加以限制。不脱离本发明精神的各种改变及具等效性的改型均应包含于本发明所要申请的专利范围内。

Claims (8)

1.一种动态对象存取系统,包含有:
一数据库,该数据库包含有一对象数据表以及一索引数据表,该对象数据表用以预存多个预定对象并包含有:
多个属性名称字段,用以分别预存多个预定属性名称;
多个属性值字段,每一属性值字段用以预存多个预定对象中的一个预定对象,在所述预定属性名称中的一个预定属性名称所对应的一预定属性值;以及
多个动态属性值字段,每一动态属性值字段用以预存所述预定对象中的一个预定对象所对应的一动态属性值;
其中,该索引数据表用以预存根据每一动态属性值字段的该动态属性值所各自对应的一索引数据;
一对象储存模块,连接于该数据库,用以依据一可延伸标记语言,对所述预定对象中一个预定对象所相对应的该动态属性值字段中,读取该预定对象所对应的该动态属性值,寻找该动态属性值中是否有一标记,若有,则加入一对象储存字符串至该标记的前端,并将该动态属性值储存回该预定对象所对应的该动态属性值字段,同时同步更新该索引数据表所对应的该索引数据,且记录新增的属性名称于索引数据表中;以及
一数据检索模块,连接于该数据库,用以依据一快取规则检索该数据库,其中该快取规则包含有以下步骤:(A1)搜寻该索引数据表以获得该预定对象所对应的该索引数据;以及(A2)根据该索引数据搜寻该数据库的所述动态属性值字段,以获得该预定对象所对应的该动态属性值。
2.如权利要求1所述的动态对象存取系统,其中动态对象存取系统另外包含有一存储器,连接于该数据检索模块,用以储存该数据检索模块检索该数据库后的数据。
3.如权利要求1所述的动态对象存取系统,其中该动态属性值以一文本型态储存。
4.如权利要求1所述的动态对象存取系统,其中该数据库是一实体关系数据模型系统。
5.一种使用于一数据库的动态对象存取方法,该数据库包含有一对象数据表以及一索引数据表,该对象数据表用以预存多个预定对象并包含有:
多个属性名称字段,用以分别预存多个预定属性名称;
多个属性值字段,每一属性值字段用以预存多个预定对象中的一个预定对象,在所述预定属性名称中的一个预定属性名称所对应的一预定属性值;以及
多个动态属性值字段,每一动态属性值字段用以预存所述预定对象中的一个预定对象所对应的一动态属性值;
该索引数据表用以预存根据每一动态属性值字段的该动态属性值所各自对应的一索引数据;
该动态对象存取方法包含有以下步骤:
(B1)依据一可延伸标记语言对所述预定对象中的一个预定对象所相对应的该动态属性值字段中,读取该预定对象所对应的该动态属性值,寻找该动态属性值中是否有一标记,若有,则加入一对象储存字符串至该标记的前端,并将该动态属性值储存回该预定对象所对应的该动态属性值字段,同时同步更新该索引数据表所对应的该索引数据,且记录新增的属性名称于索引数据表中;以及
(B2)依据一快取规则检索该数据库,其中该快取规则包含以下步骤:
(C1)搜寻该索引数据表以获得该预定对象所对应的该索引数据;以及
(C2)根据该索引数据搜寻该数据库的所述动态属性值字段,以获得该预定对象所对应的该动态属性值。
6.如权利要求5所述的动态对象存取方法,其中动态对象存取方法另外包含有以下步骤:
(B3)将该数据检索模块检索该数据库后的数据储存于一存储器。
7.如权利要求5所述的动态对象存取方法,其中该动态属性值以一文本型态储存。
8.如权利要求5所述的动态对象存取方法,其中该数据库是一实体关系数据模型系统。
CNB200410069488XA 2004-06-24 2004-06-24 动态对象存取系统及方法 Withdrawn - After Issue CN100543729C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB200410069488XA CN100543729C (zh) 2004-06-24 2004-06-24 动态对象存取系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB200410069488XA CN100543729C (zh) 2004-06-24 2004-06-24 动态对象存取系统及方法

Publications (2)

Publication Number Publication Date
CN1713176A CN1713176A (zh) 2005-12-28
CN100543729C true CN100543729C (zh) 2009-09-23

Family

ID=35718792

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB200410069488XA Withdrawn - After Issue CN100543729C (zh) 2004-06-24 2004-06-24 动态对象存取系统及方法

Country Status (1)

Country Link
CN (1) CN100543729C (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100561474C (zh) * 2006-01-17 2009-11-18 鸿富锦精密工业(深圳)有限公司 远程多点文件索引同步系统及方法
CN1845104B (zh) * 2006-05-22 2012-04-25 赵开灏 信息智能检索加工的系统和方法
CN102104546B (zh) * 2011-02-23 2015-06-10 中兴通讯股份有限公司 一种转发表的同步方法及系统
CN103544233A (zh) * 2013-10-07 2014-01-29 宁波芝立软件有限公司 一种完全亲缘关系信息库存储组织方法、系统及设备
CN103543957A (zh) * 2013-10-07 2014-01-29 宁波芝立软件有限公司 一种抚养关系信息库存储组织方法、系统及设备
CN103544228A (zh) * 2013-10-07 2014-01-29 宁波芝立软件有限公司 一种收养关系信息库存储组织方法、系统及设备
CN104834688B (zh) * 2015-04-20 2019-10-08 北京奇艺世纪科技有限公司 一种二级索引建立方法和装置
CN112506934A (zh) * 2020-12-18 2021-03-16 中国科学院软件研究所 一种面向软件定义卫星的测控及载荷数据存储方法与装置
CN114861007A (zh) * 2022-01-27 2022-08-05 云丁网络技术(北京)有限公司 一种索引信息管理方法和系统

Also Published As

Publication number Publication date
CN1713176A (zh) 2005-12-28

Similar Documents

Publication Publication Date Title
CN103631907B (zh) 一种将关系型数据迁移至HBase的方法及系统
CN103390015B (zh) 基于统一索引的海量数据联合存储方法及检索方法
CN104252536B (zh) 一种基于hbase的上网日志数据查询方法及装置
CN107273506A (zh) 一种数据库多表联合查询的方法
CN102456053B (zh) 一种xml文档到数据库的映射方法
CN103646032A (zh) 一种基于本体和受限自然语言处理的数据库查询方法
CN105849726A (zh) 用于高效地支持通过分层标记数据的即席查询的通用索引
CN103177094B (zh) 一种物联网数据清洗方法
CN103123650A (zh) 一种基于整数映射的xml数据库全文索引方法
CN100543729C (zh) 动态对象存取系统及方法
CN106503040B (zh) 适用sql查询方法的kv数据库及其创建方法
CN102222099A (zh) 一种数据存储、查找方法及装置
CN102810114A (zh) 基于本体的个人计算机资源管理系统
CN104021198A (zh) 基于本体语义索引的关系数据库信息检索方法及装置
JP2010536105A (ja) 文書ベースシステムにおける文書データ記憶方法およびその装置
CN100483409C (zh) 一种字符数据的检索方法
CN105096944A (zh) 语音识别方法及装置
CN110489433A (zh) 一种基于MongoDB的消息处理方法及装置、电子设备
CN101221582A (zh) 一种嵌入式系统数据库的实现方法
TW569110B (en) Dynamic database management system and method
CN102521375A (zh) 一种目录服务数据检索方法及系统
CN107609151A (zh) 基于Redis实现XBRL实例文档缓存的方法
CN102760164B (zh) 一种关系数据库管理系统与xml数据库管理系统之间数据交换的方法
CN108984626A (zh) 一种数据处理方法、装置及服务器
CN105045848A (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: BEIJING DIGITAL DAFANG TECHNOLOGY LTD.

Free format text: FORMER OWNER: HUAXIA SCIENCE + TECHNOLOGY CO., LTD.

Effective date: 20061103

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

Effective date of registration: 20061103

Address after: 100083, Room 802, satellite building, No. 63, Zhichun Road, Beijing, Haidian District

Applicant after: Beijing Digital Dafang Technology Co., Ltd.

Address before: Taipei city of Taiwan Province

Applicant before: Huaxia Science & Technology Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: CAXA TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: BEIJING DIGITAL DAFANG TECHNOLOGY CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 100083, Room 802, satellite building, No. 63, Zhichun Road, Beijing, Haidian District

Patentee after: Beijing CAXA Technology Co., Ltd.

Address before: 100083, Room 802, satellite building, No. 63, Zhichun Road, Beijing, Haidian District

Patentee before: Beijing Digital Dafang Technology Co., Ltd.

AV01 Patent right actively abandoned

Granted publication date: 20090923

Effective date of abandoning: 20211207

AV01 Patent right actively abandoned

Granted publication date: 20090923

Effective date of abandoning: 20211207

AV01 Patent right actively abandoned
AV01 Patent right actively abandoned