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

技术编号:36158660 阅读:54 留言:0更新日期:2022-12-31 20:05
本发明专利技术实施例涉及一种数据查询方法及装置。所述方法通过接收用户的查询请求,对查询请求进行解析得到查询语句;根据查询语句确定优化规则,并按照优化规则筛选出数据仓库中的数据及对应的文件,对被筛选出的数据进行记录,将数据记录转换为N维数据;根据查询语句确定降维策略,并根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示;根据一维数据表示对被筛选出的文件进行合并,并构建索引;基于索引在合并后的文件中读取查询请求对应的目标数据。其利用数据跳过加速查询技术,在不影响数据读取速度的情况下重组数据来提升查询性能。下重组数据来提升查询性能。下重组数据来提升查询性能。

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


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

技术介绍

[0002]在数据仓库中,数据的读取速度和查询性能是衡量数据仓库优越性的关键权衡因素。一般情况下,数量合理的小文件可以通过提高并行性,加速数据读取,但小文件数量过多,会导致查询性能很差。在数据读取时,数据通常基于分区或者数据到达时间位于同一个文件内。对于大多数查询引擎而言,频繁查询的数据位于同一位置时,往往会获得优秀的查询性能。但是即便如此,数据分布的不均衡性仍然会对数据查询性能造成很大影响,当每个文件的上界和下界的范围很大时,仍然需要扫描所有文件或者所有的分区。

技术实现思路

[0003]鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据查询方法及装置。
[0004]第一方面,本专利技术实施例提供了一种数据查询方法,所述方法包括以下步骤:
[0005]接收用户的查询请求,对查询请求进行解析得到查询语句;其中,所述查询语句包含与优化规则对应的第一关键词,与降维策略对应的第二关键词;
[0006]根据查询语句确定优化规则,并按照优化规则筛选出数据仓库中的数据及对应的文件,对被筛选出的数据进行记录,将数据记录转换为N维数据;
[0007]根据查询语句确定降维策略,并根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示;
[0008]根据一维数据表示对被筛选出的文件进行合并,并构建索引;
[0009]基于索引在合并后的文件中读取查询请求对应的目标数据。
[0010]在一种实施方式中,所述优化规则包括谓词下推。
[0011]在一种实施方式中,所述根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示,包括:
[0012]基于希尔伯特曲线,将N维数据转换成与所述数据记录对应的一维数据表示。
[0013]在一种实施方式中,所述根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示,包括:
[0014]基于Z

Order曲线,将N维数据转换成与所述数据记录对应的一维数据表示。
[0015]在一种实施方式中,所述根据一维数据表示对被筛选出的文件进行合并,并构建索引之前,还包括:
[0016]将所述数据仓库的隔离级别设置为快照隔离。
[0017]第二方面,本专利技术实施例提供了一种数据查询装置,所述装置包括:
[0018]解析模块,用于接收用户的查询请求,对查询请求进行解析得到查询语句;其中,所述查询语句包含与优化规则对应的第一关键词,与降维策略对应的第二关键词;
[0019]优化模块,用于根据查询语句确定优化规则,并按照优化规则筛选出数据仓库中的数据及对应的文件,对被筛选出的数据进行记录,将数据记录转换为N维数据;
[0020]降维模块,用于根据查询语句确定降维策略,并根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示;
[0021]处理模块,用于根据一维数据表示对被筛选出的文件进行合并,并构建索引;
[0022]查询模块,用于基于索引在合并后的文件中读取查询请求对应的目标数据。
[0023]在一种实施方式中,所述降维模块,还用于基于希尔伯特曲线,将N维数据转换成与所述数据记录对应的一维数据表示。
[0024]在一种实施方式中,所述降维模块,还用于基于Z

Order曲线,将N维数据转换成与所述数据记录对应的一维数据表示。
[0025]在一种实施方式中,所述数据查询装置还包括:
[0026]隔离设置模块,用于在所述根据一维数据表示对被筛选出的文件进行合并,并构建索引之前,将所述数据仓库的隔离级别设置为快照隔离。
[0027]第三方面,本专利技术实施例提供了一种计算机设备,所述计算机设备包括:
[0028]一个或多个处理器;
[0029]存储器,用于存储一个或多个程序;
[0030]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中任一项所述的数据查询方法。
[0031]第四方面,本专利技术实施例提供了一种计算机可读存储介质。
[0032]所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一项所述的数据查询方法。
[0033]在本专利技术实施例中,通过接收用户的查询请求,对查询请求进行解析得到查询语句;其中,所述查询语句包含与优化规则对应的第一关键词,与降维策略对应的第二关键词;根据查询语句确定优化规则,并按照优化规则筛选出数据仓库中的数据及对应的文件,对被筛选出的数据进行记录,将数据记录转换为N维数据;根据查询语句确定降维策略,并根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示;根据一维数据表示对被筛选出的文件进行合并,并构建索引;基于索引在合并后的文件中读取查询请求对应的目标数据。其利用数据跳过加速查询技术,在不影响数据读取速度的情况下重组数据来提升查询性能。
[0034]在关键参数测评(集合列、输出文件大小、CUBE大小等),在相同的集群配置下执行相同的查询语句,优化后比优化前查询效率提高了约15倍。在SSB基准测试中,在相同的集群配置下执行相同的查询语句,优化后比优化前查询效率提高了约20倍。
附图说明
[0035]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0036]图1为本专利技术实施例一提供的一种数据查询方法的流程图;
[0037]图2为本专利技术实施例二提供的一种数据查询装置的结构示意图;
[0038]图3为本专利技术实施例三提供的一种计算机设备的结构示意图。
具体实施方式
[0039]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0040]数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一旦某个数据进入数据仓库以后,一般情况下将被长期保留,也就是数据仓库中一般有大量的查询操作,但修改和删除操作很少,通常只需要定期的加载、刷新。
[0041]在数据仓库中,数据的读取速度和查询性能是衡量数据仓库优越性的关键权衡因素。一般情况下,数量合理的小文件可以通过提高并行性,加速数据读取,但小文件数量过多,会导致查询性能很差。在数据读取时,数据通常基于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据查询方法,其特征在于,包括:接收用户的查询请求,对查询请求进行解析得到查询语句;其中,所述查询语句包含与优化规则对应的第一关键词,与降维策略对应的第二关键词;根据查询语句确定优化规则,并按照优化规则筛选出数据仓库中的数据及对应的文件,对被筛选出的数据进行记录,将数据记录转换为N维数据;根据查询语句确定降维策略,并根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示;根据一维数据表示对被筛选出的文件进行合并,并构建索引;基于索引在合并后的文件中读取查询请求对应的目标数据。2.根据权利要求1所述的方法,其特征在于:所述优化规则包括谓词下推。3.根据权利要求1所述的方法,其特征在于,所述根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示,包括:基于希尔伯特曲线,将N维数据转换成与所述数据记录对应的一维数据表示。4.根据权利要求1所述的方法,其特征在于,所述根据降维策略对N维数据进行数据降维处理,得到与所述数据记录对应的一维数据表示,包括:基于Z

Order曲线,将N维数据转换成与所述数据记录对应的一维数据表示。5.根据权利要求1至4任一项所述的方法,其特征在于,所述根据一维数据表示对被筛选出的文件进行合并,并构建索引之前,还包括:将所述数据仓库的隔离级别设置为快照隔离。6.一种数据查询装置,其特征在于,包括:解析模块,用于接收用户的查询请求,对...

【专利技术属性】
技术研发人员:王玲何海锋吴海强曾启彦廖梓鸿
申请(专利权)人:广州点金石信息技术有限公司
类型:发明
国别省市:

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

1