【技术实现步骤摘要】
一种支持数据库复杂LIKE查询的选择度估计方法
[0001]本专利技术涉及数据库
,尤其涉及一种支持数据库复杂
LIKE
查询的选择度估计方法
。
技术介绍
[0002]在当今的互联网背景下,信息的数量和体积都呈现爆炸式的增长
。
越来越多的人们开始意识到大量的数据中蕴含着丰富的资源
。
数据库作为数据的载体,可以支持选择
、
过滤和连接等多种操作,一直是数据查询和分析的重要工具
。
但随着数据量的增加,一条复杂查询如果没能选择最优的查询计划执行,那么它的执行时间可能长达十几个小时甚至几天
。
选择度估计作为查询优化的核心直接影响着执行计划的选择,可以说选择度估计的准确与否直接关系到能否选择最优的执行计划
。
[0003]目前主流的数据库在字符型谓词
LIKE
的选择度估计问题中一般不考虑数据的分布情况而使用经验值作为估计结果,如
MySQL
和
Postgre ...
【技术保护点】
【技术特征摘要】
1.
一种支持数据库复杂
LIKE
查询的选择度估计方法,其特征在于:该方法包括如下步骤:步骤1:构建复杂
LIKE
查询负载;步骤2:基于复杂
LIKE
查询负载,构建训练数据集和测试数据集;步骤3:融合查询类型信息;步骤4:标识通配符的特殊性;步骤5:基于神经语言模型对选择度信息进行编码;步骤6:使用前馈神经网络对选择度信息进行解码;步骤7:返回选择度估计结果
。2.
根据权利要求1所述的支持数据库复杂
LIKE
查询的选择度估计方法,其特征在于:所述步骤1中,以两个小概率
α1和
α2随机将字符属性中的某一字符置为
′
%
′
和
′
_
′
,通过这种方式得到该数据集上的复杂
LIKE
查询
。3.
根据权利要求2所述的支持数据库复杂
LIKE
查询的选择度估计方法,其特征在于:所述步骤2的具体方法为:将步骤1中构建得到的复杂
LIKE
查询负载
str
i
拼接在
SQL
语句中带入数据库,在真实数据集上查询,获得与
str
i
对应的真实选择度
sel
i
,这时数据变成由查询子串和真实选择度构成的二元组<
str
i
,
sel
i
>,随机取出二元组中的
90
%作为训练数据集,剩余的
10
%作为测试数据集
。4.
根据权利要求3所述的支持数据库复杂
LIKE
查询的选择度估计方法,其特征在于:所述步骤3的具体方法为:将第
i
个查询子串即复杂
LIKE
查询负载
str
i
以字符为单位划分,组成输入序列
str
i
=
{c
i
,1,
c
i
,2,
...
,
c
i,k
}
,通过嵌入层将输入序列
str
i
中每个字符嵌入为神经网络可以计算的长度为
l
c
的实值向量
x
i,n
,
n
=
1、2、...、k
,构成嵌入向量集
{x
i
,1,
x
i
,2,
...
,
x
i,k
}
;
...
【专利技术属性】
技术研发人员:杨晓春,佟帅辰,张运哲,王斌,翟莹莹,吕振辽,
申请(专利权)人:东北大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。