集中式可扩展融合型多维复杂结构关系数据的存储方法

文档序号:10724990阅读:517来源:国知局
集中式可扩展融合型多维复杂结构关系数据的存储方法
【专利摘要】本发明公开了一种用于构建集中式可扩展融合型多维复杂结构关系数据的存储方法,主要内容包括,制定数据传输接口格式、动态配置属性参数、构建多维数据集关系数据库、构建多维数据集关系数据库中的关系数据元祖模型、构建多维数据集关系数据库中的关系数据对象模型、构建维度可扩展的多维数据集关系数据库和构建可扩展融合型复杂结构关系的多维数据集关系数据库。本发明适合存储、分析和管理企业的大中小规模的复杂数据,为面向用户的企业级大数据集成平台提供有效和有质量保障的数据,并提供可扩展和可用的数据存储和访问技术,解决了半结构化、结构化和非结构化数据、小数据和大数据、实时数据和历史数据的入库和查询性能问题。
【专利说明】
集中式可扩展融合型多维复杂结构关系数据的存储方法
技术领域
[0001]本发明属于企业级Web应用平台开发技术领域,特别涉及一种集中式可扩展融合 型多维复杂结构关系的数据存储方法。
【背景技术】
[0002] 数据存储不仅是企业级Web数据集成的基础,也是所有应用平台的重要构成部分。 数据存储方式决定了应用平台对数据的访问和处理方式。不同的数据特点和用户对数据处 理方式的不同需求,决定了数据存储模型的不同。合理的数据存储技术会从数据处理流的 源头上保障企业级Web数据集成的可用性和扩展性。
[0003] 传统的关系数据库存储技术经过了近40年的发展,早已成为了一种成熟的主流数 据管理和分析技术,迄今为止,仍在不断地演进。关系数据库存储技术的主流应用包括联机 分析处理(0LAP)应用、联机事物处理(0LTP)应用以及面向主题的数据仓库等。由于SQL语言 的标准化,在访问关系数据库数据时,将其作为关系数据库的主要存取语言,且经过不断扩 充和应用,其功能和表达能力已不断地增强。
[0004] 但是在胜任大数据分析任务方面,关系数据库存储技术在扩展性和可用性方面遇 到了很大的障碍。Tony Bain在2009年的论文中就探讨过关系数据库的末日是否己经来临 的问题(T.BAIN,ls the relational database doomed,2009.http:// www.readwriteweb.com/enterPrise/2009/02/is-the-relational-database-doomed.PhP.)。该文献指出关系数据库在伸缩性上会遇到一些挑战,尤其是在高负荷环境 中,如Web Services发布应用程序时,应用程序对数据库的伸缩性需求会十分明显。而且, 现有关系数据库要在实际的系统中应用,才能表述出真正的逻辑关系内涵。否则,如果关系 数据库脱离了系统应用,就数据库而言,没有任何价值。
[0005] web技术的发展以及XML语言的出现,导致关系模型扩展、对象模型及相关技术融 合关系数据库、多维关系数据库等第三代数据库技术应运而生。为了更加适合用户和开发 者的真实需求,其中,多维关系数据库中的多维数据模型可以使数据的建模更加简单,且极 大地缩短了执行复杂关系数据处理的时间,可将关系数据库中需要建立的许多表格的数据 看做是存放在一个"立方体"中,这个"立方体"有很多"面",这些"面"将数据进行分类和相 互映射,可以快速获取数据,并且清除了冗余的数据。关系模型扩展是指在关系数据库基础 上,以二维关系来表示数据的多维概念的模型。面向对象模型由于其模块化和强大的内部 操作能力,简化了应用程序的维护和升级,可以有效地提高开发人员的生产率。第三次变革 的数据库技术代表,如1997年出现的InterSystems公司的Cache,它利用多维数据模型来描 述数据之间的关系,是传统的关系数据库的扩展,突破了传统关系数据库的局限,适合 Client/Server环境下的突发大负载的情况。
[0006] 但是,第三代数据库,如面向对象的关系数据库,虽然其理论完美,但其系统的市 场发展并不理想,主要原因在于,第三代数据库产品的设计思想是想用新型数据库系统来 取代现有的数据库系统,这对多年来一直运用传统数据库并积累了大量数据的用户而言, 无法承受由于新旧数据间的转换而导致的巨大工作量及费用。
[0007] 新一代数据库技术是在大数据的环境下,为满足面向用户和面向应用领域开发的 需求而出现的,是数据库系统发展的第四次大的变革。它是SQL( Structured Query Language)和NoSQL技术融合的产物,而不仅只是NoSQL数据库或代表关系数据库的SQL数据 库,是将NoSQL技术的优点融入到关系数据库中,形成了称之为NewSQL的数据库。NoSQL数据 模型的思想:关系数据模型主要分析数据间的结构和关系,其设计理念是"面向答案"; NoSQL数据模型是对数据的存取方式着手,其设计理念是"面向问题"。NoSQL数据模型在设 计时,对比关系数据模型,需要对数据结构和算法有更深的理解。将二者相互融合为NewSQL 模型,可以适应新的数据环境和用户需求,可以解决大数据的结构化、半结构化和非结构化 的复杂数据结构关系问题。NewSQL存储管理技术中的NoSQL和关系数据库管理技术是相互 补充的关系,NewSQL既实现了NoSQL的核心特性,也实现了关系数据库的支持SQL或ACID (Atomicity,Consistency,Isolation,Durability)特性,且具有可配置的持久化机制。
[0008] 当前,NewSQL数据库的代表如Facebook、MapReduce与RDBMS(关系数据库管理系 统)的融合及Hive(基于Hadoop的一个数据仓库工具)Jacebook(-个社交网络服务网站) 数据分析系统就是一个典型的NewSQL数据库范例,海量的数据迫使Facebook使用新的数据 处理架构。在Facebook系统中,关系数据库系统负责0LTP类的事务处理,Hive系统进行重要 的分析处理。经过Hive系统的分析和聚集的数据结果,可以重新注入关系数据库系统中。 MapReduce (-种用于大规模数据集并行运算的编程模型)与RDBMS的融合是对MapReduce与 RDBMS的混合技术研究,由于关系数据库和MapReduce技术各有优缺点,如何融合关系数据 库和MapReduce技术,设计同时具备两者优点的技术架构,既有MapReduce的高度扩展性和 容错性,又有RDBMS的高性能,也是大数据分析技术的研究趋势。
[0009] 在企业级Web应用平台开发技术领域,企业级Web应用平台系统的数据处理流程技 术和企业对数据存储、分析和管理的实际需求,是影响企业级Web数据存储技术模型设计和 构建的两个主要因素。首先,企业级Web应用平台系统的数据处理是对S0A( Service Oriented Architecture)架构下的结构化、半结构化和非结构化混合大中小型数据进行处 理,其面向服务的数据处理流程技术与传统的数据处理流程技术有较大的差异;其次,当企 业数据的来源不断增加,复杂的数据来源,会导致数据类型持续增多,产生复杂的"结构 化"、"半结构化"和"非结构化"混合式大中小型多维度数据类型。因而,传统的小规模数据 存储技术已经不能适应当前企业级数据的研究和应用。再者,对复杂结构的多维大数据的 有效数据存储模式的研究也一直是当前国内外研究的热点和重要课题之一。
[0010] 综观当前国内外研究的进展与成果,在企业级Web应用平台开发技术领域的数据 存储技术部分,复杂结构的多维大中小型关系数据的存储技术研究中还存在着以下明显的 问题及亟待解决的技术难点:
[0011] (1)中小数据的实时在线处理,大数据的历史查询和分析处理。
[0012] (2)结构化、半结构化和非结构化数据的处理。
[0013] (3)可变化的层次结构多维度处理。
[0014] (4)可自定义面向用户和面向主题的历史数据查询。
[0015] (5)面向用户的可动态新增、删除和变更维度和主题的处理;可扩展性维度及维度 在B/S(Browser/Server)结构下能层次树状显示。这既是企业用户的迫切需求,也一直是企 业级多维应用软件扩展性的瓶颈之一。
[0016] (6)仅使用传统的数据存储管理模式一一关系数据模式已经不能胜任对高度稀疏 和高维度复杂数据的分析工作,而企业大数据通常是高度稀疏和高维度的。
[0017] 为了适应新环境的发展,需要研究新的数据存储与处理方法,开发新的数据存储 与处理技术。

【发明内容】

[0018] 针对现有企业级Web应用平台开发技术领域中数据存储技术所存在的问题,本发 明的目的旨在提供一种集中式可扩展融合型多维复杂结构关系数据的存储方法,以满足对 企业中高度稀疏和高维度的复杂大数据进行分析工作的迫切需求。
[0019] 本发明的方法是利用数据库技术和Web技术相结合来构建企业级Web数据集成的 数据存储中心,基本内容概括起来主要包括五个方面,一是多维数据集关系数据库构建方 法;二是NoSQL思想和技术;三是关系数据对象模型的构建方法;四是维度的可扩展性设计 方法;五是建立原型系统框架。
[0020] 本发明的目的可通过采用由以下技术措施构成的技术方案来实现。本发明提出的 集中式可扩展融合型多维复杂结构关系数据的存储方法,运行实施于计算机运行的企业级 Web应用平台软件系统的客户端、服务器和数据库的三层结构中,其方案主要包括以下步 骤:
[0021] (1)制定数据传输接口格式:制定所需集成的异构数据库数据、本系统结构的实时 数据和历史数据进入多维数据集关系数据库的接口格式,制定多维数据集关系数据库与企 业级Web应用平台原型软件系统客户端界面之间数据的存储与访问的格式;
[0022] (2)动态配置属性参数:在由计算机运行的企业级Web应用平台原型软件系统的交 互界面,动态配置多维数据集关系数据库所需的属性参数;
[0023] (3)构建多维数据集关系数据库:为了在由计算机运行的企业级Web应用平台软件 系统客户端,以层次化结构展现多维数据,如η维,对系统数据库的设计。即采用关系数据库 技术,结合多维数据集技术,以"基础数据表"为中心,采用维度表关联"基础数据表"的雪花 型结构,构建多维数据集关系数据库;
[0024] (4)构建多维数据集关系数据库中的关系数据元祖模型:在多维数据集关系数据 库中,将来源于客户端计算机的已经清洗过的结构化元数据,按照数据库规范化理论设计 后,得到完整的实体数据,再将这些实体数据存储到维度可扩展的多维数据集关系数据库 中多个表的元组中去,这些表是面向存储的元组级别的关系数据模式表,如此组成多维数 据集关系数据库中的关系数据元祖模型;
[0025] (5)构建多维数据集关系数据库中的关系数据对象模型:在多维数据集关系数据 库中,针对来源于客户端计算机已经清洗过的半结构化和非结构化数据,经过客户端、服务 器和数据库的访问和处理,用关系数据对象模型的构建方法,生成多维数据集关系数据库 中的关系数据对象模型;
[0026] (6)构建维度可扩展的多维数据集关系数据库:在多维数据集关系数据库中,设计 逻辑上的由"维度"、"维度成员"和"维度连接中间表"三部分组成的维度管理模块,以维度 可扩展性方法,构建维度可扩展的多维数据集关系数据库;
[0027] (7)构建可扩展融合型复杂结构关系的多维数据集关系数据库:在维度可扩展的 多维数据集关系数据库的关系数据元组模型中,对结构化数据的处理,采用SQL技术,用SQL 语言编写代码;对半结构化和非结构化数据的处理,采用NoSQL思想,用SQL语言编写"嵌套 集合"算法代码,实现NoSQL的通用数据建模技术。利用SQL和NoSQL技术,经过客户端、服务 器和数据库的访问和处理,生成可扩展融合型复杂结构关系的多维数据集关系数据库;
[0028] (8)充实和完善关系数据存储系统:反复进行(1)至(7)的步骤,不断充实和完善企 业级Web应用平台软件系统中所建立的集中式可扩展融合型多维复杂结构关系数据存储系 统,至达到企业对数据的完整性要求、面向用户和主题的数据存储和查询、半结构化和非结 构化数据的客户端的层次结构展现和动态修改维度和主题等的目的。
[0029] 本发明进一步的技术方案,构建好的可扩展融合型复杂结构关系的多维数据集关 系数据库,最好通过计算机运行的企业级Web应用平台软件系统的用户应用界面,使用至少 包括录入、查询、审核、主题或指标动态配置的功能,对在计算机运行的企业级Web应用平台 软件系统中的所建立的集中式可扩展融合型多维复杂结构关系数据存储系统管理中心进 行应用验证。
[0030] 在本发明的上述技术方案中,步骤(4)中所述来源于客户端计算机的结构化元数 据最好是已经清洗过的结构化元数据,以减少数据的冗余。
[0031] 在本发明的上述技术方案中,在步骤(5)中优先采用下述方法对客户端、服务器和 数据库进行访问和处理:在服务器中,通过嵌套集合算法,生成对象图,将对象图保存到计 算机运行的企业级Web应用平台软件系统的维度可扩展多维数据集关系数据库表中;在客 户端运行的计算机,经服务器端对数据库进行访问,取出数据库中的相关模型数据后至服 务器中,用堆栈方法将数据生成对象图,再将此对象图经过转换为JS0N格式保存,再传送至 客户端;最后运行的客户端计算机,通过解析接收的JS0N格式文件,装载到界面显示出树状 层次数据。
[0032]在本发明的上述技术方案中,在步骤(6)中优先采用将Web应用系统中所有维度以 表的行记录方式保存到多维数据集关系数据库的维度管理模块中,并利用"嵌套集合"模型 算法来实现维度管理模块的维度信息的层次结构存储和访问,形成维度的可扩展性方法, 构建维度可扩展的多维数据集关系数据库。
[0033]本发明提供的集中式可扩展融合型多维复杂结构关系数据的存储方法,基于 NoSQL与面向对象的建模技术所构建的关系数据对象模型及其结果,构成了多维关系数据 库中的层次对象模型,以关系数据元组模型为主,以关系数据对象模型为补充,共同构建本 发明模型,弥补了传统关系数据模型的缺陷,使得本发明更加适合用来构建S0A架构下的数 据存储及管理中心。本发明所具有的优点和技术效果主要体现在以下方面:
[0034] (1)是个集中式多维数据存储模型,适合企业的大中小规模的数据存储、分析和管 理。
[0035] (2)发明方法的核心思想是采用多维数据集关系数据模型、数据仓库模型和NoSQL 思想及技术三者结合共同创建可扩展的融合型多维数据存储管理中心。"集中式可扩展融 合型多维复杂结构关系数据的存储方法"是企业级Web大数据集成的数据存储管理中心构 建的关键模型方法,据"集中式可扩展融合型多维复杂结构关系数据的存储方法"建立的数 据存储及管理中心,实现了面向用户,而不仅是面向存储的需求。
[0036] (3)多维数据集关系数据库与数据仓库的融合技术。该融合技术将企业中的实时 在线数据集成到多维数据集关系数据库,用"一致性"原则满足企业数据的唯一性要求;将 历史数据集成到数据仓库中,便于海量数据的统计、计算和查询,提升了海量数据的查询效 率。
[0037] (4)多维数据集关系数据库设计方法。发明中涉及的多维数据集关系数据模型在 逻辑上组合应用关系数据元组模型和关系数据对象模型,用于解决企业中结构化、半结构 化和非结构化数据的存储和可变的层次结构展现问题。
[0038] (5)将NoSQL技术的嵌套集合算法改进后设计和实现维度的可扩展性方案。在嵌套 集合算法中增加"成员路径"参数,记录各节点所在树中的位置,查找和插入节点时能避免 循环嵌套,可以将时间复杂度从原来的〇(n)降到0(1),极大地提高了查询效率。
[0039] (6)设计关系数据对象模型的构建方法和技术,并给出了其算法实现。
【附图说明】
[0040] 图1是多维数据集关系数据库设计框图。
[0041 ]图2是多维数据集关系数据模型图。
[0042] 图3是关系数据对象模型的研究框架图。
[0043] 图4是可扩展融合型数据存储模型框图。
[0044] 图5是改进型雪花型结构模型例图。
[0045] 图6是基于EJB(Enterprise Java Beans)融合型架构下的数据存储管理中心图。 [0046]图7是层次结构的集合关系及其树形结构图。
[0047]图8是原型系统功能模块图。
[0048] 图9是原型系统界面指标录入图。
[0049] 图10是原型系统界面指标审核图。
[0050] 图11是原型系统指标查询数据图。
[0051] 图12是原型系统指标查询图表图。
[0052] 图13是原型系统指标动态配置图。
[0053]图14是原型系统新增"数量维度"的维度成员"数值维度测试000"例图。
[0054]图15是JS0N格式文件图
【具体实施方式】
[0055] 为了更清楚的理解本发明,以下对发明的详细内容、并结合附图和发明人依本发 明的技术方案完成的实例对本发明作进一步的详细论述。
[0056] 1、构建多维数据集关系数据库
[0057]针对企业级Web数据存储管理中实际需求,既能存储中小型多维实时数据,又能多 维钻取、查询和分析海量历史数据,还要面向主题的多维度查询的问题,本发明提出构建多 维数据集关系数据库来解决该需求。本发明通过利用现有的关系数据库来设计多维数据集 和维度,采用关系数据库技术结合多维数据集技术,构建多维数据集关系数据库,可以实现 "一对多"和"多对多"关系,来清晰地表达多维概念。将关系数据库作为基础,在关系数据库 中设计多维数据模型,并将维度和"基础数据表"的数据以行记录形式存放在关系数据库中 的二维表中,构建以"基础数据表"为中心,维度表关联"基础数据表"的雪花型结构。本发明 采用雪花型结构来去除数据的冗余。数据虽然存放于二维关系表结构中,但是维度表与"基 础数据表"间的雪花型结构使数据逻辑上的关系是η维立体的,即用雪花结构将η维的数据 降维平铺在一个平面上,数据在被访问读出时,又将平面上的雪花结构关联数据抽象出来, 升维还原为η维数据,送到服务器中待被处理。处理η维数据的工作在服务器端完成,通过构 建η维数组来保存η维数据,再用JSON(基于JavaScript语言的轻量级的数据交换格式)格式 文件记录和封装η维数组及其数据,传送至客户端,解析JSON格式文件,就可以将η维数据以 层次化结构展现出来。如此,本发明设计了多维数据集关系数据库的构建方法。
[0058]多维数据集关系数据库设计框图如图1。
[0059] 所述多维数据集关系数据模型应满足如下要求:
[0060] (1)主要存储和管理实时数据,"基础数据表"用"一致性"原则保证数据的唯一性, 满足企业对实时数据的完整性需求。
[0061] (2)能处理主流的结构化数据和非主流的层次结构数据。
[0062] (3)能管理数据仓库的数据。
[0063] (4)采用多维数据集技术和关系数据管理技术,基础数据表与维度表之间的结构 以雪花型结构实现。
[0064] (5)通过逻辑上的维度管理模块,在客户端就可以实现面向用户的维度新增、变更 和删除功能操作,而不必更改源代码和数据库表结构。
[0065] 多维数据集关系数据模型如图2所示。
[0066] 2、构建关系数据元组和对象模型
[0067] 针对企业级Web应用平台软件系统面向用户而不仅是面向存储、层次结构数据的 存储和树形展现的需求,在维度可扩展的多维数据集关系数据库中,在数据库的关系数据 元组模型基础上,从面向用户角度来研究关系数据模式,以对象的观点来研究关系数据和 构建关系数据模型,设计关系数据对象模型的构建方法。在关系数据库上增加对象级别的 关系数据建模,以作为关系数据库上元组级别的关系数据建模的补充。
[0068] 本发明的关系数据对象模型分两步构成。首先,保存层次结构数据到数据库。将来 源于客户端的已经清洗过的元数据,在服务器中,按照嵌套集合算法,进行预排序处理,生 成节点左右界加权的对象图,接着创建对象索引,最后将关系数据对象集合保存到数据库 表中。其次,由客户端的查询或装载事件触发请求,经服务器端对数据库进行访问;取出数 据库中的相关模型数据后,在服务器中,将数据用堆栈方法生成对象图,再将对象图封装, 转换为JS0N格式,其目的是保存具有多维数组的对象图,然后将封装好的数据传送至客户 端;在客户端,接收JS0N格式的数据对象图后,解析接收的JS0N格式文件,还原成一棵树状 层次数据,装载到界面显示出来,或者供用户按照先序遍历算法进行搜索,查询节点。
[0069] 关系数据对象模型的研究框架图如图3所示。
[0070] 3、维度的可扩展性设计方法
[0071] 针对企业级Web应用平台软件系统的面向用户的多维度扩展性需求问题,发明维 度可扩展性设计方法。在多维数据集关系数据库构建的基础上,该方法是一改进型雪花结 构模型的构建方法。即通过设计逻辑上的维度管理模块,由"维度"、"维度成员"和"维度连 接中间表"三部分组成。首先,将Web应用系统中所有维度都放到维度管理模块中,改变每个 具体的维度在数据库表中以列字段枚举方式存在,而是以表的行记录方式保存。这样,我们 可以随时增加和删除表的行记录来增添和删减维度,而不会影响表的结构更改。其次,用关 系数据对象模型来设计和构建维度管理模块,利用改进的NoSQL的通用数据建模技术一一 "嵌套集合"模型算法来实现维度管理模块的维度信息的层次结构存储和访问。
[0072] 设计的可扩展性维度的方案,可以实现两种功能。一是可以在客户端由用户直接 进行增添和删除维度功能,而不必修改数据库和程序代码;二是维度在B/S结构下能层次树 状显示,以便于下拉选择维度成员节点和查询分析时快速查找节点。用关系数据对象模型 来设计和构建维度管理模块,本文用改进的NoSQL的通用数据建模技术一一"嵌套集合"模 型算法来实现维度管理模块的维度信息的层次结构存储和访问。嵌套集合模型特别适合层 次结构中节点类型经常变化的系统。
[0073] 可扩展融合型数据存储模型如图4所示。
[0074] 改进型雪花型结构模型如图5所示。
[0075] 4、集中式可扩展融合型多维复杂结构关系数据存储系统的应用型框架
[0076]在上述原理、方法研究的基础上,本发明基于EJB融合型架构下,设计和构建了可 扩展融合型多维复杂结构关系数据存储系统的一个集中式应用型框架,组成了企业级Web 应用平台原型软件系统的存储管理中心部分,实现可扩展融合型多维复杂结构关系数据存 储方法的结构化、半结构化和非结构化数据的存储和可变的层次结构展现、维度可扩展、面 向用户和主题的历史数据查询等功能。
[0077]基于EJB融合型架构下的数据存储管理中心,如图6所示。
[0078] 实施例
[0079]发明人基于相关的系统架构设计、其他关键技术、本发明上述所论述的理论、方 法、算法和编程技术,开发了一个企业级Web应用平台原型软件系统一一"经济金融信息决 策管理系统",该原型软件系统的数据存储模块部分的功能实现是以本发明所论述的理论、 方法和算法来实现的。
[0080]以经济指标为例,关心的经济指标大致如下:
[0081 ] 表经济指标 [0082]

[0084] 主题的设定:
[0085] 由用户自己定义,通过配置主题下所涉及的相关指标,便可成功得到所需主题数 据。
[0086] 在以上16个指标中,对⑶P(Gross Domestic Product)指标而言,它是由16个门类 构成(其中16个门类又由98个大类组成),所以,本系统可以将⑶P也作为"GDP主题"来查询; 将其16个门类或90多个大类指标再加上GDP(现价)增速累计指标作为该主题涉及的相关内 容。
[0087]再例如,想自定义一个"四川企业压力主题",其中包含的指标大致有:GDP(第二产 业)、工业增加值、工业对⑶P的贡献率等,通过配置界面配置后,立刻就会得到"企业压力主 题"包含内容的所有信息,还可给出同比、环比、占比、增速等数据,并辅以图表展示,直观、 有效。
[0088] 原型系统数据存储模块设计如下面步骤:
[0089] (1)原型系统数据存储模块中数据获取和传输交互界面设计
[0090] 原型系统数据存储模块中数据获取和传输交互界面如图9所示。主要包含功能菜 单区、窗体数据显示区、窗体数据显示区的操作控件如输入框、按钮等功能数据区。其中功 能菜单区提供各种功能的树形层次结构展示;功能数据区的按钮为用户提供了各类确定性 功能操作如查询、删除、保存数据等,其他控件如录入框、GRID(网格)等控件则为数据的获 取、缓存和传输提供了界面交互接口,并通过上述控件来动态配置原型系统所需的属性参 数。
[0091] (2)构建多维数据集关系数据库
[0092]在关系数据库基础上实现了多维数据模型,且将关系数据库的数据清洗转化为数 据仓库中的数据,并通过多维数据关系数据库管理数据仓库。
[0093] 多维数据模型(雪花型结构)关系数据库设计的特色在于:
[0094] 特点一是既可以实现和满足用户的复杂需求一一将各部门独立的、纵向的经济金 融数据横向地综合汇集,便于使用者分析决策时对多部门数据同时选取、统计和对比;而 且,该行业数据量大,且维度(地区、机构等)和指标(GDP、汇率等)是可变化的,需要新增或 更改。
[0095] 特点二是又可以在关系数据库基础上,通过清洗关系数据库中的数据进入数据仓 库的事实表中,便于利用Cognos(在商业智能核心平台上,以服务为导向进行架构的一种数 据模型)平台的数据分析手段,提供不同维度,不同度量的数据分析展示,也可以实现按任 意维度进行所需数据的钻取功能。
[0096] (3)构建关系数据元组模型
[0097] 对不需要分层的结构数据,如GDP、汇率等,经过数据库规范化理论设计,得到完整 的实体数据,将这些数据存储到关系数据库元组级别关系数据模式中多个表的多个元组中 去,组成关系数据库中的关系数据元祖模型。
[0098] (4)构建关系数据对象模型
[0099] 对要以树形结构分层的非结构和半结化数据,如指标主题、维度及成员,的存储采 用关系数据对象模型构建方法一嵌套集合模型。对指标主题、维度及成员等要分层的树形 结构数据的存储采用嵌套集合模型,其优点为:
[0100] (A)使系统趋于形成在关系模型中融合面向对象的数据结构。
[0101] (B)DB2(美国IBM公司开发的一套关系型数据库系统)数据库使用SQL语言,SQL本 身就是一种面向集合的语言。
[0102] (C)便于更好和高效率地检索整个分类表。
[0103] 对比邻接表模型,搜索整个树形时邻接表模型需要为每层添加一个自连接,随着 层的增加,自连接变得越来越复杂,检索性能自然下降,而嵌套集合模型,不再是线与点了, 是集合,可以不用多个自连接就可以检索出所需路径,而且,检索所有叶子节点,其方法比 邻接表模型的left join(左连接)方法简便多了,当然检索效率被大大地提高了。再者,实 际需求是树的层次深度可能很大,数据信息量庞大。综合以上优点和实际需求,数据库系统 设计对指标主题、维度及成员等要分层的树形结构数据的存储采用嵌套集合模型。
[0104] 层次结构的集合关系和层次结构的树形结构,如图7所示。
[0105] (5)维度的可扩展性设计
[0106] 为了解决用户实际需求一维度和指标是可变化的,需要新增或更改设计。采用本 发明的维度可扩展性设计方法,将指标、维度的存储设计从常规字段模式变为新的记录关 联模式来适应面向用户的实际需求。数据库关系表的这一功能设计,使得系统在数据库层 就具备可以开发动态新增或更改指标维度的基础。用户在原型系统的交互界面就可以自定 义主题,自主选择"主题"下包含的指标,实现"主题"的动态构成。
[0107] 经过步骤(1)至(5),就完成了集中型可扩展融合型复杂结构关系的多维数据集关 系数据库的构建工作。
[0108] (6)功能模块设计
[0109] 运行的原型系统的用户应用界面,使用其录入、查询、审核、主题或指标动态配置 等功能,可以体现原型系统中据本发明所论述的理论、方法和算法研发的数据存储模块部 分的功能实现。原型系统界面功能分别如下图所示。其中,原型系统功能模块如图8所示,原 型系统界面指标录入如图9所示,原型系统界面指标审核如图10所示,原型系统指标查询数 据如图11所不,原型系统指标查询图表如图12所不,原型系统指标动态配置如图13所不,原 型系统新增"数量维度"的维度成员"数值维度测试〇〇〇"如图14所示。
【主权项】
1. 一种集中式可扩展融合型多维复杂结构关系数据的存储方法,其特征在于包括以下 步骤: (1) 制定数据传输接口格式:制定所需集成的异构数据库数据、本系统结构的实时数据 和历史数据进入多维数据集关系数据库的接口格式,制定多维数据集关系数据库与企业级 Web应用平台原型软件系统客户端界面之间数据的存储与访问的格式; (2) 动态配置属性参数:在由计算机运行的企业级Web应用平台原型软件系统的交互界 面,动态配置多维数据集关系数据库所需的属性参数; (3) 构建多维数据集关系数据库:采用关系数据库技术,结合多维数据集技术,以"基础 数据表"为中心,采用维度表关联"基础数据表"的雪花型结构,构建多维数据集关系数据 库; (4) 构建多维数据集关系数据库中的关系数据元祖模型:在多维数据集关系数据库中, 将来源于客户端计算机的已经清洗过的结构化元数据,按照数据库规范化理论设计后,得 到完整的实体数据,再将这些实体数据存储到维度可扩展的多维数据集关系数据库中多个 表的元组中去,这些表是面向存储的元组级别的关系数据模式表,如此组成多维数据集关 系数据库中的关系数据元祖模型; (5) 构建多维数据集关系数据库中的关系数据对象模型:在多维数据集关系数据库中, 针对来源于客户端计算机已经清洗过的半结构化和非结构化数据,经过客户端、服务器和 数据库的访问和处理,用关系数据对象模型的构建方法,生成多维数据集关系数据库中的 关系数据对象模型; (6) 构建维度可扩展的多维数据集关系数据库:在多维数据集关系数据库中,设计逻辑 上的由"维度"、"维度成员"和"维度连接中间表"三部分组成的维度管理模块,以维度可扩 展性方法,构建维度可扩展的多维数据集关系数据库; (7) 构建可扩展融合型复杂结构关系的多维数据集关系数据库:在维度可扩展的多维 数据集关系数据库的关系数据元组模型中,对结构化数据的处理,采用SQL技术,用SQL语言 编写代码;对半结构化和非结构化数据的处理,采用NoSQL思想,用SQL语言编写"嵌套集合" 算法代码,实现NoSQL的通用数据建模技术;利用SQL和NoSQL技术,经过客户端、服务器和数 据库的访问和处理,生成可扩展融合型复杂结构关系的多维数据集关系数据库; (8) 充实和完善关系数据存储系统:反复进行(1)至(7)的步骤,不断充实和完善企业级 Web应用平台软件系统中所建立的集中式可扩展融合型多维复杂结构关系数据存储系统, 至达到企业对数据的完整性要求、面向用户和主题的数据存储和查询、半结构化和非结构 化数据的客户端的层次结构展现和动态修改维度和主题的目的。2. 根据权利要求1所述的集中式可扩展融合型多维复杂结构关系数据的存储方法,其 特征在于,通过计算机运行的企业级Web应用平台软件系统的用户应用界面,使用至少包括 录入、查询、审核、主题或指标动态配置的功能,对在计算机运行的企业级Web应用平台软件 系统中的所建立的集中式可扩展融合型多维复杂结构关系数据存储系统管理中心进行应 用验证。3. 根据权利要求1或2所述的集中式可扩展融合型多维复杂结构关系数据的存储方法, 其特征在于,在步骤(5)中,经过下述方法对客户端、服务器和数据库进行访问和处理:在服 务器中,通过嵌套集合算法,生成对象图,将对象图保存到计算机运行的企业级Web应用平 台软件系统的维度可扩展多维数据集关系数据库表中;在客户端运行的计算机,经服务器 端对数据库进行访问,取出数据库中的相关模型数据后至服务器中,用堆栈方法将数据生 成对象图,再将此对象图经过转换为JSON格式保存,再传送至客户端;最后运行的客户端计 算机,通过解析接收的JSON格式文件,装载到界面显示出树状层次数据。4. 根据权利要求1或2所述的集中式可扩展融合型多维复杂结构关系数据的存储方法, 其特征在于,在步骤(6)中,采用将Web应用系统中所有维度以表的行记录方式保存到多维 数据集关系数据库的维度管理模块中,并利用"嵌套集合"模型算法来实现维度管理模块的 维度信息的层次结构存储和访问,形成维度的可扩展性方法,构建维度可扩展的多维数据 集关系数据库。5. 根据权利要求3所述的集中式可扩展融合型多维复杂结构关系数据的存储方法,其 特征在于,在步骤(6)中,采用将Web应用系统中所有维度以表的行记录方式保存到多维数 据集关系数据库的维度管理模块中,并利用"嵌套集合"模型算法来实现维度管理模块的维 度信息的层次结构存储和访问,形成维度的可扩展性方法,构建维度可扩展的多维数据集 关系数据库。
【文档编号】G06F17/30GK106095862SQ201610390831
【公开日】2016年11月9日
【申请日】2016年6月2日 公开号201610390831.3, CN 106095862 A, CN 106095862A, CN 201610390831, CN-A-106095862, CN106095862 A, CN106095862A, CN201610390831, CN201610390831.3
【发明人】夏翔, 范轶翔, 黄宁, 王鹏
【申请人】四川大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1