数据分析方法、装置、设备及存储介质制造方法及图纸

技术编号:39317614 阅读:8 留言:0更新日期:2023-11-12 16:00
本申请提供一种数据分析方法、装置、设备及存储介质。应用于JDBC客户端,该方法包括:根据用户基于所述JDBC客户端输入的连接请求与数据库服务端建立连接;接收所述用户输入的脚本,所述脚本中包括第一语言语句、切换标识和第二语言语句;执行所述脚本,从JDBC接口加载第一编译器,在检测到所述切换标识时,从所述JDBC接口加载第二编译器,所述第一编译器用于编译所述第一语言语句,所述第二编译器用于编译所述第二语言语句;将预先确定的用户标识与所述计算引擎之间的绑定关系和编译后的语句封装为执行请求;将所述执行请求发送到数据库服务端,并接收所述数据库服务端返回的执行结果。本申请的方法,提高了数据分析的效率。提高了数据分析的效率。提高了数据分析的效率。

【技术实现步骤摘要】
数据分析方法、装置、设备及存储介质


[0001]本申请涉及大数据
,尤其涉及一种数据分析方法、装置、设备及存储介质。

技术介绍

[0002]在web开发和大数据分析等场景中,往往会涉及到从数据库中读取数据进行分析。为了满足不同业务场景的需求,在进行数据分析时,可能需要基于不同的业务场景切换不同的编程语言进行进一步的分析。
[0003]一些实现中,在用户使用一种编程语言对数据库中的数据进行操作后,若需要采用另一种编程语言编写的代码来对数据库做进一步分析,需要用户通过编程调用另一种编程语言的jar包或者代码块,还需要设置相关参数,操作较繁琐,从而导致数据分析效率较低。

技术实现思路

[0004]本申请提供一种数据分析方法、装置、设备及存储介质,用以解决数据分析效率较低的技术问题。
[0005]第一方面,本申请提供一种数据分析方法,应用于JDBC客户端,该方法包括:
[0006]根据用户基于JDBC客户端输入的连接请求与数据库服务端建立连接;
[0007]接收用户输入的脚本,脚本中包括第一语言语句、切换标识和第二语言语句;
[0008]执行脚本,从JDBC接口加载第一编译器,在检测到切换标识时,从JDBC接口加载第二编译器,第一编译器用于编译第一语言语句,第二编译器用于编译第二语言语句;
[0009]将预先确定的用户标识与计算引擎之间的绑定关系和编译后的语句封装为执行请求;
[0010]将执行请求发送到数据库服务端,并接收数据库服务端返回的执行结果。
[0011]在一种可能的实现方式中,将预先确定的用户标识与计算引擎之间的绑定关系和编译后的语句封装为执行请求,包括:
[0012]通过第一编译器编译第一语言语句,得到编译后的第一语言语句,将预先确定的用户标识与计算引擎之间的绑定关系和编译后的第一语言语句封装为第一执行请求;
[0013]通过第二编译器编译第二语言语句,得到编译后的第二语言语句,将预先确定的用户标识与计算引擎之间的绑定关系和编译后的第二语言语句封装为第二执行请求。
[0014]在一种可能的实现方式中,JDBC接口中封装有连接下述至少一种计算引擎的API:spark、hive和flink。
[0015]在一种可能的实现方式中,在执行脚本之前,方法还包括:
[0016]创建计算引擎的session对象的链接信息,链接信息中包括用户的用户标识和计算引擎的端口号和类型;
[0017]根据链接信息确定用户标识与计算引擎之间的绑定关系。
[0018]在一种可能的实现方式中,根据用户基于JDBC客户端输入的连接请求与数据库服务端建立连接,包括:根据连接请求从JDBC维护的数据库连接池中获取数据库连接。
[0019]在一种可能的实现方式中,在接收数据库服务端返回的执行结果之后,方法还包括:将数据库连接存回数据库连接池中。
[0020]在一种可能的实现方式中,第一语言、第二语言为不同的编程语言,当计算引擎为spark时,第一语言、第二语言为如下中的任一种:hiveSQL、sparkSQL、scala、pyspark。
[0021]第二方面,本申请提供一种数据分析方法,应用于数据库服务端,数据库服务端运行有计算引擎,该方法包括:
[0022]接收并解析JDBC客户端发送的执行请求,所述执行请求中包括第一语言语句;
[0023]通过计算引擎执行执行请求,得到执行结果;
[0024]将执行结果保存在计算引擎对应的内存中,并将执行结果返回JDBC客户端。
[0025]在一种可能的实现方式中,执行请求中包括用户标识与计算引擎之间的绑定关系,通过计算引擎执行执行请求,包括:
[0026]根据绑定关系判断是否执行第一语言语句,若检测到使用的计算引擎与绑定关系中的计算引擎一致,则执行第一语言语句;若不一致,则向JDBC客户端返回执行结束的标识。
[0027]第三方面,本申请提供一种数据分析装置,应用于JDBC客户端,该装置包括建立模块,接收模块,第一执行模块,封装模块和通讯模块,其中,
[0028]建立模块,用于根据用户基于JDBC客户端输入的连接请求与数据库服务端建立连接;
[0029]接收模块,用于接收用户输入的脚本,脚本中包括第一语言语句、切换标识和第二语言语句;
[0030]第一执行模块,用于执行脚本,从JDBC接口加载第一编译器,在检测到切换标识时,从JDBC接口加载第二编译器,第一编译器用于编译第一语言语句,第二编译器用于编译第二语言语句;
[0031]封装模块,用于将预先确定的用户标识与计算引擎之间的绑定关系和编译后的语句封装为执行请求;
[0032]通讯模块,用于将执行请求发送到数据库服务端,并接收数据库服务端返回的执行结果。
[0033]在一种可能的实现方式中,封装模块,具体用于:
[0034]通过第一编译器编译第一语言语句,得到编译后的第一语言语句,将预先确定的用户标识与计算引擎之间的绑定关系和编译后的第一语言语句封装为第一执行请求;
[0035]通过第二编译器编译第二语言语句,得到编译后的第二语言语句,将预先确定的用户标识与计算引擎之间的绑定关系和编译后的第二语言语句封装为第二执行请求。
[0036]在一种可能的实现方式中,JDBC接口中封装有连接下述至少一种计算引擎的API:spark、hive和flink。
[0037]在一种可能的实现方式中,装置还包括:
[0038]创建模块,用于创建计算引擎的session对象的链接信息,链接信息中包括用户的用户标识和计算引擎的端口号和类型;
[0039]确定模块,用于根据链接信息确定用户标识与计算引擎之间的绑定关系。
[0040]在一种可能的实现方式中,建立模块,具体用于:根据连接请求从JDBC维护的数据库连接池中获取数据库连接。
[0041]在一种可能的实现方式中,装置还包括:
[0042]存储模块,用于将数据库连接存回数据库连接池中。
[0043]在一种可能的实现方式中,第一语言、第二语言为不同的编程语言,当计算引擎为spark时,第一语言、第二语言为如下中的任一种:hiveSQL、sparkSQL、scala、pyspark。
[0044]第四方面,本申请提供一种数据分析装置,应用于数据库服务端,数据库服务端运行有计算引擎,该装置包括解析模块,第二执行模块和保存模块,其中,
[0045]解析模块,用于接收并解析JDBC客户端发送的执行请求,执行请求中包括第一语言语句;
[0046]第二执行模块,用于通过计算引擎执行执行请求,得到执行结果;
[0047]保存模块,用于将执行结果保存在计算引擎对应的内存中,并将执行结果返回JDBC客户端。
[0048]在一种可能的实现方式中,第二执行模块,具体用于:
[0049]根据绑定关系判本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据分析方法,其特征在于,应用于JDBC客户端,所述方法包括:根据用户基于所述JDBC客户端输入的连接请求与数据库服务端建立连接;接收所述用户输入的脚本,所述脚本中包括第一语言语句、切换标识和第二语言语句;执行所述脚本,从JDBC接口加载第一编译器,在检测到所述切换标识时,从所述JDBC接口加载第二编译器,所述第一编译器用于编译所述第一语言语句,所述第二编译器用于编译所述第二语言语句;将预先确定的用户标识与计算引擎之间的绑定关系和编译后的语句封装为执行请求;将所述执行请求发送到数据库服务端,并接收所述数据库服务端返回的执行结果。2.根据权利要求1所述的方法,其特征在于,所述将预先确定的用户标识与所述计算引擎之间的绑定关系和编译后的语句封装为执行请求,包括:通过所述第一编译器编译所述第一语言语句,得到编译后的第一语言语句,将所述预先确定的用户标识与所述计算引擎之间的绑定关系和所述编译后的第一语言语句封装为第一执行请求;通过所述第二编译器编译所述第二语言语句,得到编译后的第二语言语句,将所述预先确定的用户标识与所述计算引擎之间的绑定关系和所述编译后的第二语言语句封装为第二执行请求。3.根据权利要求2所述的方法,其特征在于,所述JDBC接口中封装有连接下述至少一种计算引擎的API:spark、hive和flink。4.根据权利要求1

3任一项所述的方法,其特征在于,在所述执行所述脚本之前,所述方法还包括:创建所述计算引擎的session对象的链接信息,所述链接信息中包括所述用户的用户标识和所述计算引擎的端口号和类型;根据所述链接信息确定所述用户标识与所述计算引擎之间的绑定关系。5.根据权利要求1所述的方法,其特征在于,所述根据用户基于所述JDBC客户端输入的连接请求与数据库服务端建立连接,包括:根据所述连接请求从所述JDBC维护的数据库连接池中获取数据库连接。6.根据权利要求5所述的方法,其特征在于,在所述接收所述数据库服务端返回的执行结果之后,所述方法还包括:将所述数据库连接存回所述数据库连接池中。7.根据权利要求5或6所述的方法,其特征在于,所述第一语言、所述第二语言为不同的编程语言,当所述计算引擎为spark时,所述第一语言、所述第二语言为如下中的任一种:hiveSQL、sparkSQL、scala、pyspark。8.一种数据分析方法,其特征在于,应用于数据库服务端,所述数据库服务端运行有计算引擎,所述方法...

【专利技术属性】
技术研发人员:王兴杰范伟强刘武宋雨伦李大中谭晟中
申请(专利权)人:联通数字科技有限公司
类型:发明
国别省市:

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

1