System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于FlinkSQL与Kudu构建实时数仓的方法、设备及介质技术_技高网

基于FlinkSQL与Kudu构建实时数仓的方法、设备及介质技术

技术编号:41396113 阅读:15 留言:0更新日期:2024-05-20 19:19
本发明专利技术的一种基于FlinkSQL与Kudu构建实时数仓的方法、设备及介质,包括将关系型数据库和日志实时数据采集,基于FlinkSql CDC获取数据库日志文件,将日志解析为Json格式报文,同步Json数据到消息队列;设备数据、日志数据直接写入消息队列对应topic;同时将数据回写到ODS层的消息队列;通过FlinkSql实时读取ODS层数据,并进行实时清洗、加工,结果写入到DWR层消息队列中;通过FlinkSql实时读取DWR层消息队列数据,并汇总计算成指标数据,结果写入到DWS层kudu表中;将存储得数据支撑业务分析和实时报表应用系统。本发明专利技术基于FlinkSql技术提供采集不同形式的实时数据,建设实时数据仓库,保证了数据的完整性、一致性,提高了应用支持效率,降低了时间成本、运维成本。

【技术实现步骤摘要】

本专利技术涉及大数据处理技术,具体涉及一种基于flinksql与kudu构建实时数仓的方法、设备及存储介质。


技术介绍

1、随着大数据时代的到来,大多数企业面临数据源多、结构复杂的问题,为了更好的管理数据和赋能价值,数据仓库的建设成为了企业的基础服务。但现有的数据仓库存在一下问题:(1)离线数据实时性低,延迟性高,逐渐不能满足业务需求;(2)实时数据处理造成资源成本高、运维难度大,数据不一致;(3)使用spark streaming技术又不能实时计算指标和构建数仓体系;(4)sparkstreaming、storm等实时计算框架需要进行代码开发实现实时计算任务,对开发人员的技术要求很高,对业务的数据需求响应较慢;(5)storm基于流式数据的实时计算,侧重于低延迟的流处理,sparkstreaming基于dstream(discretizedstream,持续性数据流的抽象)的微批处理数据的实时计算,侧重于更好的容错性,无法同时实现低延迟和高容错。


技术实现思路

1、本专利技术提出的一种基于flinksql与kudu构建实时数仓的方法、设备及存储介质,可至少解决
技术介绍
中的技术问题之一。

2、为实现上述目的,本专利技术采用了以下技术方案:

3、一种基于flinksql与kudu构建实时数仓的方法,包括以下步骤,

4、s1、将关系型数据库和日志实时数据采集,基于flinksql cdc获取数据库日志文件,将日志解析为json格式报文,同步json数据到消息队列;设备数据、日志数据直接写入消息队列对应topic;

5、s2、基于flinksql实时读取消息队列数据,同时将数据回写到ods层的消息队列;

6、s3、通过flinksql实时读取ods层数据,并进行实时清洗、加工,结果写入到dwr层消息队列中;

7、s4、通过flinksql实时读取dwr层消息队列数据,并汇总计算成指标数据即构建公共粒度的汇总指标数据,结果写入到dws层kudu表中;

8、s5、将s4存储得数据支撑业务分析和实时报表应用系统,即dwr层数据可提供实时查询服务,为第三方业务系统分析和实时报表展示。

9、又一方面,本专利技术还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。

10、再一方面,本专利技术还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上方法的步骤。

11、由上述技术方案可知,本专利技术的基于flinksql与kudu构建实时数仓的方法,基于flinksql技术提供采集不同形式的实时数据,建设实时数据仓库,保证了数据的完整性、一致性,提高了应用支持效率,降低了时间成本、运维成本。

12、本专利技术基于flinksql技术(flink数据流引擎的sql查询语言),当前模式对开发人员的技术要求不高,且需求开发周期短,数据实时性高;flink是一个实时计算引擎,支持sum、count和count distinct等多维查询能力,支持较强的分组聚合能力;结合数据存储系统是kudu,支持强索引以及高并发;flink支持高度容错的状态管理,防止状态在计算过程中因为系统异常而丢失,flink周期性地通过分布式快照技术checkpoints实现状态的持久化维护,使得在系统停机或者异常情况下计算出正确的结果,保证运行的稳定性;

13、则本专利技术基于flinksql与kudu构建实时数仓的方法,通过flink实时计算后将指标结果直接存储到kudu中,查询直接从kudu中查询结果而不需要进行计算,所以查询延迟比较低;flink支持流式和批处理的两类api,拥有独特的分布式处理方式和高效的数据流引擎。减少计算资源、存储资源的消耗。

本文档来自技高网...

【技术保护点】

1.一种基于FlinkSQL与Kudu构建实时数仓的方法,其特征在于,包括以下步骤,

2.根据权利要求1所述的基于FlinkSQL与Kudu构建实时数仓的方法,其特征在于:所述步骤S1具体包括,

3.根据权利要求1所述的基于FlinkSQL与Kudu构建实时数仓的方法,其特征在于:所述步骤S2具体包括,针对ODS层Kafka流式数据,创建ODS层Kafka Producer生产者实例,基于KafkaConsumer创建Flink数据源即DataStream,并基于FlinkSQL进行数据转换和处理,通过调用addSink方法将处理后的流数据传递到ODS层Kafka Producer。

4.根据权利要求1所述的基于FlinkSQL与Kudu构建实时数仓的方法,其特征在于:

5.根据权利要求1所述的基于FlinkSQL与Kudu构建实时数仓的方法,其特征在于:S4具体包括基于Flink创建DWR层KafkaConsumer消费者实例,并基于KafkaConsumer创建Flink数据源即DataStream,并基于FlinkSQL进行指标计算,通过调用addSink方法写入KuduDWS层中。

6.根据权利要求5所述的基于FlinkSQL与Kudu构建实时数仓的方法,其特征在于:S5具体包括存储在Kudu数据库DWS层中数据通过API数据服务和JDBC这些方式实时查询、分析数据,展示报表。

7.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。

8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。

...

【技术特征摘要】

1.一种基于flinksql与kudu构建实时数仓的方法,其特征在于,包括以下步骤,

2.根据权利要求1所述的基于flinksql与kudu构建实时数仓的方法,其特征在于:所述步骤s1具体包括,

3.根据权利要求1所述的基于flinksql与kudu构建实时数仓的方法,其特征在于:所述步骤s2具体包括,针对ods层kafka流式数据,创建ods层kafka producer生产者实例,基于kafkaconsumer创建flink数据源即datastream,并基于flinksql进行数据转换和处理,通过调用addsink方法将处理后的流数据传递到ods层kafka producer。

4.根据权利要求1所述的基于flinksql与kudu构建实时数仓的方法,其特征在于:

5.根据权利要求1所述的基于flinksql与kudu构建实时数仓...

【专利技术属性】
技术研发人员:雷佳佳赵文政刘林平
申请(专利权)人:合肥喆塔科技有限公司
类型:发明
国别省市:

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

1