一种高度关联大数据的存储方法及管理系统技术方案

技术编号:14186303 阅读:116 留言:0更新日期:2016-12-14 21:30
本发明专利技术公开了一种高度关联大数据的存储方法及管理系统。本系统包括存储模块、统一数据管理模块;其中,存储模块包括用以存储数据实体内容的Hashmap模型,用以存储数据实体属性的关系模型,用以存储数据实体之间关联联系的图数据模型;每一数据实体设置一实体类型和唯一的ID号,通过数据实体ID号对同一数据实体的属性和内容之间建立该关联关系;所述统一数据管理模块,用于对数据实体的关联关系、属性、数据内容在存储模块中的增加、删除、更新、查询。本发明专利技术能够实现对大数据集的存储和管理,同时能够支持高效的关联查询分析。

Storage method and management system for highly correlated large data

The invention discloses a method and a system for storing high correlation large data. The system comprises a storage module, data management module; wherein, the storage module including the use of Hashmap model in data storage entity content, used to store data entity attribute relationship model, is used for storing data between entities map data model the relationship between the number of each entity set; according to a type of entity and the only ID, the establishment of the relationship between the properties and content of the same data entity through the data entity ID; the unified data management module for data entity relationship, attribute and content data in the storage module, delete, update, query and increase. The invention can realize the storage and management of the large data set, and can support the efficient association query analysis.

【技术实现步骤摘要】

本专利技术属于大数据存储领域,具体涉及了一种高度关联大数据的存储方法及管理系统
技术介绍
在大数据时代,企业或组织机构越来越重视数据的价值,并逐步开始了大数据的采集、存储和分析利用。在这些大数据集中,数据之间的关联是普遍存在的。尤其是在社交网络大数据、医疗大数据等与个体用户密切相关的应用场景中,数据对象之间更是呈现出高度关联的特点。而这些高度关联数据集中存在的数据之间的复杂联系往往具备巨大的分析价值。例如,社交用户之间的朋友关系、药品与病人之间的关联等等。同时,这些高度关联的大数据集也具备大规模、高速性和多样性的特点,因此为了更好地分析和利用它们,就需要对此类数据集的高效存储和管理等问题展开研究。为了应对大数据的存储需求,通常会有针对性地采用结构化关系数据库存储结构化数据,采用NoSQL数据库存储半结构化或非结构化数据。在这些存储方法中,关系型数据库和大多数NoSQL数据库(例如,键值数据库、文档数据库、列数据库)对于数据之间联系的存储和管理都非常低效。它们存储的都是无关联的记录、值、文档、列,在需要进行数据之间关联性的查询和分析时,需要采用索引、外键、表连接等额外的机制来实现。与之相对的是,图数据库则专注于数据之间联系的存储和查询,其多层关联查询和反向查询效率远远高于关系数据库和其他NoSQL数据库。多层关联查询是指在数据之间的联系上进行多层查询。例如查询“某个人的朋友的朋友的朋友的朋友”就是在朋友关系上进行多层查询。而反向查询则是指查询的方向与索引建立的方向是相反的。例如,存在索引“病人->药品”,那么查询某个病人买了哪些药品是非常快捷的,但是反向查询买了某个药品的病人有哪些,就要效率低很多。即使为了应对上面的反向查询,建立了“药品->病人”的索引,那么在面对查询“有哪些病人买了药品A,还买了药品B”时,仍然需要进行多次查询,效率较低。图数据库能够解决这些关注数据之间关联关系的查询问题。然而,图数据库无法满足大数据集的规模大和多样化的存储特点。目前,已经出现了一些混合应用NoSQL数据库和文件系统来存储大数据集的方法。这些方法根据大数据集中不同数据的各自特点,将它们分别存放在了合适的数据库或文件系统中。例如采用结构化关系数据库存储结构化数据,采用NoSQL数据库存储半结构化或非结构化数据。然而由于缺少针对高度关联大数据集中数据之间复杂关联的考虑,也没有与之匹配的数据模型、存储方法和查询方法,所以这些存储在不同数据库或文件系统中的数据集往往相互独立,存在大量冗余,同时在进行复杂关联关系查询时也较为低效。总之,目前大数据存储领域尚缺乏一种针对存在高度关联关系的大数据集的高效存储和管理方法,无法同时满足大数据的存储需求和对其中复杂联系的高效分析需求。
技术实现思路
针对上述技术问题,本专利技术的目的是提供一种针对高度关联大数据的存储方法及管理系统,实现对这类大数据集的存储和管理,同时能够支持高效的关联查询分析。该技术的基本原理为:基于图数据模型、关系模型、Hashmap模型提出一种以数据实体之间关联关系为核心的混合数据模型,即采用图数据模型描述数据实体之间的关联关系,采用关系模型描述数据实体的结构化属性,采用Hashmap模型描述实体的内容;并分别采用图数据库、关系数据库、键值数据库或分布式文件系统来实现上述数据模型;并采用恰当的策略优化数据实体的关系查询、属性查询和内容查询的优先顺序来提高数据的查询检索效率。具体地,为了实现上述技术目的,本专利技术采用以下技术方案:一种针对高度关联大数据的存储方法及管理系统包括:1)建立针对高度关联大数据集的混合数据模型;进一步地,所述混合数据模型包括图数据模型、关系模型、Hashmap模型。进一步地,所述图数据模型是指用节点表示数据实体,用连接节点的边表示数据实体之间的联系的数据模型。进一步地,所述关系模型是指关系数据库中采用的规范化模型,即用二维表的形式表示实体和实体间联系的数据模型。本技术方案中只采用二维表来描述实体的属性。即关系模型一般是用来存实体和实体之间联系的,但是本专利技术在混合数据模型中仅将其用来描述实体的属性。进一步地,所述Hashmap模型是指采用键来存储和检索后面的值的数据模型。Hashmap模型的实现形式可以是键值数据库或分布式文件系统,两者都可以。进一步地,混合数据模型的构建方法如图1所示:每个数据实体都具有一个实体类型和一个唯一的ID号;数据实体的属性则采用关系模型中的二维表的形式来描述,即每种实体类型将对应一个形如[数据实体ID|属性A|属性B......]的二维表;Hashmap模型中的键为数据实体的ID号,而值为数据实体的原始内容;数据实体之间的关联通过图数据模型表示,即图数据模型中的一个节点就表示一个数据实体,该节点将被标识上对应数据实体的类型和ID号,而节点之间的边则表示数据实体之间的关联关系;而同一个实体的属性和内容之间的关联则通过实体ID号的映射来表示。2)与上述混合数据模型匹配的高度关联大数据的存储方法和管理系统;进一步地,所述高度关联大数据的存储方法和管理系统如图2所示,包括:存储模块、统一数据管理模块和辅助索引机制。进一步地,所述存储模块是指存储数据实体的多个数据库或文件系统,即用以存储数据实体之间联系的图数据库,用以存储数据实体原始内容的键值数据库或分布式文件系统,用以存储数据实体属性的关系数据库。其中,所述图数据库实现了图数据模型,即每个数据实体被存储为图数据库中的一个节点,该节点具有实体ID的标识和实体类型的标识。所述键值数据库或分布式文件系统实现了Hashmap模型。可以但不限于用实体ID作为键。当采用非实体ID作为键时(例如,若干个实体存储在一起时,可以用存储时间或实体ID的组合作为键),则需要构建一个辅助索引来提高查询效率,即通过实体ID索引到实体内容对应的键。该辅助索引可以实现为关系数据库中的一个表。所述关系数据库实现了关系数据模型及辅助索引机制,即为每个实体类型构建一张数据表[实体ID|属性A|属性B......],实体ID是其主键。进一步地,所述统一数据管理模块,主要实现了数据实体的关联关系、属性、数据内容在不同数据库或文件系统中的增加、删除、更新、查询功能,并采用恰当的策略优化数据实体的关系查询、属性查询和内容查询的优先顺序来提高数据的查询检索效率。进一步地,所述辅助索引机制,主要用以提高常见查询的效率,即为经常作为查询条件的属性或属性组合构建索引,以实现对实体ID的快速检索。此外,还包括采用非实体ID作为键值数据库或分布式文件系统的键时构建的辅助索引表。进一步地,所述数据增加流程如下:步骤A1:将新增数据实体的原始内容存入键值数据库或分布式文件系统,其键设为实体ID或其他唯一标识。若采用非实体ID的其他唯一标识,则在关系数据库中应事先建立好用于辅助索引的表[实体ID|其他唯一标识],而在新增数据实体时,向该表插入“新增数据实体ID,新的其他唯一标识”的对应关系记录。步骤A2:提取新增数据实体的属性值,并将这些属性值插入该数据实体的类型所对应的关系表中,新增记录形如“实体ID|属性A|属性B......”。步骤A3:提取新增数据实体与其他数据实体的关联关系,在图数据库中插入新的节点表示新增数本文档来自技高网
...
一种高度关联大数据的存储方法及管理系统

【技术保护点】
一种高度关联大数据的存储方法,其步骤为:1)为每一数据实体设置一实体类型和唯一的ID号;2)采用关系模型中的二维表存储数据实体的属性;采用Hashmap模型存储数据实体的内容;3)通过数据实体ID号对同一数据实体的属性和内容之间建立关联关系;采用图数据模型存储数据实体之间的关联关系。

【技术特征摘要】
1.一种高度关联大数据的存储方法,其步骤为:1)为每一数据实体设置一实体类型和唯一的ID号;2)采用关系模型中的二维表存储数据实体的属性;采用Hashmap模型存储数据实体的内容;3)通过数据实体ID号对同一数据实体的属性和内容之间建立关联关系;采用图数据模型存储数据实体之间的关联关系。2.如权利要求1所述的方法,其特征在于,采用图数据模型存储数据实体之间的关联关系的方法为:将图数据模型中的一个节点表示一个数据实体,在该节点上标识对应数据实体的实体类型和ID号,利用节点之间的边表示数据实体之间的关联关系。3.如权利要求1所述的方法,其特征在于,所述Hashmap模型中,以数据实体的ID号为键,数据实体的内容为键值。4.如权利要求1所述的方法,其特征在于,采用关系模型中的二维表存储数据实体的属性的方法为:将每种实体类型的数据实体的属性采用一二维表进行存储,其格式为:[数据实体ID|属性A|属性B......]。5.如权利要求1所述的方法,其特征在于,所述Hashmap模型中,将若干数据实体的内容进行合并存储;其中以存储在一起的若干数据实体的存储时间为键,存储在一起的若干数据实体的内容为键值,并且构建一数据实体ID索引到实体内容对应的键的索引;或存储在一起的若干数据实体的存储时间及其ID的组合作为键,存储在一起的若干数据实体的内容为键值,并且构建一数据实体ID索引到实体内容对应的键的索引。6.一种高度关联大数据的管理系统,其特征在于,包括存储模块、统一数据管理模块;其中,存储模块包括用以存储数据实体内容的Hashmap模型,用以存储数据实体属性的关系模型,用以存储数据实体之间关联联系的图数据模型;每一数据实体设置一实体类型和唯一的ID号,通过数据实体ID号对同一数据实体的属性和内容之间建立该关联关系;所述统一数据管理模块,用于对数据实体的关联关系、属性、数据内容在存储模块中的增加、删除、更新、查询。7...

【专利技术属性】
技术研发人员:李昊张敏付艳艳惠榛陈震宇张宗福
申请(专利权)人:中国科学院软件研究所
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1