System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及数据查询,具体涉及一种语句处理方法、装置、设备及计算机可读存储介质。
技术介绍
1、数据仓库,即存放数据的仓库,它集合了各个业务系统的数据,用于企业做数据分析、出报告、做决策。相较于常规数据库,数据仓库所存放的数据量更为庞大。
2、然而,随着企业内部不同业务应用系统规模不断扩大,数据量呈现爆炸式增长的趋势,传统数据仓库软件,例如hive sql的查询速度愈发不理想,会使用户耗费较长的等待时间。
技术实现思路
1、本申请实施例提供一种语句处理方法、装置、设备及计算机可读存储介质,旨在解决现有的数据仓库存在的查询速度低,用户等待时间长的技术问题。
2、一方面,本申请实施例提供一种语句处理方法,包括:
3、获取待处理的目标语句;
4、根据所述目标语句从预设数据库中确定所述目标语句对应的目标数据表;
5、从所述预设数据库中提取得到所述目标数据表关联的元数据表,其中,所述元数据表包括所述目标数据表中各行列数据的统计信息;
6、根据所述元数据表中的统计信息与所述目标语句,确定所述目标语句对应的查询结果。
7、作为本申请的一种可选实施例,所述根据所述元数据表中的统计信息与所述目标语句,确定所述目标语句对应的查询结果,包括:
8、提取所述目标语句的查询语义;
9、若所述查询语义为数值查询语义,则将所述元数据表中的统计信息分别与所述目标语句中的过滤条件进行比对,得到各所述统计信
10、根据各所述统计信息对应的过滤结果,从所述目标数据表中的各行列数据筛选出目标行列;
11、查询所述目标行列,得到所述目标语句对应的查询结果。
12、作为本申请的一种可选实施例,所述提取所述目标语句的查询语义之后,所述方法还包括:
13、若所述查询语义为统计值查询语义,则将所述目标语句中的统计函数与所述元数据表中的统计信息进行比对;
14、根据所述统计信息中与所述统计函数关联的目标统计值确定所述目标语句对应的查询结果。
15、作为本申请的一种可选实施例,所述将所述目标语句中的查询函数与所述元数据表中的统计信息进行比对之后,所述方法包括:
16、若所述统计信息中不存在与所述统计函数关联的统计值,则根据所述统计函数对所述目标数据表中的数据进行处理,得到所述目标语句对应的查询结果;
17、若统计查询函数对应的查询频率大于预设的频率阈值,则将所述目标语句对应的查询结果与所述统计函数关联存储于所述元数据表中。
18、作为本申请的一种可选实施例,所述根据各所述统计信息对应的过滤结果,从所述预设数据库中的各行列数据筛选出目标行列之后,所述方法包括:
19、若所述目标行列中不存在所述目标语句对应的查询结果,则查询所述目标数据表,得到所述目标语句对应的查询结果。
20、作为本申请的一种可选实施例,所述从所述预设数据库中提取得到所述目标数据表关联的元数据表之前,所述方法包括:
21、针对所述预设数据库中的每一数据表,根据预设统计函数对所述数据表中各行列的数据进行统计处理,得到所述数据表中各行列的初始统计信息;
22、根据所述数据表中各行列的初始统计信息生成所述数据表对应的元数据表;
23、将所述元数据表与所述数据表关联存储在所述预设数据库中。
24、作为本申请的一种可选实施例,所述从所述预设数据库中提取得到所述目标数据表关联的元数据表之前,所述方法之前,所述方法包括:
25、对所述目标语句进行解析,得到所述目标语句对应的抽象语法树;
26、若所述抽象语法树满足预设的优化处理规则,则执行所述从所述预设数据库中提取得到所述目标数据表关联的元数据表的步骤。
27、另一方面,本申请实施例还提供一种语句处理装置,包括:
28、获取模块,用于获取待处理的目标语句;
29、搜索模块,用于根据所述目标语句从预设数据库中确定所述目标语句对应的目标数据表;
30、提取模块,用于从所述预设数据库中提取得到所述目标数据表关联的元数据表,其中,所述元数据表包括所述目标数据表中各行列数据的统计信息;
31、处理模块,用于根据所述元数据表中的统计信息与所述目标语句,确定所述目标语句对应的查询结果。
32、另一方面,本申请实施例还提供一种语句处理设备,所述语句处理设备包括处理器、存储器以及存储于所述存储器中并可在所述处理器上运行的语句处理程序,所述处理器执行所述语句处理程序以实现上述的语句处理方法中的步骤。
33、另一方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有语句处理程序,所述语句处理程序被处理器执行以实现上述的语句处理方法中的步骤。
34、本申请实施例提供的语句处理方法,在获取到数据仓库的查询语句后,先确定该语句对应的目标数据表,然后从数据库中提取得到目标数据表关联的元数据表,以完成对目标语句的查询,由于元数据表包括目标数据表中各行列数据的统计信息,因此,基于元数据表中的统计信息来对目标语句查询可以有效减少数据读取量或者数据计算量,从而提高了目标语句的查询效率,降低了用户等待的时间,提高用户体验。
本文档来自技高网...【技术保护点】
1.一种语句处理方法,其特征在于,包括:
2.根据权利要求1所述的语句处理方法,其特征在于,所述根据所述元数据表中的统计信息与所述目标语句,确定所述目标语句对应的查询结果,包括:
3.根据权利要求2所述的语句处理方法,其特征在于,所述提取所述目标语句的查询语义之后,所述方法还包括:
4.根据权利要求3所述的语句处理方法,其特征在于,所述将所述目标语句中的查询函数与所述元数据表中的统计信息进行比对之后,所述方法包括:
5.根据权利要求2所述的语句处理方法,其特征在于,所述根据各所述统计信息对应的过滤结果,从所述预设数据库中的各行列数据筛选出目标行列之后,所述方法包括:
6.根据权利要求1所述的语句处理方法,其特征在于,所述从所述预设数据库中提取得到所述目标数据表关联的元数据表之前,所述方法包括:
7.根据权利要求1~6任一项所述的语句处理方法,其特征在于,所述从所述预设数据库中提取得到所述目标数据表关联的元数据表之前,所述方法包括:
8.一种语句处理装置,其特征在于,包括:
9.一种语句
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有语句处理程序,所述语句处理程序被处理器执行以实现权利要求1至7任一项所述的语句处理方法中的步骤。
...【技术特征摘要】
1.一种语句处理方法,其特征在于,包括:
2.根据权利要求1所述的语句处理方法,其特征在于,所述根据所述元数据表中的统计信息与所述目标语句,确定所述目标语句对应的查询结果,包括:
3.根据权利要求2所述的语句处理方法,其特征在于,所述提取所述目标语句的查询语义之后,所述方法还包括:
4.根据权利要求3所述的语句处理方法,其特征在于,所述将所述目标语句中的查询函数与所述元数据表中的统计信息进行比对之后,所述方法包括:
5.根据权利要求2所述的语句处理方法,其特征在于,所述根据各所述统计信息对应的过滤结果,从所述预设数据库中的各行列数据筛选出目标行列之后,所述方法包括:
6.根据权利要求1所述的语句处理方法,其特征在于,所述...
【专利技术属性】
技术研发人员:陈天宇,蔡适择,曾昭正,贺升辉,关勋,
申请(专利权)人:顺丰科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。