数据分析系统、方法、存储介质及电子设备技术方案

技术编号:20992574 阅读:21 留言:0更新日期:2019-04-29 22:33
本发明专利技术提供一种数据分析系统、方法、存储介质及电子设备,所述数据分析系统包括:数据采集模块:用以采集实时数据及离线数据,将已采集的离线数据以Hive的形式存储至HDFS;实时计算模块:响应于用户的查询指令,通过分布式处理引擎Flink消费实时数据形成实时数据宽表,所述实时数据宽表数据经过消息中间件kafka转存在Druid中;离线计算模块:用Hive清洗计算离线数据以形成离线数据宽表并将所述离线数据宽表同步到分布式分析引擎Kylin中以形成多维的离线数据预汇总表;以及查询引擎模块。本发明专利技术能够实时或者离线的方式接入数据,并抽象计算出核心模型。数据分析人员可以通过托拉拽的方式筛选自己要分析的内容,然后可以选择以丰富的可视化图表的方式展现。

Data Analysis System, Method, Storage Media and Electronic Equipment

The present invention provides a data analysis system, method, storage medium and electronic equipment. The data analysis system includes: data acquisition module: data acquisition module for acquiring real-time data and off-line data, storing the collected off-line data in Hive form to HDFS; real-time calculation module: real-time data consumption through distributed processing engine Flink in response to user's query instructions. The real-time data broadsheet is transferred to Druid through message middleware kafka; the off-line computing module: calculating the off-line data with Hive cleaning to form the off-line data broadsheet and synchronizing the off-line data broadsheet to the distributed analysis engine Kylin to form a multi-dimensional off-line data summary table; and the query engine module. The invention can access data in a real-time or offline manner, and abstractly calculate the core model. Data analysts can select the content they want to analyze by pulling and pulling, and then they can choose to display it in a rich visual chart.

【技术实现步骤摘要】
数据分析系统、方法、存储介质及电子设备
本专利技术涉及计算机
,尤其涉及一种数据分析系统、方法、存储介质及电子设备。
技术介绍
随着互联网及数据技术的发展,各互联网平台所储存、计算的数据量非常庞大,尤其对车货匹配平台,其面对的通常是全国的司机和货主。一方面,每天用户的行为数据量非常大,有些需要实时计算,有些需要离线计算,复杂度非常高。另一方面,数据分析人员的需求灵活多变,每次数据分析都非常耗时。现在有一些成熟的商业化分析软件,这些软件普遍存在的问题是:在接入大数据量的时候,计算非常慢,甚至卡死;有一些对实时计算不支持;有一些权限管理很难控制不同存储组件上的数据;还有一些缺乏数据安全审计功能。
技术实现思路
针对现有技术中的问题,本专利技术的目的在于提供一种数据分析系统、方法、存储介质及电子设备,以快速分析实时和离线数据。根据本专利技术的一方面,提供一种数据分析系统,所述数据分析系统包括:数据采集模块:用以采集实时数据及离线数据,将已采集的离线数据以Hive的形式存储至HDFS;实时计算模块:响应于用户的查询指令,通过分布式处理引擎Flink消费实时数据形成实时数据宽表,所述实时数据宽表数据经过消息中间件kafka转存在Druid中;离线计算模块:用Hive清洗计算离线数据以形成离线数据宽表并将所述离线数据宽表同步到分布式分析引擎Kylin中以形成多维的离线数据预汇总表;查询引擎模块:将用户的查询指令转化成SQL语句;若所述查询指令的类型为实时查询,则将所述SQL语句转换为Druid语法查询实时数据宽表;若所述查询类型为离线查询,则将所述SQL语句哈希后作为关键字,通过所述关键字查询redis中与该关键字对应的值,以将与该关键字对应的值作为所查询的离线数据。在本专利技术一实施方式中,所述查询引擎模块还用以当redis中查不到相应的离线数据时,将所述SQL语句转为Kylin语法以从所述Kylin中获取相应的离线数据,将所述SQL语句哈希后作为关键字并将所获取的离线数据作为值存储在redis。在本专利技术一实施方式中,所获取的离线数据作为值在redis储存的时间不超过预定时间段,所述预定时间段根据数据刷新周期和所述redis的储存容量确定。在本专利技术一实施方式中,所述的数据分析系统还包括用户权限管理模块,所述用户权限管理模块用以通过用户和组以及组和数据的映射关系,对用户的数据使用权限进行鉴权。在本专利技术一实施方式中,所述的数据分析系统还包括可视化分析库,所述可视化分析库用以以可视化方式展示对应于所述查询指令的离线或实时查询结果。根据本专利技术的另一方面,提供一种数据分析方法,所述数据分析方法包括:采集实时数据及离线数据,将已采集的离线数据以Hive的形式存储至HDFS;用Hive清洗计算离线数据以形成离线数据宽表并将所述离线数据宽表同步到分布式分析引擎Kylin中以形成多维的离线数据预汇总表;将用户的查询指令转化成SQL语句;若所述查询指令的类型为实时查询,则将所述SQL语句转换为Druid语法查询实时数据宽表;若所述查询类型为离线查询,则将所述SQL语句哈希后作为关键字,通过所述关键字查询redis中与该关键字对应的值,以将与该关键字对应的值作为所查询的离线数据。在本专利技术的一实施方式中,所述查询指令指示若干指标和维度,每一指标和维度分别对应唯一的编码;所述将用户的查询指令转化成SQL语句的步骤之前还包括:将所述指标和维度按照各自的编码进行排序。在本专利技术的一实施方式中,若所述查询类型为离线查询,当redis中查不到相应的离线数据时,则将所述SQL语句哈希后作为关键字,通过所述关键字查询redis中与该关键字对应的值,以将与该关键字对应的值作为所查询的离线数据。根据本专利技术的又一方面,提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上所述数据分析方法中的步骤。根据本专利技术的又一方面,提供一种电子设备,所述电子设备包括:处理器;存储介质,其上存储有计算机程序,所述计算机程序被所述处理器运行时执行如上所述数据分析方法中的步骤。本专利技术能够实时或者离线的方式接入数据,并抽象计算出核心模型。数据分析人员可以通过托拉拽的方式筛选自己要分析的内容,然后可以选择以丰富的可视化图表的方式展现。本专利技术还可以进行下钻、上卷、切片等方式进行数据分析。特别是在大数据场景下,本专利技术通过查询引擎优化,用户可以快速分析实时和离线数据。本专利技术可以通过用户和组以及组和数据的映射关系对用户的数据使用权限进行鉴权。而且所有用户的分析操作都会记录日志,供系统管理人员做数据安全审计。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显。图1是本专利技术一实施例中数据分析系统的结构示意图。图2是本专利技术另一实施例中数据分析系统的结构示意图。图3是本专利技术一实施例中数据分析方法的流程图。图4是本专利技术另一实施例中数据分析方法的流程图。图5是本专利技术一实施例中计算机可读存储介质的结构示意图。以及图6是本专利技术一实施例中电子设备的结构示意图。具体实施方式现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。为了解决现有技术的不足,根据本专利技术的一方面,提供一种数据分析系统,图1是本专利技术一实施例中数据分析系统的结构示意图。如图1所示,所述数据分析系统100包括:数据采集模块101、实时计算模块102、离线计算模块103以及查询引擎模块104。所述数据采集模块101用以采集实时数据及离线数据,将已采集的离线数据以Hive的形式存储至HDFS。数据采集方式可以分为实时采集和离线采集,实时采集可以是将用户埋点日志、mysql的数据库日志消费到Flink和HDFS,离线采集可以是将mysql、Hbase、Mongo等数据抽取到HDFS。Hive是基于Hadoop(分布式系统基础架构)的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce(一种编程模型,用于大规模数据集的并行运算)任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。Hive是建立在Hadoop上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。Hadoop分布式文件系统(HDFS)被设计成适合运行在通本文档来自技高网...

【技术保护点】
1.一种数据分析系统,其特征在于,包括:数据采集模块:用以采集实时数据及离线数据,将已采集的离线数据以Hive的形式存储至HDFS;实时计算模块:响应于用户的查询指令,通过分布式处理引擎Flink消费实时数据形成实时数据宽表,所述实时数据宽表数据经过消息中间件kafka转存在Druid中;离线计算模块:用Hive清洗计算离线数据以形成离线数据宽表并将所述离线数据宽表同步到分布式分析引擎Kylin中以形成多维的离线数据预汇总表;以及查询引擎模块:将用户的查询指令转化成SQL语句;若所述查询指令的类型为实时查询,则将所述SQL语句转换为Druid语法查询实时数据宽表;若所述查询类型为离线查询,则将所述SQL语句哈希后作为关键字,通过所述关键字查询redis中与该关键字对应的值,以将与该关键字对应的值作为所查询的离线数据。

【技术特征摘要】
1.一种数据分析系统,其特征在于,包括:数据采集模块:用以采集实时数据及离线数据,将已采集的离线数据以Hive的形式存储至HDFS;实时计算模块:响应于用户的查询指令,通过分布式处理引擎Flink消费实时数据形成实时数据宽表,所述实时数据宽表数据经过消息中间件kafka转存在Druid中;离线计算模块:用Hive清洗计算离线数据以形成离线数据宽表并将所述离线数据宽表同步到分布式分析引擎Kylin中以形成多维的离线数据预汇总表;以及查询引擎模块:将用户的查询指令转化成SQL语句;若所述查询指令的类型为实时查询,则将所述SQL语句转换为Druid语法查询实时数据宽表;若所述查询类型为离线查询,则将所述SQL语句哈希后作为关键字,通过所述关键字查询redis中与该关键字对应的值,以将与该关键字对应的值作为所查询的离线数据。2.根据权利要求1所述的数据分析系统,其特征在于,所述查询引擎模块还用以当redis中查不到相应的离线数据时,将所述SQL语句转为Kylin语法以从所述Kylin中获取相应的离线数据,将所述SQL语句哈希后作为关键字并将所获取的离线数据作为值存储在redis。3.根据权利要求2所述的数据分析系统,其特征在于,所获取的离线数据作为值在redis储存的时间不超过预定时间段,所述预定时间段根据数据刷新周期和redis的储存容量确定。4.根据权利要求1所述的数据分析系统,其特征在于,还包括用户权限管理模块,所述用户权限管理模块用以通过用户和组以及组和数据的映射关系,对用户的数据使用权限进行鉴权。5.根据权利要求1所述的数据分析系统,其特征...

【专利技术属性】
技术研发人员:王东李大学严旭东张超
申请(专利权)人:江苏满运软件科技有限公司
类型:发明
国别省市:江苏,32

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

1