CN106599190A - 基于云计算的动态Skyline查询方法 - Google Patents

基于云计算的动态Skyline查询方法 Download PDF

Info

Publication number
CN106599190A
CN106599190A CN201611150580.8A CN201611150580A CN106599190A CN 106599190 A CN106599190 A CN 106599190A CN 201611150580 A CN201611150580 A CN 201611150580A CN 106599190 A CN106599190 A CN 106599190A
Authority
CN
China
Prior art keywords
skyline
data
dynamic
lattice
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201611150580.8A
Other languages
English (en)
Inventor
李媛媛
季长清
肖鹏
邓武
徐克圣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dalian Jiaotong University
Original Assignee
Dalian Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dalian Jiaotong University filed Critical Dalian Jiaotong University
Priority to CN201611150580.8A priority Critical patent/CN106599190A/zh
Publication of CN106599190A publication Critical patent/CN106599190A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries

Abstract

基于云计算的动态Skyline查询方法,用于海量数据的动态Skyline查询问题,进行全局Skyline格计算,整个计算流程是一个DAG图执行过程,得到的数据点作为动态Skyline计算的候选集,在动态Skyline计算中扫描候选集里的数据点,将数据点转换坐标,以将动态Skyline的计算转换成以查询点为坐标原点的静态Skyline计算,这个DAG执行过程启动一个基于Tez的MapReduce作业,利用Map函数在各节点中并行进行,结果进行缓存,接下来再启动一个MapReduce作业检查转换后数据点的Skyline格支配关系,进行Skyline的计算并返回结果。采用轮询方式进行全局Skyline格计算,有效剪枝后进行Skyline计算,节省了大量的计算。

Description

基于云计算的动态Skyline查询方法
技术领域
本发明属于云计算、空间数据库、大数据处理领域,涉及一种动态数据查询方法。
背景技术
Skyline算法是从一个给定数据集中返回不被其他任何数据对象支配的数据对象集合的过程,查询的结果是数据集中一部分特殊的数据对象,即数据集的边界点,其主要目标是提取数据集的边界点作为候选集提供给用户进行决策。我们设计的新的动态Skyline查询算法有两个特点,第一是支持动态的Skyline查询,第二是支持分布式计算环境,可以运行于云计算系统中进行大数据处理,第三采用了基于流的动态DAG优化技术,比之前的各类分布式动态Skyline查询效率高。
随着互联网、物联网的飞速发展以及社交网络、云计算等技术的广泛应用,海量数据技术得到了飞速发展。海量的数据被采集和记录,并用来进行科学、工程和商业等领域的研究及分析等工作。据最新研究表明:全球互联网、移动互联网、GPS网络等数据源每天要产生超过2.5×1018字节的海量数据,并且这些海量数据的来源广泛。互联网上的数据每两年翻一翻,物联网、移动互联网、车联网以及各种的传感器网络无时无刻不在增加海量数据。有研究表明,世界上90%以上的数据是最近几年才产生出来的。例如Facebook的活跃用户每个月为13亿,每天产生海量的文本和图像数据;再如Wal-Mart公司已有数据量高达4PB的购买记录。这些海量数据不仅具有数据量大的特点,它们还蕴含着巨大的商业价值。例如分析Facebook用户的上网行为和喜好,可以指导商家进行相关的个性化推荐;分析挖掘超市的购买记录可以给生产厂家和卖家带来利润。然而,海量数据的爆炸式增长,使得传统的单机数据分析处理技术已经越来越不适应当前密集型数据分析和处理的需求。为了节约成本,为大规模数据的存储和计算提供分布式处理框架,云计算、大数据、云存储、MapReduce、BigTable等相关技术被提出。
云计算作为新兴的分布式共享计算平台,它可以建立在大规模廉价PC机的基础上,利用网络中的资源进行海量数据的存储和计算。目前,云计算的研究非常活跃,已成为IT业界最热门的研究方向之一。许多主流IT厂商都在关注云计算,其中既包括硬件厂商(IBM、英特尔等)、软件开发商(微软等),也包括互联网服务提供商(Google、Amazon等)和电信运营商(AT&T、中国移动等)。海量数据被认为是无法在一定时间内用常规的 软件工具、传统的算法及数据库系统去分析处理的数据。由于云计算技术非常适合处理海量数据,许多公司研究并开发了云计算处理平台,其中包括Google的搜索引擎云平台、IBM的“蓝云”平台、Amazon的弹性计算云]和Hadoop开源云平台]等。Hadoop作为一种大规模数据分布式处理的软件框架,它的核心技术包含分布式文件系统HDFS和并行编程模型MapReduce。它以大量普通机器代替了集群中的高性能服务器,已被证明具有易部署、高容错性及可扩展性等特点[7],近些年来Hadoop得到了广泛应用,成为海量数据并行处理的代表技术之一。
正如思科公司所预测,2016年全球将有79%的数据中心托管着云计算平台。海量数据存储在这些云计算平台中,由于数据量过大,使得这些海量数据处理技术对软硬件要求非常高、系统资源占用非常多,带来了算法效率低下的问题。海量数据处理是一个热点的研究方向,众多学者们依托云计算平台提出很多新的高效的海量数据处理算法,动态Skyline算法是其中的一种高效的数据查询和提取方法,可以快速地从海量多因素关联数据中抽取出关键的信息,大大减少数据量,降低海量多维空间数据处理中对软硬件的要求,提高空间数据处理的效率。
发明内容
为了提高海量多为空间数据处理的效率,本发明提出如下方案:基于云计算的动态Skyline查询方法,包括如下步骤:
S1.建立基于数据分布密度的倒排网格索引,将数据区间分割成许多片段,以将数据空间分割成不等分的网格单元,然后映射每个数据点到网格单元中,利用MapReduce构建基于数据分布密度的倒排网格索引;当一个新的查询开始时,首先映射查询点到相应的网格单元中;
S2.进行全局Skyline格计算,整个计算流程是一个DAG图执行过程,得到的数据点作为动态Skyline计算的候选集,在动态Skyline计算中扫描候选集里的数据点,将数据点转换坐标,以将动态Skyline的计算转换成以查询点为坐标原点的静态Skyline计算,这个DAG执行过程启动一个基于Tez的MapReduce作业,利用Map函数在各节点中并行进行,结果进行缓存,接下来再启动一个MapReduce作业检查转换后数据点的Skyline格支配关系,进行Skyline的计算并返回结果。
进一步的,步骤1中所述用MapReduce构建基于数据分布密度的倒排网格索引倒排网格索引的方法是:以<key,value>对形式存在,其具体格式由<ci,{pj,pk,...,pn}>所组成,每个节点利用Map函数,将自己节点内保存的数据分区里的数据转换成网格坐标,输出<key,value>对为<动态网格ID,数据点ID>,启动Reduce函数,对相同key值的value对进行归并,最终生成相同网格内的数据点有序列表,结果也是以<key,value>对形式保存,当MapReduce作业完成后,所有数据点被组织进网格结构中,生成动态倒排网格索引。
进一步的,查询点将d维数据空间分割成2d个象限,再调用全局Skyline格计算方法,轮询每个象限,计算查询点的全局Skyline格,得到粗粒度的Skyline候选点,将经过轮询计算之后的全局Skyline格中的数据作为候选集。
进一步的,Skyline格支配关系的定义如下:假定在固定时间窗口中,一个d维的数据空间S={s1,s2,...,sd},数据集P={p1,p2,...,pn}是在数据空间S上的,给定查询点q,对于任意两个对象pi,pj∈P,pi动态支配pj满足条件:
|pi(t)-q(t)|≤|pj(t)-q(t)|;
|pi(k)-q(k)|<|pj(k)-q(k)|;
在时间窗口中,查询请求在不断地发生变化,如果当新的查询点到来,每个d维被查询对象pi会被映射成一个新的d′维空间的数据对象pi′=<f1(pi),f2(pi),...,fd′(pi)>,ft是与时间与维度相关的动态函数,令d′=d,对于给点查询点q,ft(pi)=|pi(t)-q(t)|,t表示数据对象的第t维。
进一步的,全局Skyline格计算的定义如下:给定格集合C,C的全局Skyline格是所有不被其他格全局支配的格集合查询点q被映射到相应的动态网格单元cq当中,整个网格区域就被分成了影响区域和被支配区域,影响区域包含cq周边非空的格c1,c2,c3,...,c8,以及与网格cq处于同一水平或垂直线上的网格;被支配区域是指被影响区域支配的区域,对于影响区域的查找,采用2d个象限轮询法,通过逐步扩展的方法计算查询点周边各个象限中非空Skyline格的支配关系,根据支配关系比较得到全局Skyline格和格中的数据点。
进一步的,在逐步扩展中,引入了基于流的动态DAG优化技术,中间的结果进行缓存;在动态Skyline计算中,对剪技之后的全局Skyline格中的数据点进行扫描并计算,以流的方式,不断地返回有效的部分动态Skyline结果给用户,用户在部分结果的基础上进行决策,或等待所有的流进程结束后,最终进行决策。
有益效果:本发明的Skyline格计算将候选集大大的缩小,进而减少了坐标转换及动态Skyline的计算开销,提高了查询实时性。并且候选集的缩小还减少Map节点到Reduce节点的网络通信开销。利用Tez系统的基于流的动态DAG优化技术,也比之前的各类分布式动态Skyline查询效率高。
附图说明
图1是倒排网格索引;
图2是全局Skyline格;
图3是MR-DSQ算法的具体流程;
图4是动态skyline查询;
图5是酒店动态skyline查询;
图6是网络监控示例;
图7是网络监控系统模型。
表一是对说明书附图和具体实施方式中的符号的含义说明:
表一
具体实施方式
对本实施例中涉及的外文词汇的中文含义解释:
MapReduce:分布式计算
DAG图:无回路有向图
Tez:开源计算框架
Map:遍历
<key,value>:键和值
Reduce函数:归约函数
一种基于云计算的动态Skyline查询方法,包括如下步骤:
S1.建立基于数据分布密度的倒排网格索引,将数据区间分割成许多片段,即将数据空间分割成不等分的网格单元,在这个实施例中,网格单元宽度由数据分布紧密度来确定,这个分布方式在预处理过程中实现。网格单号划分后,映射每个数据点到网格单元中,利用MapReduce构建基于数据分布密度的倒排网格索引,生成如图1所示的动态倒排网格索引,即动态Skyline格索引。
所述倒排网格索引以<key,value>对形式存在,其具体格式由<ci,{pj,pk,...,pn}>所组成,利用基于数据分布密度的倒排网格索引的部分数据抽样计算,来获得整个数据集的数据分布情况,从而制度网格宽度的分布函数,同时网格宽度根据数据动态分布情况进行动态的调整,完成的动态网格索引是为进一步计算做好准备。基于数据分布密度的倒排网格索引的构建过程属于预处理,基于索引的机制能加快后续计算的速度,提高了查询效率。
倒排网格索引主要是集网格分区和倒排索引为一体的思想,它是一种被广泛应用的 索引方式,并且适合海量数据的分布式处理。基于数据分布密度的倒排网格索引将数据空间分割成许多网格单元,分割的方法由数据分布密度函数来决定,即Skyline动态格网,其中,分布函数的确定方法使用抽样数据来测算获得。倒排网格索引的生成过程利用MapReduce并行实现,实际运行中,采用基于优化的Tez系统在YARN上进行DAG计算。Tez是从MapReduce计算框架演化而来的通用DAG计算框架,采用连续流的工作方式,与Skyline的流处理算法适配度好。
S2.完成倒排网格索引后,进行全局Skyline格计算,整个计算流程是一个DAG图执行过程,得到的数据点可作为动态Skyline计算的候选集,在动态Skyline计算中须扫描候选集里的数据点,将数据点pi转换坐标p′i,p′i=|pi-qi|,这样动态Skyline的计算就转换成以查询点为坐标原点的静态Skyline计算了。这个DAG执行过程可以启动一个基于Tez的MapReduce作业,利用Map函数在各节点中并行进行,结果可以进行缓存。接下来再启动一个MapReduce作业检查转换后数据点的支配关系,进行Skyline的计算并返回结果。由于前面的Skyline格计算已经将候选集大大的缩小,进而减少了坐标转换及动态Skyline的计算开销,提高了查询实时性。并且候选集的缩小还减少Map节点到Reduce节点的网络通信开销。利用Tez系统的基于流的动态DAG优化技术,也比之前的各类分布式动态Skyline查询效率高。
以上介绍了基于MapReduce的动态Skyline算法(MR-DSQ)各个部分的具体过程,MR-DSQ算法的具体流程如图3所示,动态Skyline计算的执行过程如下每个节点利用Map函数,将自己节点内保存的数据分区里的数据转换成网格坐标。输出<key,value>对为<动态网格ID,数据点ID>,如图1所示,p1映射网格坐标为c1则输出<c1,p1>,同理,输出<c1,p2>,<c1,p3>,<c2,p4>,<c2,p5>等有序对。然后启动Reduce函数,对相同key值的value对进行归并,最终生成相同网格内的数据点有序列表,结果也是以<key,value>对形式保存,如<c1,{p1,p2,p3}>,<c2,{p4,p5}>等。当MapReduce作业完成后,所有数据点被组织进网格结构中,生成如图1所示的动态倒排网格索引,即动态Skyline格索引。
在该步骤中,使用了DAGAppMaster来负责建立全局Skyline格计算,当一个新的查询开始时,首先映射查询点到相应的网格单元中,以二维均匀空间为例,查询点将数据空间分割成四个象限(d维数据空间时,2d),调用全局Skyline格计算方法,轮询每 个象限,计算查询点的全局Skyline格,得到粗粒度的Skyline候选点。
由于动态Skyline计算的开销和数据量成正比例增长,当面临海量数据时,支配关系的比较计算开销巨大。为了减少计算量,我们提出了一种弹性的粗粒度全局动态Skyline格的计算方法,将经过轮询计算之后的全局Skyline格中的数据作为候选集。相对于原始数据集,候选数据集中数据量大大减少,从而减少了下一步动态Skyline计算时支配关系的比较,这个过程类似于剪枝。下面给出了Skyline格支配关系的定义和全局Skyline格的定义。
假定在固定时间窗口中,一个d维的数据空间S={s1,s2,...,sd},数据集P={p1,p2,...,pn}是在数据空间S上的,给定查询点q,对于任意两个对象pi,pj∈P,pi动态支配pj满足条件:
|pi(t)-q(t)|≤|pj(t)-q(t)|;
|pi(k)-q(k)|<|pj(k)-q(k)|。
在时间窗口中,查询请求在不断地发生变化,如果当新的查询点到来,每个d维被查询对象pi会被映射成一个新的d′维空间的数据对象pi′=<f1(pi),f2(pi),...,fd′(pi)>,ft是与时间与维度相关的动态函数。为了简单起见,令d′=d,而且对于给点查询点q,ft(pi)=|pi(t)-q(t)|,t表示数据对象的第t维。
以二维空间为例,假定查询点(q(q(1),q(2)),l),这里用l代表时间,对于任意一点(pi(pi(1),pi(2)),l),它的属性值可以被表示为查询点q与数据点pi在价格与距离以及时间t属性差的绝对值,也就是((|pi(1)-q(1)|,|pi(2)-q(2)|),l)。由于考虑的是差值的绝对值,如图6所示,我们可以按时间l映射每个点到一个以q为坐标原点的新坐标空间中,映射的坐标均分布在新坐标空间的第一象限。例如分别映射p1和p2为p′1和p′2。由于p7相对坐标已经在第一象限,映射坐标还是p7。在酒店数据例子中对于某一时间l中p3,p6,p7是关于查询点q的动态Skyline点。动态Skyline结果是在所有属性上离查询点q最近的点即至少一维属性要比其他非Skyline点好。随着时间的变化, 查询点也随时间在不断地变动,这里所有的数据点与之的属性在每一维度上也发生变化,这时我们可以按时间窗口进行查询点与数据点的定期更新,然后在更新后的数据中进行动态查询。
定义全局Skyline格:给定格集合C,C的全局Skyline格(GSC)是所有不被其他格全局支配的格集合
动态Skyline查询的开销和数据集大小有直接关系,尤其是对于海量数据它们之间支配关系的实时判断开销很大,并且每次查询都需要重新计算。本文提出的全局动态Skyline格概念能很好的实现粗粒度的剪枝,我们利用TEZ的ApplicationMaster进行调度,并运行在YARN系统上,在此基础上得到的候选集,是实现下一步动态Skyline查询计算的基础。下面将详细介绍粗粒度剪枝的过程。
如图2所示。查询点q被映射到相应的动态网格单元cq当中,整个网格区域就被分成了影响区域和被支配区域。影响区域包含cq周边非空的格c1,c2,c3,...,c8,以及与网格cq处于同一水平或垂直线上的网格,如c9格;被支配区域是指被影响区域支配的区域,如在第二象限中的c10格。对于影响区域的查找,我们采用的是2d个象限轮询法(d为数据集维数),通过逐步扩展的方法计算查询点周边各个象限中非空Skyline格的支配关系,根据支配关系比较得到全局Skyline格和格中的数据点,这样无需遍历全部数据便能获得影响区域中的数据点。相对于原始数据的全遍历,数量甚微的Skyline格的遍历大大减少了计算开销。
同时我们在逐步扩展中,引入了基于流的动态DAG优化技术,中间的结果进行高效缓存,比之前的基于MapReduce的分布式动态Skyline查询效率高,主要原因是原始的MapReduce在Map过程后会进行输出到HDFS,我们基于TEZ的系统不需要该过程而是缓存到高速缓存中。
通过此方法海量数据的动态Skyline查询效率大大提高。
在动态Skyline计算中,对剪技之后的全局Skyline格中的数据点进行扫描并计算,以流的方式,不断地返回有效的部分动态Skyline结果给用户,用户可以在部分结果的基础上进行决策,也可以等待所有的流进程结束后,最终进行决策。
在上述实施方式的基础上,本实施例对于二手车数据集的查询方法作出如下介绍:
实施例1:如图5所示,一个二手车数据集。用户理想的二手车的车况,动力为150马力,里程数为5K公里,即参考对象的坐标为ref=<150,5>,在查询时间点,它的动态Skyline结果就是车况接近用户期望的二手车。总之,当数据集给定,静态Skyline结果就已经能确定下来了。如果时间变化的,且指定一个查询请求,考虑查询数据集中对象间相对于查询请求点的支配关系时,那么这样的Skyline查询结果即是不确定的,即对于动态Skyline查询根据查询参考对象的不同,查询结果也不同,如果考虑到用户的查询可能变化时,查询的二手车数据对象也会发生变化,且存在支配关系时,这样的多因素查询就是Skyline查询,如果积累的历史车辆的数据,尤其是多维数据信息如:车型,出产,行驶,保险等信息非常大时,用单计算节点无法处理时,就得使用云计算技术来并行处理。
DynamicSkylineQuery:一个d维数据空间S={s1,s2,...,sd},P是在数据空间S上的数据集合即P={p1,p2,...,pn},一个查询对象ref根据动态支配关系对向量按时间进行动态支配的计算,计算得到部分Skyline的流式结果集。数据对象b动态支配a,当且仅当b在所有属性上都不比a距离ref远,且至少有一维比a近。如果查询点是按时间动态变化的,那么索引与查询操作也需要动态按时间流顺序进行处理。
在Skyline查询中常用欧式距离来度量数据,例如空间Skyline查询(SpatialSkylineQuery),它们每个数据项的属性值是参考对象与被查询对象在该数据项上的欧式距离。我们在实际应用中,多采用米氏距离或路网距离进行处理即MetricDistance.在米氏距离下,我们采用了多源Skyline查询(Multi-sourceSkylineQuery):,每个数据项的属性值是在参考对象与被查询对象在路网中的最短路径长度。为了简便,我们在预处理过程中都是利用欧式空间的几何性质进行剪枝的。除了上面所述欧式度量空间外,我们也提出了更为通用的度量空间Skyline查询即根据路网距离来进行剪枝,这时如果数据发生变化,用动态的网格进行更新和动态Skyline查询就是非常必要的了。
数据流处理的数据规模大,一般都是海量的,例如中国电信主干网络每秒能产生几 十GB的数据。同时这些海量数据都是连续的,针对查询结果的数据增量维护困难,应用在网络监控中的进行全局Skyline的动态查询,关注的是异常情况的发现,例如基于l时间时阈值网络攻击检测的网络监控例子,如图7所示,全局Skyline查询的结果为p2,p3,p4,p5,p6,p7接近网络攻击的阈值,作为查询结果返回。我们采用了Tez系统下基于时间窗口的流处理技术,定期对某一攻击区域(比如说某一数据中心进行不断的监控),如果数据发生变化,我们用Skyline进行过滤查询,从而找到异常点进行日志读取。由于采用了流与分布式处理技术,可以较好的优先增量数据的Skyline查询效率。
本实施例提出了大规模流数据的动态Skyline查询的系统模型。该模型主要将全局Skyline查询分为三个模块:第一模块为基于时间的划分模块,定时动态地维护索引与数据;第二个模块根据空间变化为生成动态网格索引模块;最后一个模块为全局的基于时间流处理的Skyline动态查询模块。所有模块都运行在最新的Tez(Yarn)云平台上,利用分布式集群的强大计算能力能很好的解决大数据的处理要求。注意的是我们的系统虽然也可以用于HadoopV1系统上,但因为HadoopV1的数据写盘操作,执行流处理功能较差,只对离线批处理支持比较好。我们在实际应用中更希望对实时流查询的支持,而Tez对分布式缓存的支持而使流处理效率极大提高,所以我们最终采用了Tez在Yarn上进行Skyline查询,该系统也可以移植到Spark系统中运行,相对比原始的MapReduce系统的实验结实际对比,按时间进行流式DAG查询的应用效率提高是非常明显的。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (6)

1.基于云计算的动态Skyline查询方法,其特征在于,包括如下步骤:
S1.建立基于数据分布密度的倒排网格索引,将数据区间分割成许多片段,以将数据空间分割成不等分的网格单元,然后映射每个数据点到网格单元中,利用MapReduce构建基于数据分布密度的倒排网格索引;当一个新的查询开始时,首先映射查询点到相应的网格单元中;
S2.进行全局Skyline格计算,整个计算流程是一个DAG图执行过程,得到的数据点作为动态Skyline计算的候选集,在动态Skyline计算中扫描候选集里的数据点,将数据点转换坐标,以将动态Skyline的计算转换成以查询点为坐标原点的静态Skyline计算,这个DAG执行过程启动一个基于Tez的MapReduce作业,利用Map函数在各节点中并行进行,结果进行缓存,接下来再启动一个MapReduce作业检查转换后数据点的Skyline格支配关系,进行Skyline的计算并返回结果。
2.如权利要求1所述的基于云计算的动态Skyline查询方法,其特征在于,步骤1中所述用MapReduce构建基于数据分布密度的倒排网格索引倒排网格索引的方法是:以<key,value>对形式存在,其具体格式由<ci,{pj,pk,...,pn}>所组成,每个节点利用Map函数,将自己节点内保存的数据分区里的数据转换成网格坐标,输出<key,value>对为<动态网格ID,数据点ID>,启动Reduce函数,对相同key值的value对进行归并,最终生成相同网格内的数据点有序列表,结果也是以<key,value>对形式保存,当MapReduce作业完成后,所有数据点被组织进网格结构中,生成动态倒排网格索引。
3.如权利要求1所述的基于云计算的动态Skyline查询方法,其特征在于,所述步骤S2中,查询点将d维数据空间分割成2d个象限,再调用全局Skyline格计算方法,轮询每个象限,计算查询点的全局Skyline格,得到粗粒度的Skyline候选点,将经过轮询计算之后的全局Skyline格中的数据作为候选集。
4.如权利要求3所述的基于云计算的动态Skyline查询方法,其特征在于,Skyline格支配关系的定义如下:假定在固定时间窗口中,一个d维的数据空间S={s1,s2,...,sd},数据集P={p1,p2,...,pn}是在数据空间S上的,给定查询点q,对于任意两个对象pi,pj∈P,pi动态支配pj满足条件:
在时间窗口中,查询请求在不断地发生变化,如果当新的查询点到来,每个d维被查询对象pi会被映射成一个新的d′维空间的数据对象p′i=<f1(pi),f2(pi),...,fd′(pi)>,ft是与时间与维度相关的动态函数,令d′=d,对于给点查询点q,ft(pi)=|pi(t)-q(t)|,t表示数据对象的第t维。
5.如权利要求3所述的基于云计算的动态Skyline查询方法,其特征在于,全局Skyline格计算的定义如下:给定格集合C,C的全局Skyline格是所有不被其他格全局支配的格集合查询点q被映射到相应的动态网格单元cq当中,整个网格区域就被分成了影响区域和被支配区域,影响区域包含cq周边非空的格c1,c2,c3,...,c8,以及与网格cq处于同一水平或垂直线上的网格;被支配区域是指被影响区域支配的区域,对于影响区域的查找,采用2d个象限轮询法,通过逐步扩展的方法计算查询点周边各个象限中非空Skyline格的支配关系,根据支配关系比较得到全局Skyline格和格中的数据点。
6.如权利要求5所述的基于云计算的动态Skyline查询方法,其特征在于,在逐步扩展中,引入了基于流的动态DAG优化技术,中间的结果进行缓存;在动态Skyline计算中,对剪技之后的全局Skyline格中的数据点进行扫描并计算,以流的方式,不断地返回有效的部分动态Skyline结果给用户,用户在部分结果的基础上进行决策,或等待所有的流进程结束后,最终进行决策。
CN201611150580.8A 2016-12-14 2016-12-14 基于云计算的动态Skyline查询方法 Pending CN106599190A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611150580.8A CN106599190A (zh) 2016-12-14 2016-12-14 基于云计算的动态Skyline查询方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611150580.8A CN106599190A (zh) 2016-12-14 2016-12-14 基于云计算的动态Skyline查询方法

Publications (1)

Publication Number Publication Date
CN106599190A true CN106599190A (zh) 2017-04-26

Family

ID=58802152

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611150580.8A Pending CN106599190A (zh) 2016-12-14 2016-12-14 基于云计算的动态Skyline查询方法

Country Status (1)

Country Link
CN (1) CN106599190A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959291A (zh) * 2017-05-19 2018-12-07 腾讯科技(深圳)有限公司 查询方法及相关装置
CN108959521A (zh) * 2018-06-28 2018-12-07 中国人民解放军国防科技大学 基于n-of-N流模型的不确定轮廓查询并行处理方法及系统
CN109960701A (zh) * 2019-04-02 2019-07-02 福建奇点时空数字科技有限公司 一种基于混合引擎的大数据处理方法及系统
CN110347705A (zh) * 2019-07-19 2019-10-18 大连海事大学 一种分布式Skyline查询系统及方法
CN112925789A (zh) * 2021-02-24 2021-06-08 东北林业大学 一种基于Spark的空间矢量数据内存存储查询方法及系统
CN113449208A (zh) * 2020-03-26 2021-09-28 阿里巴巴集团控股有限公司 空间查询方法、设备、系统及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102323957A (zh) * 2011-10-26 2012-01-18 中国人民解放军国防科学技术大学 基于垂直划分模式的分布并行Skyline查询方法
CN103150326A (zh) * 2012-12-21 2013-06-12 北京大学软件与微电子学院无锡产学研合作教育基地 面向概率数据流的Skyline查询方法
CN105183921A (zh) * 2015-10-23 2015-12-23 大连大学 移动云计算环境下的基于双色反近邻查询的商店定址系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102323957A (zh) * 2011-10-26 2012-01-18 中国人民解放军国防科学技术大学 基于垂直划分模式的分布并行Skyline查询方法
CN103150326A (zh) * 2012-12-21 2013-06-12 北京大学软件与微电子学院无锡产学研合作教育基地 面向概率数据流的Skyline查询方法
CN105183921A (zh) * 2015-10-23 2015-12-23 大连大学 移动云计算环境下的基于双色反近邻查询的商店定址系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李媛媛,曲雯毓,栗志扬,季长清,吴俊峰: "基于时间序列的Global_Skyline并行算法", 《系统工程与电子技术》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959291A (zh) * 2017-05-19 2018-12-07 腾讯科技(深圳)有限公司 查询方法及相关装置
CN108959291B (zh) * 2017-05-19 2023-03-24 腾讯科技(深圳)有限公司 查询方法及相关装置
CN108959521A (zh) * 2018-06-28 2018-12-07 中国人民解放军国防科技大学 基于n-of-N流模型的不确定轮廓查询并行处理方法及系统
CN108959521B (zh) * 2018-06-28 2021-07-16 中国人民解放军国防科技大学 基于n-of-N流模型的不确定轮廓查询并行处理方法及系统
CN109960701A (zh) * 2019-04-02 2019-07-02 福建奇点时空数字科技有限公司 一种基于混合引擎的大数据处理方法及系统
CN110347705A (zh) * 2019-07-19 2019-10-18 大连海事大学 一种分布式Skyline查询系统及方法
CN110347705B (zh) * 2019-07-19 2023-05-12 大连海事大学 一种分布式Skyline查询系统及方法
CN113449208A (zh) * 2020-03-26 2021-09-28 阿里巴巴集团控股有限公司 空间查询方法、设备、系统及存储介质
CN112925789A (zh) * 2021-02-24 2021-06-08 东北林业大学 一种基于Spark的空间矢量数据内存存储查询方法及系统
CN112925789B (zh) * 2021-02-24 2022-12-20 东北林业大学 一种基于Spark的空间矢量数据内存存储查询方法及系统

Similar Documents

Publication Publication Date Title
CN106599190A (zh) 基于云计算的动态Skyline查询方法
CN105069703B (zh) 一种电网海量数据管理方法
CN102915347B (zh) 一种分布式数据流聚类方法及系统
US11663213B2 (en) Distinct value estimation for query planning
CN106708989B (zh) 基于空间时序数据流应用的Skyline查询方法
CN106777093B (zh) 基于空间时序数据流应用的Skyline查询系统
CN106599189A (zh) 基于云计算的动态Skyline查询装置
Wang et al. Pagrol: Parallel graph olap over large-scale attributed graphs
Liu et al. U-skyline: A new skyline query for uncertain databases
CN103258049A (zh) 一种基于海量数据的关联规则挖掘方法
Yan et al. Quegel: A general-purpose query-centric framework for querying big graphs
Chen et al. MapReduce skyline query processing with a new angular partitioning approach
CN103646073A (zh) 一种基于HBase表的条件查询优化方法
Mohammed et al. A review of big data environment and its related technologies
CN102163226A (zh) 基于映射-化简和分词及邻接排序去重方法
Zhang et al. Dart: A geographic information system on hadoop
Li et al. Parallelizing skyline queries over uncertain data streams with sliding window partitioning and grid index
Gupta et al. Faster as well as early measurements from big data predictive analytics model
Tian et al. A survey of spatio-temporal big data indexing methods in distributed environment
CN106776810B (zh) 一种大数据的数据处理系统及方法
CN108319604B (zh) 一种hive中大小表关联的优化方法
Zhang et al. The modeling of big traffic data processing based on cloud computing
Bharti et al. A Review on Big Data Analytics Tools in Context with Scalability
Tripathi et al. A comparative analysis of conventional hadoop with proposed cloud enabled hadoop framework for spatial big data processing
CN109977138A (zh) 一种基于Kafka和SQL的数据查询方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170426

RJ01 Rejection of invention patent application after publication