实时计算中的批量数据查询方法、装置和计算机设备制造方法及图纸

技术编号:31907954 阅读:14 留言:0更新日期:2022-01-15 12:47
本发明专利技术提供了一种实时计算中的批量数据查询方法、装置和计算机设备,方法包括:构建一个Druid连接池,并获取异步通信器VertX和Flink计算框架;将Druid连接池与异步通信器VertX进行第一对接,以得到对接器;将对接器与Flink计算框架进行第二对接;基于第一对接和第二对接生成对接信息,并将对接信息进行整合后存储于Flink计算框架的指定目录;构建Flink计算框架的实时计算任务,并启动实时计算任务;将待查询的批量数据输入Flink计算框架,以使Flink计算框架通过整合后的对接信息查询批量数据。由此,可以避免C3P0带来的死锁、稳定性差的问题,且可以在优化计算时间的前提下,提升实时计算中的数据查询性能,从而提升整个实时计算的性能。时计算的性能。时计算的性能。

【技术实现步骤摘要】
实时计算中的批量数据查询方法、装置和计算机设备


[0001]本专利技术涉及计算机
,具体涉及一种实时计算中的批量数据查询方法、一种实时计算中的批量数据查询装置和一种计算机设备。

技术介绍

[0002]随着企业数字化转型的发展,企业对数据处理的实时性要求越来越高,尤其是海量数据的实时处理。海量数据实时处理目前开源代码项目中,功能、性能最好的就属Flink。海量数据进入Flink系统后,会毫秒级计算出结果。这种系统可以用在实时推荐、实时监控、实时情报分析等各种领域。影响实时计算性能的关键之一就是在计算过程中通过网络读取远程数据。读取网络数据的等待时间是相当耗时的。为此,可以等待处理多条数据,而不是每次只等待处理一条数据。批量等待数据响应的关键在于异步通信。Flink同步维表JOIN就是一条一条逐一读取远程数据,而异步维表JOIN技术就是批量读取远程数据。
[0003]目前,关于异步JDBC维表JOIN的技术方案,是基于C3P0数据库连接池。虽然采用了异步通信,海量数据的平均计算时间得到了优化,但是C3P0数据库连接池技术存在死锁问题,不稳定,性能特别差。

技术实现思路

[0004]本专利技术旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本专利技术的第一个目在于提出一种实时计算中的批量数据查询方法,通过提升数据查询性能,来提升整个实时计算的性能。
[0005]本专利技术的第二个目的在于提出一种实时计算中的批量数据查询装置。
[0006]本专利技术的第三个目的在于提出一种计算机设备。
[0007]为达到上述目的,本专利技术第一方面实施例提出了一种实时计算中的批量数据查询方法,包括:
[0008]构建一个Druid连接池,并获取异步通信器VertX和Flink计算框架;
[0009]将所述Druid连接池与所述异步通信器VertX进行第一对接,以得到对接器;
[0010]将所述对接器与所述Flink计算框架进行第二对接;
[0011]基于所述第一对接和所述第二对接生成对接信息,并将所述对接信息进行整合后存储于所述Flink计算框架的指定目录;
[0012]构建所述Flink计算框架的实时计算任务,并启动所述实时计算任务;
[0013]将待查询的批量数据输入所述Flink计算框架,以使所述Flink计算框架通过整合后的所述对接信息查询所述批量数据。
[0014]另外,根据本专利技术上述实施例提出的实时计算中的批量数据查询方法还可以具有如下附加的技术特征:
[0015]根据本专利技术的一个实施例,将所述Druid连接池与所述异步通信器VertX进行第一对接,包括:
[0016]依据所述异步通信器VertX的DataSourceProvider标准实现一个DataSourceProvider子类;
[0017]在所述异步通信器VertX启动时,设置provider_class选项为所述Druid连接池与所述异步通信器VertX间的对接器的所述DataSourceProvider子类。
[0018]根据本专利技术的一个实施例,将所述对接器与Flink计算框架进行第二对接,包括:
[0019]依据所述Flink计算框架中的AsyncTableFunction标准,实现一个AsyncTableFunction子类。
[0020]根据本专利技术的一个实施例,依据所述Flink计算框架中的AsyncTableFunction标准,实现一个AsyncTableFunction子类,包括:
[0021]在所述AsyncTableFunction标准下,在所述Flink计算框架中启动所述VertX;
[0022]在所述AsyncTableFunction标准下,将写入所述Flink计算框架的数据转接给所述VertX。
[0023]根据本专利技术的一个实施例,在所述AsyncTableFunction标准下,在所述Flink计算框架中启动所述VertX,包括:
[0024]在所述AsyncTableFunction标准的open标准中调用所述VertX的JDBCClient.createNonShared方法;
[0025]在所述AsyncTableFunction标准下,将写入所述Flink计算框架的数据转接给所述VertX,包括:
[0026]在所述AsyncTableFunction标准的evel标准中调用所述VertX的SQLClient.getConnection方法和SQLConnection.queryWithParams方法。
[0027]根据本专利技术的一个实施例,所述Flink计算框架通过整合后的所述对接信息查询所述批量数据,包括:
[0028]所述Flink计算框架在查询外部JDBC协议的外部数据库时,自动执行整合后的所述对接信息。
[0029]根据本专利技术的一个实施例,将所述对接信息进行整合,包括:将所述对接信息打包成jar压缩包。
[0030]根据本专利技术的一个实施例,所述Flink计算框架的指定目录为lib目录。
[0031]为实现上述目的,本专利技术第二方面实施例提出了一种实时计算中的批量数据查询装置,包括:
[0032]获取模块,用于构建一个Druid连接池,并获取异步通信器VertX和Flink计算框架;
[0033]第一对接模块,用于将所述Druid连接池与所述异步通信器VertX进行第一对接,以得到对接器;
[0034]第二对接模块,用于将所述对接器与所述Flink计算框架进行第二对接;
[0035]生成模块,用于基于所述第一对接和所述第二对接生成对接信息,并将所述对接信息进行整合后存储于所述Flink计算框架的指定目录;
[0036]启动模块,用于构建所述Flink计算框架的实时计算任务,并启动所述实时计算任务;
[0037]查询模块,用于将待查询的批量数据输入所述Flink计算框架,以使所述Flink计
算框架通过整合后的所述对接信息查询所述批量数据。
[0038]为实现上述目的,本专利技术第三方面实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现本专利技术第一方面实施例提出的实时计算中的批量数据查询方法。
[0039]本专利技术的技术方案,将Druid连接池、异步通信器VertX和Flink计算框架进行对接,并将对应的对接信息存储于Flink计算框架,通过Flink计算框架进行实时计算时,通过对接信息可查询批量数据。由此,可以避免C3P0带来的死锁、稳定性差的问题,且可以在优化计算时间的前提下,提升实时计算中的数据查询性能,从而提升整个实时计算的性能。
附图说明
[0040]图1为本专利技术实施例的实时计算中的批量数据查询方法的流程图。
[0041]图2为本专利技术实施例的C3P0与Dru本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实时计算中的批量数据查询方法,其特征在于,包括:构建一个Druid连接池,并获取异步通信器VertX和Flink计算框架;将所述Druid连接池与所述异步通信器VertX进行第一对接,以得到对接器;将所述对接器与所述Flink计算框架进行第二对接;基于所述第一对接和所述第二对接生成对接信息,并将所述对接信息进行整合后存储于所述Flink计算框架的指定目录;构建所述Flink计算框架的实时计算任务,并启动所述实时计算任务;将待查询的批量数据输入所述Flink计算框架,以使所述Flink计算框架通过整合后的所述对接信息查询所述批量数据。2.根据权利要求1所述的实时计算中的批量数据查询方法,其特征在于,将所述Druid连接池与所述异步通信器VertX进行第一对接,包括:依据所述异步通信器VertX的DataSourceProvider标准实现一个DataSourceProvider子类;在所述异步通信器VertX启动时,设置provider_class选项为所述Druid连接池与所述异步通信器VertX间的对接器的所述DataSourceProvider子类。3.根据权利要求1所述的实时计算中的批量数据查询方法,其特征在于,将所述对接器与Flink计算框架进行第二对接,包括:依据所述Flink计算框架中的AsyncTableFunction标准,实现一个AsyncTableFunction子类。4.根据权利要求3所述的实时计算中的批量数据查询方法,其特征在于,依据所述Flink计算框架中的AsyncTableFunction标准,实现一个AsyncTableFunction子类,包括:在所述AsyncTableFunction标准下,在所述Flink计算框架中启动所述VertX;在所述AsyncTableFunction标准下,将写入所述Flink计算框架的数据转接给所述VertX。5.根据权利要求4所述的实时计算中的批量数据查询方法,其特征在于,在所述AsyncTableFunction标准下,在所述Flink计算框架中启动所述VertX,包括:在所述Asyn...

【专利技术属性】
技术研发人员:王鲁宁
申请(专利权)人:杭州玳数科技有限公司
类型:发明
国别省市:

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

1