[发明专利]一种数据查询方法及装置有效
申请号: | 201711295212.7 | 申请日: | 2017-12-08 |
公开(公告)号: | CN110019341B | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 张敢 | 申请(专利权)人: | 杭州海康威视数字技术股份有限公司 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/245 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 马敬;项京 |
地址: | 310051 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 查询 方法 装置 | ||
本申请实施例提供了一种数据查询方法及装置,方法包括:获取查询请求;根据所述查询请求建立至少一个计划树;根据预设的网络传输权重系数、I/O权重系数和CPU计算权重系数,确定每个计划树的代价;按照代价最低的计划树查询数据。应用本申请实施例,提高了数据查询效率。
技术领域
本申请涉及数据库技术领域,特别是涉及一种数据查询方法及装置。
背景技术
随着计算机技术的快速发展,电子数据激增。为了便于快速查询数据,基于结构化查询语言(Structured Query Language,SQL)的数据查询系统,如Google Dremel、Cloudera Impala、Berkeley Shark、Apache Drill等应运而生。
目前,利用数据查询系统查询数据时,用户将查询请求输入数据查询系统,数据查询系统基于查询请求可能建立执行计划,根据执行计划查询数据。
在数据查询系统在查询数据时,对执行计划进行代价估计,确定执行计划的最佳的连接顺序,也就是确定出耗时最少的执行计划,进而提高查询效率。但由于执行计划的代价估算不准确,也就无法有效的提高查询效率。
发明内容
本申请实施例的目的在于提供一种数据查询方法及装置,以提高数据查询效率。具体技术方案如下:
一方面,本申请实施例提供了一种数据查询方法,所述方法包括:
获取查询请求;
根据所述查询请求建立至少一个计划树;
根据预设的网络传输权重系数、输入(Input,I)/输出(Output,O)权重系数和中央处理器(Central Processing Unit,CPU)计算权重系数,确定每个计划树的代价;
按照代价最低的计划树查询数据。
在本申请的一个实施例中,所述根据预设的网络传输权重系数、I/O权重系数和CPU计算权重系数,确定每个计划树的代价的步骤,包括:
根据预设的网络传输权重系数、I/O权重系数和操作的CPU计算权重系数,计算每个计划树中每一操作的代价;
根据得到的每个计划树中每一操作的代价,确定每个计划树的代价。
在本申请的一个实施例中,所述计划树中包括扫描(scan)操作、过滤(filter)操作、投影(project)操作、广播连接(broatcast join)操作、洗牌哈希连接(shuffle hashjoin)操作、排序合并连接(sort merge join)操作和分组(group by)操作中的一种或多种;
所述根据预设的网络传输权重系数、I/O权重系数和操作的CPU计算权重系数,计算每个计划树中每一操作的代价的步骤,包括:
若计划树中包括scan操作,根据预设的I/O权重系数,计算每个计划树中scan操作的代价;
若计划树中包括filter操作,根据预设的filter操作的CPU计算权重系数,计算每个计划树中filter操作的代价;
若计划树中包括project操作,根据预设的project操作的CPU计算权重系数,计算每个计划树中project操作的代价;
若计划树中包括broatcast join操作,根据预设的网络传输权重系数和broatcast join操作的CPU计算权重系数,计算每个计划树中broatcast join操作的代价;
若计划树中包括shuffle hash join操作,根据预设的网络传输权重系数、I/O权重系数和shuffle hash join操作的CPU计算权重系数,计算每个计划树中shuffle hashjoin操作的代价;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视数字技术股份有限公司,未经杭州海康威视数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711295212.7/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置