CN105701205A - 基于隶属关系的数据系统及方法 - Google Patents
基于隶属关系的数据系统及方法 Download PDFInfo
- Publication number
- CN105701205A CN105701205A CN201610019069.8A CN201610019069A CN105701205A CN 105701205 A CN105701205 A CN 105701205A CN 201610019069 A CN201610019069 A CN 201610019069A CN 105701205 A CN105701205 A CN 105701205A
- Authority
- CN
- China
- Prior art keywords
- data
- key word
- key
- subordinate
- directly under
- 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.)
- Pending
Links
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于隶属关系的数据系统及方法,所述数据系统包括关系数据单元、存储数据单元、代理单元,其中,关系数据单元,用于存储至少两个关键词以及所述至少两个关键词的隶属关系;存储数据单元,用于存储所述关系数据单元中的每个关键词以及每个关键词对应的直属数据;代理单元,用于根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过存储数据单元获取所述检索关键词的直属数据及所述下属关键词的直属数据。上述数据系统可以有效处理隶属关系数据,一方面,既不会造成数据的重复存储,节省存储空间,另一方面,又拥有良好的响应能力和易于扩展的特性。与此同时,操作简便,不需要分别查询,减少使用者的工作量。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种基于隶属关系的数据系统及方法。
背景技术
车联网业务拓展和个性化服务对数据库负载造成了巨大压力,以redis为代表的nosql数据库很好的解决了负载问题。但与此同时,redis数据结构并不支持隶属关系,各个数据之间无法判断相互关系,因此各个数据只能单独查询。如在单位车辆查询业务中,要显示某部门及其下属部门车辆状态数据,现有技术中,存储方案有如下两种方式:
第一,将该部门所属车辆状态数据以及下属部门所属车辆状态数据存储在该部门的哈希表或者集合中,查询时读取。此种存储方式在查询时拥有良好的响应能力,但实际上,造成了数据的重复存储,浪费大量存储空间。
第二,将各个部门所属车辆状态数据存储在各个部门的哈希表或集合中,查询时,首先确定该部门的下属部门,然后分别查询该部门所属车辆状态数据以及下属部门所属车辆状态数据,将结果汇总。此种存储方式不需要重复存储,但在进行查询操作时需要分别查询存在隶属关系的各个部门所属车辆状态数据,增加了查询时间和使用者的工作量。
发明内容
针对现有技术中的缺陷,本发明提供一种基于隶属关系的数据系统及方法,用于有效处理隶属关系数据,既不会造成数据的重复存储,同时拥有良好的响应能力。
第一方面,本发明提供一种基于隶属关系的数据系统,包括关系数据单元、存储数据单元、代理单元,
所述关系数据单元,用于存储至少两个关键词以及所述至少两个关键词的隶属关系;
所述存储数据单元,用于存储所述关系数据单元中的每个关键词以及所述每个关键词对应的直属数据;
所述代理单元,用于根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过所述存储数据单元获取所述检索关键词的直属数据及所述下属关键词的直属数据;
其中,所述检索关键词为所述关系数据单元中的一个关键词。
优选地,所述关系数据单元中的每个关键词和其下属关键词通过集合set结构存储。
优选地,所述每个关键词和所述每个关键词对应的直属数据通过键值对key-value结构存储。
优选地,所述键值对key-value结构存储为哈希表hash。
优选地,所述集合set或所述哈希表hash为redis数据结构。
第二方面,本发明提供一种处理隶属关系数据的方法,包括数据读取阶段,所述数据读取阶段包括以下步骤:
接收客户端发送的检索关键词,所述检索关键词为关系数据单元中的一个关键词;
根据所述检索关键词获取的关键词,获取该关键词的每个下属关键词;
根据所述关键词和所述每个下属关键词,获取该关键词的直属数据和所述每个下属关键词的直属数据。
优选地,所述数据读取阶段之前,还包括数据写入阶段,所述数据写入阶段包括以下步骤:
接收客户端发送的至少两个关键词,以及每个关键词对应的直属数据,所述至少两个关键词存在隶属关系;
将所述关键词和其对应的下属关键词存储至关系数据单元,将每个关键词和其对应的直属数据存储至存储数据单元;
读取代理单元的配置信息,根据所述配置信息建立关系数据单元、数据存储单元的连接。
优选地,所述数据写入阶段之前,还包括初始化阶段,所述初始化阶段包括初始化代理单元、关系数据单元、存储数据单元以及数据库集群连接。
优选地,所述数据读取阶段之后,还包括数据显示阶段,所述数据显示阶段包括以下步骤:
显示依据检索关键词获取的关键词的直属数据以及该关键词的每个下属关键词的直属数据。
由上述技术方案可知,本发明提供一种基于隶属关系的数据系统及方法,通过关系数据单元存储至少两个关键词以及所述至少两个关键词的隶属关系,通过存储数据单元存储每个关键词以及所述每个关键词对应的直属数据,并通过代理单元存储的配置信息建立关系数据单元、存储数据单元的连接,实现对隶属关系数据的有效处理。对于整个的数据处理过程来说,一方面,既不会造成数据的重复存储,节省存储空间,另一方面,又拥有良好的响应能力和易于扩展的特性。与此同时,操作简便,不需要分别查询,减少使用者的工作量。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本发明一实施例关键词的隶属关系示意图;
图2为本发明一实施例处理隶属关系数据系统的结构示意图;
图3为本发明另一实施例处理隶属关系数据系统的结构示意图;
图4为本发明一实施例处理隶属关系数据方法的流程示意图;
图5为本发明另一实施例处理隶属关系数据方法的流程示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图2为本发明一实施例提供的处理隶属关系数据系统的结构示意图,如图2所示,本实施例中的处理隶属关系数据系统20包括关系数据单元21、存储数据单元22、代理单元23,
关系数据单元21,用于存储至少两个关键词以及所述至少两个关键词的隶属关系;
存储数据单元22,用于存储所述关系数据单元21中的每个关键词以及所述每个关键词对应的直属数据;
代理单元23,用于根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过所述存储数据单元22获取所述检索关键词的直属数据及所述下属关键词的直属数据;
其中,所述检索关键词为关系数据单元中的一个关键词。
可理解的是,隶属关系是指在类目表中下位类带有上位类的属性,上位类包含它所属的各级下位类。在本实施例中,关键词存在隶属关系是指关键词之间存在直接或间接从属的关系。除了顶层关键词以外,每个关键词存在直接上属关键词,除了底层关键词外,每个关键词存在直接下属关键词。
举例来说,如图1所示,关键词A为顶层关键词,关键词AAA、AAB、ABA、ABB和ABC为底层关键词。关键词A的直接下属关键词是关键词AA、AB,关键词AA、AB的直接上属关键词是关键词A。
图3为本发明另一实施例提供的处理隶属关系数据系统的结构示意图,如图3所示,本实施例中的处理隶属关系数据系统30包括关系数据库Redis31、存储数据库Redis32、代理单元33,
关系数据库Redis31,用于存储至少两个关键词以及所述至少两个关键词的隶属关系;
存储数据库Redis32,用于存储所述关系数据库Redis31中的每个关键词以及所述每个关键词对应的直属数据;
代理单元33,用于根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过所述存储数据库Redis32获取所述检索关键词的直属数据及所述下属关键词的直属数据;
其中,所述检索关键词为关系数据单元中的一个关键词。
在具体实现过程中,可以理解的是,关系数据库Redis31,用于存储至少两个关键词以及所述至少两个关键词的隶属关系,由于每个关键词和其对应的下属关键词存在唯一对应关系,为了方便存储与读取,关系数据库Redis31中的关键词和其对应的下属关键词通过集合set结构存储。
优选地,为了拥有良好的响应能力,所述集合set结构存储为Redis数据结构。
可以理解的是,关键词对应的下属关键词包括该关键词的直接下属关键词和间接下属关键词。直接下属关键词是具有直接从属关系的下属关键词,间接下属关键词是具有间接从属关系的下属关键词。
举例来说,如图1所示,关键词A的直接下属关键词是关键词AA、AB,关键词A的间接下属关键词是关键词AAA、AAB、ABA、ABB和ABC。关键词A的下属关键词是AA、AAA、AAB、AB、ABA、ABB和ABC,通过集合set存储于Redis缓存系统,通过关键词A可以获取对应的下属关键词AA、AB、AAA、AAB、ABA、ABB、ABC。
在具体实现过程中,可以理解的是,存储数据库Redis32,用于存储每个关键词以及所述每个关键词对应的直属数据,由于每个关键词和其对应的直属数据存在唯一对应关系,为了方便存储与读取,关键词和其对应的直属数据通过键值对key-value结构存储。
优选地,为了拥有良好的响应能力,所述键值对key-value结构存储为Redis数据结构,存储类型为哈希表hash。
在具体实现过程中,可以理解的是,代理单元33,用于根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过所述存储数据单元获取所述检索关键词的直属数据及所述下属关键词的直属数据;
其中,所述检索关键词为关系数据单元中的一个关键词。
举例来说,如图1所示,如果检索关键词为A,通过关系数据库Redis31,获取关键词A的下属关键词AA、AAA、AAB、AB、ABA、ABB、ABC;根据关键词A以及关键词A的下属关键词,通过存储数据库Redis32,分别获取关键词A、AA、AAA、AAB、AB、ABA、ABB、ABC的直属数据。
对于整个的数据处理过程来说,一方面,既不会造成数据的重复存储,节省存储空间,另一方面,又拥有良好的响应能力和易于扩展的特性。与此同时,操作简便,不需要分别查询,减少使用者的工作量。
图4示出了本发明一实施例提供的处理隶属关系数据方法的流程示意图,如图4所示,本实施例的处理隶属关系数据方法如下所述。
S41、接收客户端发送的检索关键词。
可以理解的是,客户端是指使用所述处理隶属关系数据的方法,发送检索关键词进行检索的一方。检索关键词为关系数据单元的一个关键词。
举例来说,如图1所示,关系数据单元中包含关键词A,AA,AAA,AAB,AB,ABA,ABB,ABC,检索关键词可以是上述关键词中的任何一个。
S42、根据所述检索关键词获取的关键词,获取该关键词的每个下属关键词。
可以理解的是,检索关键词为关系数据单元的一个关键词,由于关键词和其对应的下属关键词通过集合set存储,由此,根据一个关键词可以得到该关键词对应的下属关键词。
举例来说,如图1所示,如果检索关键词为A,A是关系数据单元中的一个关键词,由于关键词和其对应的下属关键词通过集合set存储,获取关键词A对应的下属关键词,即关键词AA、AAA、AAB、AB、ABA、ABB和ABC。
S43、根据所述关键词和所述每个下属关键词,获取该关键词的直属数据和所述每个下属关键词的直属数据。
举例来说,如图1所示,如果检索关键词为A,获取关键词A的下属关键词AA、AB、AAA、AAB、ABA、ABB和ABC,进一步,由于关键词和其对应的直属数据通过键值对哈希表hash存储,分别获取关键词A以及下属关键词AA、AB、AAA、AAB、ABA、ABB和ABC的直属数据。
对于整个的数据处理过程来说,一方面,既不会造成数据的重复存储,节省存储空间,另一方面,又拥有良好的响应能力和易于扩展的特性。与此同时,操作简便,不需要分别查询,减少使用者的工作量。
图5示出了本发明另一实施例提供的处理隶属关系数据方法的流程示意图,如图5所示,本实施例的处理隶属关系数据方法如下所述。S50、初始化阶段:
可以理解的是,初始化阶段包括初始化代理单元、关系数据单元、存储数据单元以及数据库集群连接。
S51、数据写入阶段:
S511、接收客户端发送的至少两个关键词,以及每个关键词对应的直属数据。
可以理解的是,所述至少两个关键词存在隶属关系。
S512、将所述关键词和其对应的下属关键词存储至关系数据单元,将每个关键词和其对应的直属数据存储至存储数据单元。
优选地,将所述关键词和其下属关键词通过集合set存储至关系数据单元,将每个关键词和其对应的直属数据通过哈希表hash存储至存储数据单元。
S513、读取代理单元的配置信息,根据所述配置信息建立关系数据单元、数据存储单元的连接。
可以理解的是,代理单元,用于根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过所述存储数据单元获取所述检索关键词的直属数据及所述下属关键词的直属数据;
其中,所述检索关键词为关系数据单元中的一个关键词。
进一步,所述配置信息为根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过所述存储数据单元获取所述检索关键词的直属数据及所述下属关键词的直属数据的指令。
S52、数据读取阶段:
本实施例的处理隶属关系数据的方法,数据读取阶段如图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
S53、数据显示阶段:
显示依据检索关键词获取的关键词的直属数据以及该关键词的每个下属关键词的直属数据。
对于整个的数据处理过程来说,一方面,既不会造成数据的重复存储,节省存储空间,另一方面,又拥有良好的响应能力和易于扩展的特性。与此同时,操作简便,不需要分别查询,减少使用者的工作量。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。
Claims (9)
1.一种基于隶属关系的数据系统,其特征在于,包括关系数据单元、存储数据单元、代理单元,
所述关系数据单元,用于存储至少两个关键词以及所述至少两个关键词的隶属关系;
所述存储数据单元,用于存储所述关系数据单元中的每个关键词以及所述每个关键词对应的直属数据;
所述代理单元,用于根据接收的检索关键词,获取所述检索关键词的下属关键词,并通过所述存储数据单元获取所述检索关键词的直属数据及所述下属关键词的直属数据;
其中,所述检索关键词为所述关系数据单元中的一个关键词。
2.如权利要求1所述的数据系统,其特征在于,所述关系数据单元中的每个关键词和其下属关键词通过集合set结构存储。
3.如权利要求1所述的数据系统,其特征在于,所述每个关键词和所述每个关键词对应的直属数据通过键值对key-value结构存储。
4.如权利要求3所述的数据系统,其特征在于,所述键值对key-value结构存储为哈希表hash。
5.如权利要求2或4所述的数据系统,其特征在于,所述集合set和所述哈希表hash为redis数据结构。
6.一种基于权利要求1-5中任一项所述的数据系统的处理隶属关系数据的方法,包括数据读取阶段,其特征在于,所述数据读取阶段包括以下步骤:
接收客户端发送的检索关键词,所述检索关键词为关系数据单元中的一个关键词;
根据所述检索关键词获取的关键词,获取该关键词的每个下属关键词;
根据所述关键词和所述每个下属关键词,获取该关键词的直属数据和所述每个下属关键词的直属数据。
7.如权利要求6所述的方法,其特征在于,所述数据读取阶段之前,还包括数据写入阶段,所述数据写入阶段包括以下步骤:
接收客户端发送的至少两个关键词,以及每个关键词对应的直属数据,所述至少两个关键词存在隶属关系;
将所述关键词和其对应的下属关键词存储至关系数据单元,将每个关键词和其对应的直属数据存储至存储数据单元;
读取代理单元的配置信息,根据所述配置信息建立关系数据单元、数据存储单元的连接。
8.如权利要求7所述的方法,其特征在于,所述数据写入阶段之前,还包括初始化阶段,所述初始化阶段包括初始化代理单元、关系数据单元、存储数据单元以及数据库集群连接。
9.如权利要求6所述的方法,其特征在于,所述数据读取阶段之后,还包括数据显示阶段,所述数据显示阶段包括以下步骤:
显示依据检索关键词获取的关键词的直属数据以及该关键词的每个下属关键词的直属数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610019069.8A CN105701205A (zh) | 2016-01-12 | 2016-01-12 | 基于隶属关系的数据系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610019069.8A CN105701205A (zh) | 2016-01-12 | 2016-01-12 | 基于隶属关系的数据系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105701205A true CN105701205A (zh) | 2016-06-22 |
Family
ID=56226307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610019069.8A Pending CN105701205A (zh) | 2016-01-12 | 2016-01-12 | 基于隶属关系的数据系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105701205A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030204515A1 (en) * | 2002-03-06 | 2003-10-30 | Ori Software Development Ltd. | Efficient traversals over hierarchical data and indexing semistructured data |
CN101568088A (zh) * | 2009-05-26 | 2009-10-28 | 杭州世导科技有限公司 | 手机与系统的通讯录同步与管理方法 |
CN102087723A (zh) * | 2009-12-03 | 2011-06-08 | 中国移动通信集团公司 | 一种企业通信录共享的方法、系统及装置 |
CN103955533A (zh) * | 2014-05-13 | 2014-07-30 | 中国工商银行股份有限公司 | 一种基于缓冲队列的页面树形数据获取装置及方法 |
CN104063413A (zh) * | 2013-11-11 | 2014-09-24 | 国云科技股份有限公司 | 一种mysql数据库树状结构及其快速检索方法 |
CN104598517A (zh) * | 2014-12-09 | 2015-05-06 | 北京网梯科技发展有限公司 | 基于普通数据库的树型结构表的存储与查询技术 |
-
2016
- 2016-01-12 CN CN201610019069.8A patent/CN105701205A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030204515A1 (en) * | 2002-03-06 | 2003-10-30 | Ori Software Development Ltd. | Efficient traversals over hierarchical data and indexing semistructured data |
CN101568088A (zh) * | 2009-05-26 | 2009-10-28 | 杭州世导科技有限公司 | 手机与系统的通讯录同步与管理方法 |
CN102087723A (zh) * | 2009-12-03 | 2011-06-08 | 中国移动通信集团公司 | 一种企业通信录共享的方法、系统及装置 |
CN104063413A (zh) * | 2013-11-11 | 2014-09-24 | 国云科技股份有限公司 | 一种mysql数据库树状结构及其快速检索方法 |
CN103955533A (zh) * | 2014-05-13 | 2014-07-30 | 中国工商银行股份有限公司 | 一种基于缓冲队列的页面树形数据获取装置及方法 |
CN104598517A (zh) * | 2014-12-09 | 2015-05-06 | 北京网梯科技发展有限公司 | 基于普通数据库的树型结构表的存储与查询技术 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103106249B (zh) | 一种基于Cassandra的数据并行处理系统 | |
CN102541990B (zh) | 利用虚拟分区的数据库重新分布方法和系统 | |
CN105205082A (zh) | 用于处理hdfs中的文件存储的方法和系统 | |
WO2017041570A1 (zh) | 向缓存写入数据的方法及装置 | |
CN102662992A (zh) | 一种海量小文件的存储、访问方法及装置 | |
CN111241108B (zh) | 基于键值对kv系统的索引方法、装置、电子设备和介质 | |
CN109101516A (zh) | 一种数据查询方法和服务器 | |
US8380663B2 (en) | Data integrity in a database environment through background synchronization | |
CN102662793A (zh) | 一种可保证数据一致性的分布式数据库热备份与恢复方法 | |
CN101790257A (zh) | 一种存储数据的方法和网管系统 | |
CN104216962A (zh) | 一种基于HBase的海量网管数据索引设计方法 | |
US8589352B2 (en) | Federated configuration management database, management data repository, and backup data management system | |
CN105517644A (zh) | 一种数据分区方法和设备 | |
US10642530B2 (en) | Global occupancy aggregator for global garbage collection scheduling | |
CN104410666A (zh) | 云计算下实现异构存储资源管理的方法及系统 | |
US11249968B2 (en) | Large object containers with size criteria for storing mid-sized large objects | |
KR101666440B1 (ko) | 환형큐 기반의 인-메모리 데이터베이스 시스템에서의 데이터 처리방법 | |
CN108280123B (zh) | 一种HBase的列聚合方法 | |
CN105701205A (zh) | 基于隶属关系的数据系统及方法 | |
JP4313845B2 (ja) | マルチインスタンス・インメモリ・データベース | |
CN102915324B (zh) | 数据存储与检索装置和数据存储与检索方法 | |
CN105930519A (zh) | 一种基于集群文件系统的全局共享读缓存方法 | |
US10360234B2 (en) | Recursive extractor framework for forensics and electronic discovery | |
CN110109866A (zh) | 一种文件系统目录的管理方法及设备 | |
US10852947B2 (en) | Organization and compression of data in storage arrays to reduce cleaning overhead |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160622 |
|
RJ01 | Rejection of invention patent application after publication |