一种数据查询方法及装置制造方法及图纸

技术编号:36400247 阅读:48 留言:0更新日期:2023-01-18 10:07
本申请提供一种数据查询方法及装置,该方法包括:接收数据查询语句;根据数据查询语句获取本次查询需要执行的目标运算数据;将目标运算数据进行数据放大处理,得到待处理运算数据;使用待处理运算数据进行运算处理,得到运算结果;根据运算结果确定数据查询语句的查询结果;输出查询结果。可见,实施这种实施方式,能够在数据库硬件加速过程中更好地进行高精度运算,从而使得其计算结果更加精确。从而使得其计算结果更加精确。从而使得其计算结果更加精确。

【技术实现步骤摘要】
一种数据查询方法及装置


[0001]本申请涉及计算机
,具体而言,涉及一种数据查询方法及装置。

技术介绍

[0002]目前,通用计算机中一般采用浮点数或定点数进行小数计算。其中,浮点数无法准确表示绝大多数十进制小数,从而使得其无法避免的计算误差会不断累积,进而导致计算结果不够准确。另一方面,定点数小数的可表示范围很小,这使得采用定点数小数进行计算得到的计算结果具有较高的局限性。可见,上述两种计算方式都不适用于数据库硬件加速过程。因此,如何在数据库硬件加速过程中更好地进行高精度运算,使计算结果更精确成为了技术人员亟待解决的一个问题。

技术实现思路

[0003]本申请实施例的目的在于提供一种数据查询方法及装置,能够在数据库硬件加速过程中更好地进行高精度运算,从而使得其计算结果更加精确。
[0004]本申请实施例第一方面提供了一种数据查询方法,包括:
[0005]接收数据查询语句;
[0006]根据所述数据查询语句获取本次查询需要执行的目标运算数据;
[0007]将所述目标运算数据进行数据放大处理,得到待处理运算数据;
[0008]使用所述待处理运算数据进行运算处理,得到运算结果;
[0009]根据所述运算结果确定所述数据查询语句的查询结果;
[0010]输出所述查询结果。
[0011]在上述实现过程中,该方法可以优先接收数据查询语句;然后,再根据数据查询语句获取本次查询需要执行的目标运算数据;再将目标运算数据进行数据放大处理,得到待处理运算数据;再后,使用待处理运算数据进行运算处理,得到运算结果;再然后,根据运算结果确定数据查询语句的查询结果;最后输出查询结果。可见,该方法能够在数据库硬件加速过程中更好地进行高精度运算,从而使得其计算结果更加精确。
[0012]进一步地,所述根据所述数据查询语句获取本次查询需要执行的目标运算数据,包括:
[0013]获取所述数据查询语句的语句结构,其中,所述语句结构至少包括语法树和/或查询计划;
[0014]根据所述语句结构提取本次查询需要执行的目标运算数据。
[0015]进一步地,所述方法还包括:
[0016]根据预设的数据表定义中的数据类型和所述目标运算数据,确定本次查询的数值计算上下限;
[0017]根据加速硬件所支持的预设数值类型和所述数值计算上下限判断对所述目标运算数据进行缩放是否会导致溢出;
[0018]如果否,则执行所述的将所述目标运算数据进行数据放大处理,得到待处理运算数据。
[0019]进一步地,所述将所述目标运算数据进行数据放大处理,得到待处理运算数据,包括:
[0020]判断对所述目标运算数据进行纯整数放大的数值量级是否超出预设的整数范围;
[0021]如果否,则将所述目标运算数据放大为纯整数,得到待处理运算数据。
[0022]进一步地,所述方法还包括:
[0023]当判断出对所述目标运算数据进行纯整数放大的数值量级超出所述预设的整数范围时,将所述目标运算数据转换为浮点数,得到待处理运算数据。
[0024]进一步地,所述根据所述运算结果确定所述数据查询语句的查询结果,包括:
[0025]获取所述运算结果的还原系数;其中,当所述待处理运算数据为纯整数时,所述还原系数为将所述目标运算数据放大为纯整数时的放大倍数;当所述待处理运算数据为浮点数时,所述还原系数为将所述目标运算数据转换为浮点数时的缩放次数;
[0026]根据所述还原系数对所述运算结果进行还原处理,得到还原后的运算结果;
[0027]基于所述还原后的运算结果确定所述数据查询语句的查询结果。
[0028]本申请实施例第二方面提供了一种数据查询装置,所述数据查询装置包括:
[0029]接收单元,用于接收数据查询语句;
[0030]获取单元,用于根据所述数据查询语句获取本次查询需要执行的目标运算数据;
[0031]处理单元,用于将所述目标运算数据进行数据放大处理,得到待处理运算数据;
[0032]运算单元,用于使用所述待处理运算数据进行运算处理,得到运算结果;
[0033]查询结果确定单元,用于根据所述运算结果确定所述数据查询语句的查询结果;
[0034]输出单元,用于输出所述查询结果。
[0035]在上述实现过程中,该装置可以通过接收单元接收数据查询语句;通过获取单元来根据所述数据查询语句获取本次查询需要执行的目标运算数据;通过处理单元将所述目标运算数据进行数据放大处理,得到待处理运算数据;通过运算单元使用所述待处理运算数据进行运算处理,得到运算结果;通过查询结果确定单元来根据所述运算结果确定所述数据查询语句的查询结果;通过输出单元输出所述查询结果。可见,该装置能够在数据库硬件加速过程中更好地进行高精度运算,从而使得其计算结果更加精确。
[0036]进一步地,所述获取单元包括:
[0037]结构获取子单元,用于获取所述数据查询语句的语句结构,其中,所述语句结构至少包括语法树和/或查询计划;
[0038]提取子单元,用于根据所述语句结构提取本次查询需要执行的目标运算数据。
[0039]进一步地,所述数据查询装置还包括:
[0040]数值限度确定单元,用于根据预设的数据表定义中的数据类型和所述目标运算数据,确定本次查询的数值计算上下限;
[0041]判断单元,用于根据加速硬件所支持的预设数值类型和所述数值计算上下限判断对所述目标运算数据进行缩放是否会导致溢出;
[0042]所述处理单元,具体用于在对所述目标运算数据进行缩放不会导致溢出时,将所述目标运算数据进行数据放大处理,得到待处理运算数据。
[0043]进一步地,所述处理单元包括:
[0044]判断子单元,用于判断对所述目标运算数据进行纯整数放大的数值量级是否超出预设的整数范围;
[0045]处理子单元,用于在对所述目标运算数据进行纯整数放大的数值量级未超出预设的整数范围时,将所述目标运算数据放大为纯整数,得到待处理运算数据。
[0046]进一步地,所述处理子单元,还用于在对所述目标运算数据进行纯整数放大的数值量级超出所述预设的整数范围时,将所述目标运算数据转换为浮点数,得到待处理运算数据。
[0047]进一步地,所述查询结果确定单元包括:
[0048]系数获取子单元,用于获取所述运算结果的还原系数;其中,当所述待处理运算数据为纯整数时,所述还原系数为将所述目标运算数据放大为纯整数时的放大倍数;当所述待处理运算数据为浮点数时,所述还原系数为将所述目标运算数据转换为浮点数时的缩放次数;
[0049]还原子单元,用于根据所述还原系数对所述运算结果进行还原处理,得到还原后的运算结果;
[0050]确定子单元,用于基于所述还原后的运算结果确定所述数据查询语句的查询结果。
[0051]本申请实施例第三方面提供本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据查询方法,其特征在于,包括:接收数据查询语句;根据所述数据查询语句获取本次查询需要执行的目标运算数据;将所述目标运算数据进行数据放大处理,得到待处理运算数据;使用所述待处理运算数据进行运算处理,得到运算结果;根据所述运算结果确定所述数据查询语句的查询结果;输出所述查询结果。2.根据权利要求1所述的数据查询方法,其特征在于,所述根据所述数据查询语句获取本次查询需要执行的目标运算数据,包括:获取所述数据查询语句的语句结构,其中,所述语句结构至少包括语法树和/或查询计划;根据所述语句结构提取本次查询需要执行的目标运算数据。3.根据权利要求1所述的数据查询方法,其特征在于,所述方法还包括:根据预设的数据表定义中的数据类型和所述目标运算数据,确定本次查询的数值计算上下限;根据加速硬件所支持的预设数值类型和所述数值计算上下限判断对所述目标运算数据进行缩放是否会导致溢出;如果否,则执行所述的将所述目标运算数据进行数据放大处理,得到待处理运算数据。4.根据权利要求1所述的数据查询方法,其特征在于,所述将所述目标运算数据进行数据放大处理,得到待处理运算数据,包括:判断对所述目标运算数据进行纯整数放大的数值量级是否超出预设的整数范围;如果否,则将所述目标运算数据放大为纯整数,得到待处理运算数据。5.根据权利要求4所述的数据查询方法,其特征在于,所述方法还包括:当判断出对所述目标运算数据进行纯整数放大的数值量级超出所述预设的整数范围时,将所述目标运算数据转换为浮点数,得到待处理运算数据。6.根据权利要求1所述的数据查询方法,其特征在于,所述根据所述运算结果确定...

【专利技术属性】
技术研发人员:蒿杰吕志丰彭琳陈韶伟高韵沣陆佳霖
申请(专利权)人:芯跳科技广州有限公司
类型:发明
国别省市:

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

1