基于自适应数据集划分方式的大数据Top-k查询方法技术

技术编号:18497164 阅读:18 留言:0更新日期:2018-07-21 20:12
本发明专利技术公开一种基于自适应数据集划分方式的大数据Top‑k查询方法,包括以下步骤:对系统进行初始化操作,构建超平面簇及数据集;对数据集进行自适应划分,获得稳定的k‑切割点;对所述数据集进行Top‑k排序查询;自适应调整系统数据集并建立常用数据集。本发明专利技术中提供一种基于自适应数据集划分方式的大数据Top‑k查询方法,该方法适用于云环境下的大数据Top‑k查询,通过对数据集进行自适应划分,降低了查询的数据量,提高了查询速度,并对系统的数据集进行自适应调整,建立常用数据集,能够进一步减少数据集读取次数,提高查询效率。

Top-k query method for big data based on adaptive data partition method

The invention discloses a large data Top k Query Method Based on adaptive data set partitioning, including the following steps: initializing the system, constructing the hyperplane cluster and data set; adaptive partition of the data set to obtain a stable K cutting point; Top K Sorting Query for the data set; The system data set should be adjusted and common data sets should be established. In this invention, a large data Top k Query Method Based on adaptive data set partition is provided. This method is suitable for large data Top k Query under the cloud environment. By self-adaptive partition of data set, the data amount of query is reduced, query speed is improved, and the data set of the system is adjusted adaptively. Common data sets can further reduce the number of data sets to read and improve query efficiency.

【技术实现步骤摘要】
基于自适应数据集划分方式的大数据Top-k查询方法
本专利技术涉及Top-k查询方法。更具体地,涉及一种基于自适应数据集划分方式的大数据Top-k查询方法。
技术介绍
随着数据量的增大,分布式Top-k查询越来越受到关注。分布式Top-k(前k项)查询是由中心计算节点通过汇聚分布在不同地理位置的数据列表,计算出全局汇聚值最大的前k个对象及汇聚值。其中数据列表的每一项都是一个数据对<对象,对象值>,数据对中的对象和对象值都包含有数据提供方的敏感信息。分布式Top-k查询计算在网络和系统监控、信息采集、传感器网络、P2P系统以及数据流控制系统等
都有广泛的应。从数据划分的方式来看,分布式环境下的Top-k问题可以归纳为垂直划分和水平划分两大类。所谓的垂直划分是数据按属性进行划分,类似于关系数据库的列存储方式,早期的分布式Top-k查询研究多使用这种划分方式。围绕着Top-k查询问题,近些年来开展了很多有益的研究工作。但是关系数据库以及传统的分布式环境都很难有效应对大数据环境下的Top-k查询,主要原因在于数据对象及处理方法产生了很大的变化目前,大数据环境主要涉及到云环境,云环境下数据划分的基本原则是:尽可能地将数据均匀地划分到各个服务器上。这种均匀不仅体现在数据量的均匀上,更重要的是面对特定应用时,这种划分能够尽可能地保证每个服务器上的数据对最后结果均有贡献。进一步地,在Top-k领域具有代表性的水平划分方式有如下几种:随机划分、基于网格、基于角度和基于超平面。云环境下的大数据Top-k查询面临着新的挑战。Top-k问题在MapReduce框架下有很直接的解决方案,即利用MapReduce进行数据排序再返回前k个值。这种方案既符合MapReduce批处理的特点,也容易实现,但其最大的缺点就是处理时间过长。每次到来一个新的查询,就要对全部数据进行一次处理,数据量巨大和查询频繁时该方法均不可取。因此,需要提供一种基于自适应数据集划分方式的大数据Top-k查询方法。
技术实现思路
本专利技术的目的在于提供一种基于自适应数据集划分方式的大数据Top-k查询方法。为达到上述目的,本专利技术采用下述技术方案:一种基于自适应数据集划分方式的大数据Top-k查询方法,包括以下步骤:S1:对系统进行初始化操作,构建超平面簇及数据集;S2:对数据集进行自适应划分,获得稳定的k-切割点;S3:对所述数据集进行Top-k排序查询;S4:自适应调整系统数据集并建立常用数据集。优选地,步骤S1包括:S101:设用户查询请求中第j个元素分配的请求权重值为pj,各pj组合成的列向量为P,且S102:设第j维属性变量为yj,各yj组合成的列向量为Y,且YT=[y1,y2,y3,…];S103:根据查询请求权重向量P构建超平面簇F,且F=YT*P;S104:确定数据集维度为N,数据集数据为xij。进一步优选地,步骤S2包括:S201:获取数据集各维度的最大值为pjmax,确定数据集空间,并将各维度向固定区间[0,10]进行映射;其中,设最大值点为M0,且M0=(xmax,1,xmax,2,xmax,3,…)为初始点;S202:建立虚拟坐标系,设坐标轴数量为N,将全部数据置于坐标系中;S203:定义k-切割点M:设M=(m1,m2,m3,…,mj,…),在N维数据集中,k-切割点M是沿任一维度坐标轴作平行线,将数据集空间切割为2N个,且k-切割点M各维度坐标比例固定,被分割的数据集出现3种区域;S204:使用变速步长搜索合适的M,使各维度直线切割组成的热区数据包含k个数据点,保证在任何查询请求权重值情况下,存在至少k个在超平面外数据;S205:变速步长搜索法获得稳定的k-切割点。进一步优选地,被分割的数据集出现3种区域包括:热区、冷区和其他区域,其中,热区的任何数据点都在超平面簇与坐标轴正方向围成的空间外;冷区的任何数据点都在超平面簇与坐标轴正方向围成的空间内;其他区域为数据集中除去冷区和热区以外的区域。优选地,pj的列向量形式为PT=[p1,p2,p3,…],对有1,若用户输入权重不在(0,1)区间内,将其映射到(0,1)区间内。优选地,变速步长搜索法包括:(1)设置初始步长ho,步长变化率v,收敛强度s≥1,初始点为M0=(xmax,1,xmax,2,xmax,3,…),将各维度坐标映射到(0,100)范围内;(2)令i=0,hi=h0,Mi+1=Mi-hi,数据集存在一个数据点,各项属性值均大于Mi+1,并存储该部分数据;(3)若l>s*k,则执行步骤(4);若k<l<s*k,则计算结束,获得稳定的k-切割点;若l<k,则执行步骤(5);(4)令i=i+1,hi=v*hi,Mi+1=Mi+hi,返回步骤(3);(5)令i=i+1,hi=v*hi,Mi+1=Mi-hi,返回步骤(3)优选地,初始步长ho=10,收敛强度s≥1。优选地,步骤S3包括:S301:接受查询请求信息,根据请求维度权重P,构建超平面簇:YT*P=F;带入k-切割点,确定对应该请求的超平面YT*P=Fi;S302:根据查询请求权重值向量,计算冷区数据以外的数据评价得分,使用Top-k查询算法进行排序查询。进一步优选地,步骤S4包括:S401:针对数据变动频繁的数据集,数据分割状态与k-切割点M根据数据集新数据的增加进行调整。S402:创建输出结果的历史记录集,对每次被输出的数据点进行保存,并且记录其被输出次数,经过n次查询,结果接近收敛,此时历史记录集作为TOP-k常用数据集,减少使用次数;S403:记录每次输出时的超平面系数向量与对应k-切割点。进一步优选地,根据数据集新数据的增加进行调整包括:(1)进入数据的各维度属性数据与k-切割点M的各维度属性数据比较:若该数据对都有pj-new≥pj-M,则该数据点落在热区数据范围内;若该数据对都有pj-new≤pj-M,则该数据点落在冷区数据范围内;否则,该数据点落在其他区域数据范围内;(2)若热区数据数量增加超过该区数据总量的预定阈值,则返回步骤S205继续变速步长搜索直到满足其收敛条件。本专利技术的有益效果如下:本专利技术中提供一种基于自适应数据集划分方式的大数据Top-k查询方法,该方法适用于云环境下的大数据Top-k查询,通过对数据集进行自适应划分,降低了查询的数据量,提高了查询速度,并对系统的数据集进行自适应调整,建立常用数据集,能够进一步减少数据集读取次数,提高查询效率。附图说明下面结合附图对本专利技术的具体实施方式作进一步详细的说明。图1示出自适应数据集划分方式的top-k排序查询方法流程图。图2示出二维条件下,K-切割点定义图示。图3示出变步长搜索法流程图。具体实施方式为了更清楚地说明本专利技术,下面结合优选实施例和附图对本专利技术做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本专利技术的保护范围。本专利技术提供一种基于自适应数据集划分方式的大数据Top-k查询方法,包括以下步骤:S1:对系统进行初始化操作,构建超平面簇及数据集。S101:设用户查询请求中第j个元素分配的请求权重值为pj,各pj组合成的列向量为P本文档来自技高网
...

【技术保护点】
1.一种基于自适应数据集划分方式的大数据Top‑k查询方法,其特征在于,包括以下步骤:S1:对系统进行初始化操作,构建超平面簇及数据集;S2:对数据集进行自适应划分,获得稳定的k‑切割点;S3:对所述数据集进行Top‑k排序查询;S4:自适应调整系统数据集并建立常用数据集。

【技术特征摘要】
1.一种基于自适应数据集划分方式的大数据Top-k查询方法,其特征在于,包括以下步骤:S1:对系统进行初始化操作,构建超平面簇及数据集;S2:对数据集进行自适应划分,获得稳定的k-切割点;S3:对所述数据集进行Top-k排序查询;S4:自适应调整系统数据集并建立常用数据集。2.根据权利要求1所述的大数据Top-k查询方法,其特征在于,所述步骤S1包括:S101:设用户查询请求中第j个元素分配的请求权重值为pj,各pj组合成的列向量为P,且S102:设第j维属性变量为yj,各yj组合成的列向量为Y,且YT=[y1,y2,y3,…];S103:根据查询请求权重向量P构建超平面簇F,且F=YT*P;S104:确定数据集维度为N,数据集数据为xij。3.根据权利要求2所述的大数据Top-k查询方法,其特征在于,所述步骤S2包括:S201:获取数据集各维度的最大值为pjmax,确定数据集空间,并将各维度向固定区间[0,10]进行映射;其中,设最大值点为M0,且M0=(xmax,1,xmax,2,xmax,3,…)为初始点;S202:建立虚拟坐标系,设坐标轴数量为N,将全部数据置于坐标系中;S203:定义k-切割点M:设M=(m1,m2,m3,…,mj,…),在N维数据集中,k-切割点M是沿任一维度坐标轴作平行线,将数据集空间切割为2N个,且k-切割点M各维度坐标比例固定,被分割的数据集出现3种区域;S204:使用变速步长搜索合适的M,使各维度直线切割组成的热区数据包含k个数据点,保证在任何查询请求权重值情况下,存在至少k个在超平面外数据;S205:变速步长搜索法获得稳定的k-切割点。4.根据权利要求3所述的大数据Top-k查询方法,其特征在于,所述被分割的数据集出现3种区域包括:热区、冷区和其他区域,其中,热区的任何数据点都在超平面簇与坐标轴正方向围成的空间外;冷区的任何数据点都在超平面簇与坐标轴正方向围成的空间内;其他区域为数据集中除去冷区和热区以外的区域。5.根据权利要求3所述的大数据Top-k查询方法,其特征在于,所述pj的列向量形式为PT=[p1,p2,p3,…],对有pj∈(0,1),∑pj=1,若用户输入权重不在(0,1)区间内,将其映射到(0,1)区间内...

【专利技术属性】
技术研发人员:徐维祥赵博
申请(专利权)人:北京交通大学
类型:发明
国别省市:北京,11

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

1