CN208207819U - 一种基于可扩展节点集群的大数据分析处理系统 - Google Patents
一种基于可扩展节点集群的大数据分析处理系统 Download PDFInfo
- Publication number
- CN208207819U CN208207819U CN201821129591.2U CN201821129591U CN208207819U CN 208207819 U CN208207819 U CN 208207819U CN 201821129591 U CN201821129591 U CN 201821129591U CN 208207819 U CN208207819 U CN 208207819U
- Authority
- CN
- China
- Prior art keywords
- data
- olap
- database
- layer
- query
- 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.)
- Expired - Fee Related
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本实用新型公开了一种基于可扩展节点集群的大数据分析系统,其特征在于,其包括OLAP数据库层、OLAP服务器层和应用层,所述的OLAP数据库层采用可扩展节点集群的分布式数据库集群,按照维表和事实表方式组织数据;所述的OLAP服务器层将来自OLAP数据库层的底层数据定义为数据立方体,数据立方体通过OLAP多维引擎与应用层交互;所述的应用层可与OLAP服务器层交互,应用层将用户查询请求发送给OLAP服务器层,OLAP服务器层获取并解析用户查询请求,然后将查询结果返回给应用层。
Description
技术领域
本实用新型涉及数据分析领域,具体为一种基于可扩展节点集群的大数据分析处理系统。
背景技术
企业大数据的特点是数据规模巨大、数据量增长迅速,这使得数据的存储、处理和分析面临严峻挑战。解决容量和性能瓶颈的方法之一就是传统的scale-up模式,即升级数据库服务器的内存、CPU、磁盘,将SATA盘换成SSD盘等方式,但是服务器条件的改善并没有换来性能的线性增长。反观分布式数据库的scale-out方式,通过分布式处理方式,把数据分散到分布式系统的各个节点上并行处理,其扩展性更强,性价比也更高。
SMP架构的所有资源都是共享的,这导致了其扩展能力十分有限,随着CPU数量的增加,内存访问冲突也大量增加,使CPU性能大幅度降低,因此不适用于系统的扩展。
Greenplum作为一种分布式关系型数据库集群,自2005年发布以来,受到了广泛关注。特别是2015年开源之后,其开源社区在国内外拥有了很高的知名度。Greenplum采用了MPP架构,系统的可伸缩性和容错性较好,包括阿里巴巴、中信银行在内的许多知名企业都选择了部署Greenplum系统。Greenplum数据库被认为是业界最高性价比的数据仓库解决方案。
近年来,OLAP技术开始成为数据库研究领域的热点,它最初由IBM公司的E.F.Codd于1993年提出。OLAP建立在数据仓库的基础之上,用来实现数据的多维分析,满足了企业的实际需求,为企业决策提供了支撑。
有关OLAP的解决方案,目前比较流行的主要有基于SAS的OLAP系统、基于Oracle的OLAP系统和基于Microsoft的OLAP系统等。虽然国外的这些产品比较成熟,但由于习惯、语言和价格等因素的影响,不一定适用于国内的企业。一个好的OLAP分析系统必须具有足够的可扩展性和通用性,它应该可以方便地与各类大型数据仓库系统集成,而不是依赖于某个具体的DBMS,同时对客户端的第三方软件尤其是决策支持软件提供友好的接口。
在OLAP数年的发展过程中,遇到了一些阻碍:传统的OLAP技术,前端查询默认标准是MDX,不够普及和易用。OLAP软件在使用前需设计好模型,在此相关关系的数据范围内进行操作,这不足以应对业务需求的变换,可用性不高。OLAP可视化能力较弱,不支持SQL查询。
针对以上问题,OLAP出现了许多新的技术实现,例如可视化OLAP、大数据OLAP和办公OLAP技术。遵从OLAP分析的三个原则:多维、灵活交互和高速响应。如今,OLAP已成为商业智能领域决策支持方面非常重要的工具。国内外对OLAP系统方面的研究也越来越多,成果包括业界著名的开源OLAP引擎Mondrain、多维分析展示平台Saiku等。当前流行的OLAP分析工具有很多,但也存在一些缺点,例如价格昂贵,企业的安全性得不到保障等。
实用新型内容
1.要解决的技术问题
针对现有技术中存在的问题,本实用新型的目的在于提供一种基于可扩展节点集群的大数据分析处理系统,根据用户的数据分析需求,设计出满足商业智能(BI)领域需要的OLAP分析系统。
2.技术方案
为解决上述问题,本实用新型采用如下的技术方案。
一种基于可扩展节点集群的大数据分析处理系统,其特征在于,其包括OLAP数据库层、OLAP服务器层和应用层,
所述的OLAP数据库层采用可扩展节点集群的分布式数据库集群,按照维表和事实表的方式组织数据,将来自OLAP数据库层的底层数据定义为数据立方体,所述的数据立方体通过OLAP多维引擎与所述的应用层交互;其中,所述的OLAP多维引擎包括:
所述的OLAP服务器层用于数据的存储和调取,其包括:设置有多个数据节点的备份库和服务器,该服务器用于临时存储数据文件并向所述备份库请求可用的数据节点;
ROLAP设计器,用于定义多个区域,所述ROLAP设计器至少包括其中的一数据集区域和一设计面积区域;
信息获取器,用于在所述数据集区域获取多维数据库的数据模式信息,并将所述获取的数据模式信息以列表的方式在所述设计面积展现;
模式分析器,用于根据所述获取的数据模式信息,建立多维数据库的ROLAP分析模式;
扩展点集群组织器,用于根据已建立的多维数据库的ROLAP分析模式组织多维数据库的扩展点集群模型,并将组织的多维数据库的所述扩展点集群模型存储于语义对象存储文件中;
信息提示器,用于当所述数据集区域的数据集节点上不存在输入的事实表名称时,提示获取信息失败;
所述的应用层可与OLAP服务器层交互,应用层将用户查询请求发送给OLAP服务器层,OLAP服务器层获取并解析用户查询请求,然后将查询结果返回给所述应用层;其中,所述的查询请求基于关系数据库的ROLAP,包括:
接收装置,用于接收用户的数据查询请求;
确定装置,用于确定所述数据查询请求所对应的待查询数据的标识信息;
查询路径装置,用于根据确定出的所述标识信息,在预先建立的多维数据关系模型中,确定该标识信息所对应的查询路径;
查询处理装置,用于根据所述查询路径以及所述标识信息进行数据查询,生成查询结果;
数据关系装置,用于预先选定数据库中的事实表,将选定出的所述事实表作为主数据集,并确定该主数据集中的各属性信息,根据所述各属性信息,在所述数据库中确定各属性信息对应的各关联数据表,其中,所述关联数据表包括事实表和/或维表;将确定出的各关联数据表作为子数据集,建立各子数据集与所述主数据集之间的数据关系,形成所述多维数据关系模型。
其中,所述的服务器与备份库协同合作,所述的服务器获取所述主数据集的各单个数据块并依据单个数据块的大小分块以得到多个数据块,将第一数据块和第二数据块发送至第一可扩展节点,所述备份库控制所述第一可扩展节点选取与其相邻的第二可扩展节点,将所述第一数据块发送至所述第二可扩展节点;并将第三数据块发送至第一可扩展节点,所述备份库用于控制第一可扩展节点将所述第二数据块发送至所述第二可扩展节点,第二可扩展节点选取与其相邻的第三可扩展节点,将所述第一数据块发送至所可扩展述第三节点;重复上述过程直至全部数据块发送完毕,并使每个数据块创建N个副本;
进一步的,所述的OLAP多维引擎采用ROLAP服务器。
进一步的,所述的OLAP数据库包括通过互联网络进行连接的多个数据节点、控制节点和客户端,所述的数据节点相互独立,控制节点负责逻辑控制和与客户端进行交互,客户端获取客户数据并对数据进行计算分析。
进一步的,所述的数据节点采用JDBC方式、由执行效率跟踪装置完成,包括:连接单元、抓取单元、解析单元、分析单元,
所述连接单元,用于通过JDBC,建立与数据库的连接,向数据库发起SQL查询请求;
所述抓取单元,用于通过客户端内嵌到需要监控的WEB中间件或WEB容器,对JDBC中运行的SQL语句进行抓取,写入抓取到的JDBC中运行的SQL语句到分析数据库、或以文本方式对抓取到的JDBC中运行的SQL语句进行存储;
所述解析单元,用于解析所述存储的SQL语句,根据SQL的耗费时间,以及语法结构,解析所述存储的SQL语句,得出SQL语句执行的效率情况;
所述分析单元,用于根据所述得出的SQL语句执行的效率情况,定位分析每个SQL语句执行效率节点的信息,定位出关联的SQL语句以及关联的数据库表,并根据SQL的耗费时间罗列出最需要优化的SQL语句执行效率节点,给出SQL执行效率的优化方案。
进一步的,所述的数据节点连接Greenplum数据库。
进一步的,所述的数据立方体包括立方体、维、事实、度量、级别、级别成员。
进一步的,所述的应用层采用Saiku系统。
3.有益效果
相比于现有技术,本实用新型的优点在于:
1)本实用新型通过多维数据统计分析和模型构建企业员工、分公司、客户、商品、销售等方面的信息,为用户提供直观的报表展示。
2)系统具有稳定性,当增大数据量或者用户数量增加时,系统能够维持稳定,不会出现运行错误。
3)系统具有较短的响应时间,当用户在客户端提交查询请求后,系统立即响应请求,将查询请求提交给OLAP服务器,并及时将查询结果返回给客户端,不会因为维度的增加,系统响应时间和报表能力明显降低。
4)查询结果展示更加直观。
5)返回结果具有准确性,作为数据分析的系统,得到准确无误的查询结果是最重要的目的。
6)系统界面友好,系统应该允许用户自定义查询数据集,选择需要的报表呈现方式。界面美观大方,方便人机交互,便于用户使用。
7)系统兼容主流浏览器。
附图说明
图1为本实用新型的系统构架图;
图2为本实用新型的数据立方体的架构图;
图3为本实用新型的数据立方体的三维视图;
图4为本实用新型设计Modrain Schema的体系架构图;
图5为本实用新型创建数据立方体的流程图;
图6为本实用新型应用层的流程图;
图7为本实用新型OLAP多维引擎的流程架构图;
图8为本实用新型查询请求基于关系数据库的ROLAP流程图;
图9位本实用新型执行效率跟踪装置的流程图。
具体实施方式
下面将结合本实用新型实施例中的附图;对本实用新型实施例中的技术方案进行清楚、完整地描述;显然;所描述的实施例仅仅是本实用新型一部分实施例;而不是全部的实施例,基于本实用新型中的实施例;本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例;都属于本实用新型保护的范围。
一种基于可扩展节点集群的大数据分析处理系统,其特征在于,其包括OLAP数据库层、OLAP服务器层和应用层,
所述的OLAP数据库层采用可扩展节点集群的分布式数据库集群,按照维表和事实表的方式组织数据,将来自OLAP数据库层的底层数据定义为数据立方体,所述的数据立方体通过OLAP多维引擎与所述的应用层交互;
所述的OLAP服务器层用于数据的存储和调取,其包括:设置有多个数据节点的备份库和服务器,该服务器用于临时存储数据文件并向所述备份库请求可用的数据节点;
其中,所述的OLAP多维引擎包括:
ROLAP设计器,用于定义多个区域,所述ROLAP设计器至少包括其中的一数据集区域和一设计面积区域;
信息获取器,用于在所述数据集区域获取多维数据库的数据模式信息,并将所述获取的数据模式信息以列表的方式在所述设计面积展现;
模式分析器,用于根据所述获取的数据模式信息,建立多维数据库的ROLAP分析模式;
扩展点集群组织器,用于根据已建立的多维数据库的ROLAP分析模式组织多维数据库的扩展点集群模型,并将组织的多维数据库的所述扩展点集群模型存储于语义对象存储文件中;
信息提示器,用于当所述数据集区域的数据集节点上不存在输入的事实表名称时,提示获取信息失败;
所述的应用层可与OLAP服务器层交互,应用层将用户查询请求发送给OLAP服务器层,OLAP服务器层获取并解析用户查询请求,然后将查询结果返回给所述应用层;其中,所述的查询请求基于关系数据库的ROLAP,包括:
接收装置,用于接收用户的数据查询请求;
确定装置,用于确定所述数据查询请求所对应的待查询数据的标识信息;
查询路径装置,用于根据确定出的所述标识信息,在预先建立的多维数据关系模型中,确定该标识信息所对应的查询路径;
查询处理装置,用于根据所述查询路径以及所述标识信息进行数据查询,生成查询结果;
数据关系装置,用于预先选定数据库中的事实表,将选定出的所述事实表作为主数据集,并确定该主数据集中的各属性信息,根据所述各属性信息,在所述数据库中确定各属性信息对应的各关联数据表,其中,所述关联数据表包括事实表和/或维表;将确定出的各关联数据表作为子数据集,建立各子数据集与所述主数据集之间的数据关系,形成所述多维数据关系模型。
其中,所述的服务器与备份库协同合作,所述的服务器获取所述主数据集的各单个数据块并依据单个数据块的大小分块以得到多个数据块,将第一数据块和第二数据块发送至第一可扩展节点,所述备份库控制所述第一可扩展节点选取与其相邻的第二可扩展节点,将所述第一数据块发送至所述第二可扩展节点;并将第三数据块发送至第一可扩展节点,所述备份库用于控制第一可扩展节点将所述第二数据块发送至所述第二可扩展节点,第二可扩展节点选取与其相邻的第三可扩展节点,将所述第一数据块发送至所可扩展述第三节点;重复上述过程直至全部数据块发送完毕,并使每个数据块创建N个副本。
其中,所述的OLAP数据库层采用可扩展节点集群的分布式数据库集群,按照维表和事实表方式组织数据。所述的OLAP数据库包括通过互联网络进行连接的多个数据节点、控制节点和客户端,所述的数据节点相互独立,控制节点负责逻辑控制和与客户端进行交互,客户端获取客户数据并对数据进行计算分析。数据节点采用JDBC方式连接的Greenplum数据库。
所述的OLAP服务器层将来自OLAP数据库层的底层数据定义为数据立方体,所述的数据立方体包括立方体、维、事实、度量、级别、级别成员,数据立方体通过OLAP多维引擎与应用层交互;多维引擎使用了开源的ROLAP服务器Mondrain,客户端接口语言为MDX。
所述的应用层可与OLAP服务器层交互,应用层将用户查询请求发送给OLAP服务器层,OLAP服务器层获取并解析用户查询请求,然后将查询结果返回给应用层。应用层采用开源的Saiku (利用REST API与本系统相连),利用其友好的界面为用户提供直观的分析数据的方式。
具体实施过程如下,
一、OLAP数据库层设计
所述的OLAP数据库包括通过互联网络进行连接的多个数据节点、控制节点和客户端,所述的数据节点相互独立,每个节点只能访问自己的本地资源,例如内存、总线、I/O等,是一种完全无共享的结构。控制节点不再承担计算任务,控制节点只负责逻辑控制和与客户端进行交互,可以充分发挥各节点的I/O处理能力,能够实现海量数据的存储及处理,可以搭建在各种开放式的硬件平台上。客户端获取客户数据并对数据进行计算分析。
OLAP数据库有两个特点:一是线性,基于客户机/服务器架构完成;二是多维分析,从多个角度、多种层次对数据进行处理和分析,能够满足多维数据的查询和报表需求,并将结果直观地呈现给客户。
二、OLAP服务器层设计
OLAP服务器层将来自OLAP数据库层的底层数据定义为数据立方体Schema文件,所述的数据立方体包括立方体、维、事实、度量、级别、级别成员,数据立方体通过OLAP多维引擎与应用层交互;多维引擎使用了开源的ROLAP服务器Mondrain,客户端接口语言为MDX。其中,多维引擎包括:ROLAP设计器,用于定义多个区域,所述ROLAP设计器至少包括其中的一数据集区域和一设计面积区域;信息获取器,用于在所述数据集区域获取多维数据库的数据模式信息,并将所述获取的数据模式信息以列表的方式在所述设计面积展现;
模式分析器,用于根据所述获取的数据模式信息,建立多维数据库的ROLAP分析模式;
扩展点集群组织器,用于根据已建立的多维数据库的ROLAP分析模式组织多维数据库的扩展点集群模型,并将组织的多维数据库的所述扩展点集群模型存储于语义对象存储文件中;信息提示器,用于当所述数据集区域的数据集节点上不存在输入的事实表名称时,提示获取信息失败。
具体的,ROLAP设计器采用Flex技术定义出包含多个区域的 ROLAP设计器,其中,定义的ROLAP设计器的设计面积包括多个区域,分别为数据集区域、多维表区域、设计面积区域以及工具栏区域。设计人员可以向ROLAP设计器的数据集区域和多维表区域加载相应的数据表(如事实表和维表等),供设计人员和用户客户端查看。信息获取器在ROLAP设计器的数据集区域获取多维数据库的数据模式信息。具体实施时,可以在ROLAP设计器的数据集区域的数据集节点上输入事实表名称,事实是决策操作中最感兴趣的数据,通常记录了企业中经常动态发生的事 件,在关系型数据库中那些所记录数据经常动态变化的表可以作为事实表,事实表中包括若干字段信息。如果在数据集节点上查询到输入的事实表名称对应的事实表,信息获取器则获取该事实表中的字段信息,并将该获取的字段信息以列表的方式展现在ROLAP设计器的设计面积区域。
如果在数据集节点上不存在输入的事实表名称对应的事实表 (即查询不到对应的事实表),则信息提示器提示获取失败信息,比如提示“该结果表不存在,请修改表名称”,提示设计人员重新输入事实表名称。
模式分析器主要用于根据信息获取器获取的数据模式信息,建立多维数据库的ROLAP分析模式。
信息获取器在ROLAP设计器的数据集区域获取了需要分析的数据模式信息(本实施例中主要是获取事实表的字段信息),模式分析器根据信息获取器获取的数据模式信息,建立多维数据库的ROLAP分析模式,比如,定义多维数据库的逻辑模式,多维数据库的逻辑模式主要包括分析主题、度量及运算方式、计算度量、维度字段和日期字段。
扩展点集群组织器可以根据模式分析器建立的多维数据库的ROLAP分析模式来组织多维数据库的扩展点集群模型,具体可以对多维数据库中事实表和从定义的ROLAP设计器的多维表区域获得的维度表定义主外键关系,比如,指定事实表维度字段同维度表之间的主外键关系,定义 好主外键关系后通过左外连接(left join)方式来组织多维数据库的星型 模型;也可以通过主外键关系来获取多维数据表(如结果表与维度表)的维度信息,并为其中的日期字段指定特定的格式,还为其中的字段进行中文业务注释,这样使用者不需要知道字段的物理名称就可以进行业务定义。
扩展点集群模型建立完成模型后,将组织的多维数据库的星型模型中的信息以XML的格式存储于语义对象存储文件中,供用户客户端查询使用。其中,语义对象存储文件中存储了ROLAP分析数据的逻辑模式、物理模式以及逻辑模式与物理模式之间的对应关系信息。
所述的查询请求基于关系数据库的ROLAP,包括:
接收装置,用于接收用户的数据查询请求;
确定装置,用于确定所述数据查询请求所对应的待查询数据的标识信息;
查询路径装置,用于根据确定出的所述标识信息,在预先建立的多维数据关系模型中,确定该标识信息所对应的查询路径;
查询处理装置,用于根据所述查询路径以及所述标识信息进行数据查询,生成查询结果;
数据关系装置,用于预先选定数据库中的事实表,将选定出的所述事实表作为主数据集,并确定该主数据集中的各属性信息,根据所述各属性信息,在所述数据库中确定各属性信息对应的各关联数据表,其中,所述关联数据表包括事实表和/或维表;将确定出的各关联数据表作为子数据集,建立各子数据集与所述主数据集之间的数据关系,形成所述多维数据关系模型。
所述的OLAP服务器层用于数据的存储和调取,其包括:设置有多个数据节点的备份库和服务器,该服务器用于临时存储数据文件并向所述备份库请求可用的数据节点;其中,所述的服务器与备份库协同合作,所述的服务器获取所述主数据集的各单个数据块并依据单个数据块的大小分块以得到多个数据块,将第一数据块和第二数据块发送至第一可扩展节点,所述备份库控制所述第一可扩展节点选取与其相邻的第二可扩展节点,将所述第一数据块发送至所述第二可扩展节点;并将第三数据块发送至第一可扩展节点,所述备份库用于控制第一可扩展节点将所述第二数据块发送至所述第二可扩展节点,第二可扩展节点选取与其相邻的第三可扩展节点,将所述第一数据块发送至所可扩展述第三节点;重复上述过程直至全部数据块发送完毕,并使每个数据块创建N个副本。
进一步地,数据关系装置,具体用于针对每一属性信息,在所述数据库中确定包含有该属性信息的各数据表,并将确定出的各数据表作为为关联数据表。
基于此,数据关系装置,具体用于将包含有所述属性信息的各关联数据表,确定为与所述主数据集相关联的一级子数据集;并执行如下操作确定所述主数据集的各级子数据集:
确定每一级子数据集中包含的子属性信息,确定包含有所述子属性信息的各关联数据表,将包含有所述子属性信息的各关联数据表,作为所述一级子数据集的下一级子数据集,直至不能根据子属性信息确定出关联数据表。
在一种实施方式中,若所述标识信息落入多个数据集,则查询处理装置,具体用于确定所述标识信息所落入的各数据集,在所述多维数据关系模型中,确定所述标识信息所落入的各数据集的共同上级数据集,分别确定所述标识信息所落入的每一数据集至所述共同上级数据集的各路径,将确定出各路径作为所述标识信息所属的查询路径。
数据格式处理装置,用于接收用户发出的展示指令,根据所述展示指令,将所述查询结果中包含的数据进行格式转化,转化为所述展示指令所对应的数据格式,其中,所述展示指令所对应的数据格式包括:图形展示格式、多维列表格式中的至少一种。
在本申请实施例中,上述的待查询数据的标识信息包括:所要查询的维度及其对应的度量值,或维度。
数据立方体(DataCube)是多维模型的形象化说法,在多维模型中,“确定其中的一些与主题相关的属性作为对数据对象性质的观察角度,称为维(Dimension),维决定着数据对象(主题)的属性,反映数据对象特性的属性称为指标(Measure),这样的结构称作数据立方体(Data Cube)”。
如图2,数据立方体包括立方体(cube)、维(Dimension)、事实(Fact)、度量(Measure)、级别(Level)、级别成员(Level Member)。
维就是分析者分析问题的角度,关于维表和事实表的好的设计能提高OLAP分析处理效率。以时间维度为例,完善模块内部细节。时间维度使用默认层次(Hierarchy),再将其与时间维表(bi_dim_time)相关联,构造year、month、day、quarter四种属性(level)。本实施例中按照三个不同的主题,构造以下维表和事实表,如表1-3。
表1产品销售主题
表2 客户管理主题
表3 各地区分公司管理主题
属性 | |
事实表 | 地区编号、分公司编号、员工编号、地区名称、员工姓名 |
分公司维表 | 分公司编号、分公司类型、分公司名称 |
员工维表 | 员工编号、员工姓名 |
下面构造数据的二维视图(如表4)和立方体结构,选取时间、分公司、产品三个维度为例。
表1 企业销售数据在时间维、分公司维、产品维的二维视图
三维数据还可以用数据立方体形式表示,如图3所示。
一个Schema文件定义了一个多维数据库,包含一个逻辑模型,其组成部分是Cube、Dimension、Measures、Level、LevelMember。Modrain Schema文件本质是一个XML文件,在文件中定义各个组件,从而使数据库逻辑模型和物理模型的对应。
下面以产品销售主题为例,设计Modrain Schema的体系架构,如图4所示:
该Schema架构是由一个销售Cube构成,包含销售事实表、维度和测量值。其中维度选取了时间、分公司、产品三个维度,每个维度都对应一个层次(成为默认层次),级别(Level)的属性值来源于维度表。产品销售主题的立方体就此设计完毕,还可以设计关于其他主题的立方体,所有的立方体构成了OLAP服务器层的Schema文件。
构造数据立方体的流程如图5所示。
(1)立方体名称:sale
(2)选定事实表:bi_fact_sales_base
(3)立方体名称:sale
(4)配置事实:事实表确定以后,事实便从事实表中选出,维度表也是与之关联的表。选取事实表中的sale_amount、sale_money、sale_profit、return_money、return_amount和sale_cost配置为事实。
(5)创建简单度量或复合度量:即sum(sale_amount)、sum(sale_money)、sum(sale_profit)、sum(return_money)、sum(return_amount)和sum(sale_cost)
(6)创建维度:对于时间维度来说,是OLAP分析中常用的维度,使用频率很高,所以可以把它抽取出来当做全局维度,其他维度需要用它的时候直接引用,引用时外键为time_id。对于分公司维度和产品维度,采用直接增加的方式来构建。
还包括结构化查询语言SQL (Structured Query Language)执行效率跟踪装置,包括:连接单元、抓取单元、解析单元、分析单元,所述连接单元,用于通过JDBC,建立与数据库的连接,向数据库发起SQL查询请求;所述抓取单元,用于通过客户端内嵌到需要监控的WEB中间件或WEB容器,对JDBC中运行的SQL语句进行抓取,写入抓取到的JDBC中运行的SQL语句到分析数据库、或以文本方式对抓取到的JDBC中运行的SQL语句进行存储;
所述解析单元,用于解析所述存储的SQL语句,根据SQL的耗费时间,以及语法结构,解析所述存储的SQL语句,得出SQL语句执行的效率情况;所述分析单元,用于根据所述得出的SQL语句执行的效率情况,定位分析每个SQL语句执行效率节点的信息,定位出关联的SQL语句以及关联的数据库表,并根据SQL的耗费时间罗列出最需要优化的SQL语句执行效率节点,给出SQL执行效率的优化方案。
三、应用层设计
所述的应用层可与OLAP服务器层交互,应用层将用户查询请求发送给OLAP服务器层,OLAP服务器层获取并解析用户查询请求,然后将查询结果返回给应用层。应用层采用开源的Saiku (利用REST API与本系统相连),利用其友好的界面为用户提供直观的分析数据的方式。
本实施例中基于Saiku这一开源轻量级的OLAP分析工具实现数据联机处理,它集成了Modrain作为OLAP引擎,并提供报表的功能。当OLAP Schema文件制定好并发布后,Saiku会调用Mondrian OLAP服务器,Mondrian服务器中的Schema加载器会加载Schema XML文件,然后对 XML文件进行结构解析形成Schema维度模型。当用户选择某个Schema后,其多维模型中的维度和测量值会自动展示出来。
Saiku支持MDX语言,通过MDX定义查询语句。MDX是一种支持定义和操作多维对象和数据的语法,是一种维度语言,在许多方面其与SQL语言有很多相似之处,它可以表达联系分析处理数据库上的选择、计算和一些元数据定义等操作,并赋予用户自定义表现查询结果的能力。对于非专业用户来说,使用MDX语言进行数据的统计分析并不是件容易的事,所以Saiku里解决了这一问题。用户可以通过在界面拖拽组件的方式实现多维查询。
Saiku的OLAP分析界面由7部分组成。第1部分,选择数据立方体对应的Schema文件;第2部分,选择需要的维度;第3部分,选择测量值(指标);第4部分,OLAP操作区域,用来实现数据的切片、切块、钻取、旋转等操作;第5部分,用户拖拽组件区域;第6部分,OLAP查询结果展示区域;第7部分,报表形式选择区域,用户选择数据的呈现方式。
所述应用层还洁颜油报表管理模块,报表管理主要有三个内容,一是通过拖拽组件的方式设计报表;二是将Report对象解析成Mondrain Query对象,并利用Mondrain进行数据处理;三是提供多种报表呈现形式。每个Query对象都有三部分(row、column和filter)组成,Query与Report对应关系如图6所示。
当进行报表查询时,需要将Report对象向Query对象进行转换,其主要过程是:
(1)对于Report中row上的每个对象(level、levelmember、measure),都将其维度加入Query的row轴上,并设置inclusion属性。column和where都与上述过程一致。
(2)orderby包含若干维度的排序,所以需要将不同维度应用到不同轴上。
(3)limit和filter默认为应用到row轴上。
其中,常用的BI交互系统有Saiku和JPivot两种,Saiku是以JSP实现,能够方便个性化改造,同时界面美观,操作方便;本实用新型将Saiku组件作为OLAP系统中的BI交互系统(即所述界面交互组件可以为所述Saiku组件),可以使查询结果展示更加直观。其中,所述格式转换引擎可以为Mondrian引擎,其中,所述Saiku组件可以通过jar包的方式调用所述Mondrian引擎,所述Mondrian引擎可以通过odbc调用所述Impala组件。
本实用新型的服务器实时监测自身负载,当服务器整体负载低时,线性减少启用的服务器数量,当服务器整体负载高时,线性增加启用的服务器数量;对于备份库,采用类似的方式增加或减少数量。通过设置可线性扩展的服务器集群,动态适应负载压力,使服务器资源得到最大利用。通过将网络数据分流存储,充分利用了服务器资源,提高资源存储效率和安全性。
本实用新型通过将用户查询请求对应的目标查询参数传输至内存计算组件,可以使内存计算组件在分布式存储组件中查找出与目标查询参数对应的目标存储数据,并且内存计算组件可以对目标存储数据进行统计分析,以得到查询结果数据;其中,分布式存储组件是用于存储多个存储数据的组件;由此可见,通过将使用内存计算的内存计算组件作为OLAP系统的计算框架,可以提高OLAP系统的查询速度和吞吐量,而且通过分布式存储组件存储所有要分析的数据(即多个存储数据),可以方便利用分布式计算,且也便于扩展。而且内存计算组件可以具体为Impala组件,从而可以进一步提升OLAP的查询速度和吞吐量;而且将HDFS组件作为分布式存储组件,不仅可以方便利用分布式计算,同时由于HDFS组件可以设置存储数据份数来容错,所以可以防止一个数据节点故障造成数据丢失的情况;同时通过将Parquet作为OLAP系统的文件存储格式,可以进一步提高查询速度,并通过使用snappy压缩算法对多个存储数据进行压缩,可以既不影响查询速度还能够节省存储成本;而且将Saiku组件作为界面交互组件,可以使查询结果展示更加直观。
以上所述;仅为本实用新型较佳的具体实施方式;但本实用新型的保护范围并不局限于此;任何熟悉本技术领域的技术人员在本实用新型揭露的技术范围内;根据本实用新型的技术方案及其改进构思加以等同替换或改变;都应涵盖在本实用新型的保护范围内。
Claims (2)
1.一种基于可扩展节点集群的大数据分析处理系统,其特征在于,其包括OLAP数据库层、OLAP服务器层和应用层,
所述的OLAP数据库层采用可扩展节点集群的分布式数据库集群,通过ROLAP服务器与所述的应用层交互;
所述的OLAP服务器层包括设置的多个数据节点的备份库和服务器;
其中,所述的ROLAP服务器包括:
至少包括一数据集区域和一设计面积区域的ROLAP设计器;
用于在所述数据集区域获取多维数据库的数据模式信息,并将所述获取的数据模式信息以列表的方式在所述设计面积展现的信息获取器;
用于根据所述获取的数据模式信息,建立多维数据库的ROLAP分析模式的模式分析器;
用于根据已建立的多维数据库的ROLAP分析模式组织多维数据库的扩展点集群模型,并将组织的多维数据库的所述扩展点集群模型存储于语义对象存储文件中的扩展点集群组织器;
用于当所述数据集区域的数据集节点上不存在输入的事实表名称时,提示获取信息失败的信息提示器;
所述的应用层可与所述的OLAP服务器层交互,交互通过用户查询请求实现,所述实现用户查询请求的装置包括:
用于接收用户的数据查询请求的接收装置;
用于确定所述数据查询请求所对应的待查询数据的标识信息的确定装置;
用于根据确定出的所述标识信息,在预先建立的多维数据关系模型中,确定该标识信息所对应的查询路径的查询路径装置;
用于根据所述查询路径以及所述标识信息进行数据查询,生成查询结果的查询处理装置;
用于预先选定数据库中的事实表,将选定出的所述事实表作为主数据集,并确定该主数据集中的各属性信息,根据所述各属性信息,在所述数据库中确定各属性信息对应的各关联数据表的数据关系装置。
2.根据权利要求1所述的一种基于可扩展节点集群的大数据分析系统,其特征在于,所述的OLAP数据库包括通过互联网络进行连接的相互独立的多个数据节点、负责逻辑控制和与客户端进行交互的控制节点和获取客户数据并对数据进行计算分析的客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201821129591.2U CN208207819U (zh) | 2018-07-17 | 2018-07-17 | 一种基于可扩展节点集群的大数据分析处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201821129591.2U CN208207819U (zh) | 2018-07-17 | 2018-07-17 | 一种基于可扩展节点集群的大数据分析处理系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN208207819U true CN208207819U (zh) | 2018-12-07 |
Family
ID=64496687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201821129591.2U Expired - Fee Related CN208207819U (zh) | 2018-07-17 | 2018-07-17 | 一种基于可扩展节点集群的大数据分析处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN208207819U (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110148440A (zh) * | 2019-03-29 | 2019-08-20 | 北京汉博信息技术有限公司 | 一种医疗信息查询方法 |
CN110287168A (zh) * | 2019-06-26 | 2019-09-27 | 南京冰鉴信息科技有限公司 | 一种可配置的模型计算分析自定义方法 |
WO2020187023A1 (zh) * | 2019-03-20 | 2020-09-24 | 跬云(上海)信息科技有限公司 | 数据配置查询方法和装置 |
-
2018
- 2018-07-17 CN CN201821129591.2U patent/CN208207819U/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020187023A1 (zh) * | 2019-03-20 | 2020-09-24 | 跬云(上海)信息科技有限公司 | 数据配置查询方法和装置 |
US11281698B2 (en) | 2019-03-20 | 2022-03-22 | Kuyun (Shanghai) Information Technology Co., Ltd. | Data configuration query method and device |
CN110148440A (zh) * | 2019-03-29 | 2019-08-20 | 北京汉博信息技术有限公司 | 一种医疗信息查询方法 |
CN110148440B (zh) * | 2019-03-29 | 2023-06-30 | 北京汉博信息技术有限公司 | 一种医疗信息查询方法 |
CN110287168A (zh) * | 2019-06-26 | 2019-09-27 | 南京冰鉴信息科技有限公司 | 一种可配置的模型计算分析自定义方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755575B2 (en) | Processing database queries using format conversion | |
CN111542813B (zh) | 使用异构数据的对象模型来便于建立数据可视化 | |
CN113272801B (zh) | 根据选择的数据源的对象模型生成数据可视化 | |
US11966406B2 (en) | Utilizing appropriate measure aggregation for generating data visualizations of multi-fact datasets | |
CN109086354A (zh) | 一种基于可扩展节点集群的大数据分析处理系统 | |
US9792327B2 (en) | Self-described query execution in a massively parallel SQL execution engine | |
CN106095862B (zh) | 集中式可扩展融合型多维复杂结构关系数据的存储方法 | |
US8447721B2 (en) | Interest-driven business intelligence systems and methods of data analysis using interest-driven data pipelines | |
US9639814B2 (en) | Automated default dimension selection within a multidimensional enterprise software system | |
JP5242875B2 (ja) | 多次元データベースおよび統合集約サーバ | |
US10540363B2 (en) | Systems and methods for providing performance metadata in interest-driven business intelligence systems | |
US9934299B2 (en) | Systems and methods for interest-driven data visualization systems utilizing visualization image data and trellised visualizations | |
US7593955B2 (en) | Generation of aggregatable dimension information within a multidimensional enterprise software system | |
US7814045B2 (en) | Semantical partitioning of data | |
WO2015060893A1 (en) | Systems and methods for interest-driven data visualization systems utilizing visualization image data and trellised visualizations | |
CN208207819U (zh) | 一种基于可扩展节点集群的大数据分析处理系统 | |
EP1385101A2 (en) | Static drill-through modelling | |
CA3153691C (en) | Utilizing appropriate measure aggregation for generating data visualizations of multi-fact datasets | |
CN107729500B (zh) | 一种联机分析处理的数据处理方法、装置及后台设备 | |
Arputhamary et al. | A review on big data integration | |
US20210303583A1 (en) | Ranking filter algorithms | |
Wei | The Development of Database Technology |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181207 |
|
CF01 | Termination of patent right due to non-payment of annual fee |