【技术实现步骤摘要】
基于Flink的SQL数据实时处理方法、装置、计算机设备和介质
本申请涉及数据处理领域,特别是涉及一种基于Flink的SQL数据实时处理方法、装置、计算机设备和存储介质。
技术介绍
FlinkSQL是Flink实时计算为简化计算模型降低用户使用实时计算门槛而设计的一套符合标准SQL语义的开发语言。开源的Flink编程开发的成本较大,学习成本高,调试复杂,上线周期长。对每一种数据源连接都要采用不同的开发方式,消耗大量的学习成本和开发时间。将Flink应用在对SQL数据的实时处理上时,若要实现source、sink、维表等功能都需要用户继承Flink的各种function(函数)进行开发,而维表也需要用户通过实现map内连接数据库或者异步查询的方式才能实现,需要用户编写大量的代码,实现较为复杂。因此亟需一种简单易行的基于Flink的SQL数据实时处理方式,用户解决现有技术中实时处理SQL数据复杂的技术问题。
技术实现思路
基于此,有必要针对上述技术问题,本申请提供一种基于Flink的SQL数据实时处理方法、装 ...
【技术保护点】
1.一种基于Flink的SQL数据实时处理方法,其特征在于,所述方法包括:/n将通过客户端提交的SQL数据表存储到关系型数据库TiDB中,生成SQL数据表,并为所述SQL数据表生成对应的任务id;/n通过RESTful API将与所述任务id对应的处理程序提交到Flink集群,其中,所述处理程序为随提交的SQL数据生成的用于指示Flink集群对SQL数据表进行相应处理的程序;/n在所述Flink集群上根据所述处理程序从所述TiDB获取与所述任务id对应的SQL数据表,并对所述SQL数据表中的SQL语句进行分类,得到分类后的SQL语句;/n将分类后的SQL语句封装为对应类型的 ...
【技术特征摘要】
1.一种基于Flink的SQL数据实时处理方法,其特征在于,所述方法包括:
将通过客户端提交的SQL数据表存储到关系型数据库TiDB中,生成SQL数据表,并为所述SQL数据表生成对应的任务id;
通过RESTfulAPI将与所述任务id对应的处理程序提交到Flink集群,其中,所述处理程序为随提交的SQL数据生成的用于指示Flink集群对SQL数据表进行相应处理的程序;
在所述Flink集群上根据所述处理程序从所述TiDB获取与所述任务id对应的SQL数据表,并对所述SQL数据表中的SQL语句进行分类,得到分类后的SQL语句;
将分类后的SQL语句封装为对应类型的作业算子,并串接所述作业算子,生成算子流;
调用Flinkexecute接口将所述算子流提交给所述Flink集群的taskmanager执行所述算子流,实现对所述SQL数据的实时处理。
2.根据权利要求1所述的方法,其特征在于,所述为所述SQL数据表生成对应的任务id,包括:
按照所述SQL数据表的生成时间戳设定所述任务id。
3.根据权利要求1所述的方法,其特征在于,所述对所述SQL数据表进行分类,包括:
根据预设关键字确定所述SQL语句的类型,得到建表语句和执行语句。
4.根据权利要求3所述的方法,其特征在于,所述根据预设关键字确定所述SQL语句的类型,包括:
将以createtable开头的SQL语句归为建表语句,以insertinto开头的SQL语句归为执行语句。
5.根据权利要求3所述的方法,其特征在于,所述将分类后的SQL语句封装为对应类型的作业算子,包括:
获取SQL语句中的变量;
根据所述执行语句确定所述变量之间的执行关系;并
根据所述执行关系映射后将所述变量封装为作业算子。
6.根据权利要求5所述的方法,其特征在...
【专利技术属性】
技术研发人员:邓煜,
申请(专利权)人:中国平安财产保险股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。