暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DSE精选文章 | 海量数据上显著Skyline计算

时空实验室 2025-01-21
104

DSE精选文章

Computing Prominent Skyline on Massive Data


Data Science and Engineering (DSE)是由中国计算机学会(CCF)主办,数据库专业委员会承办,施普林格·自然(Springer Nature)集团出版的开放获取(OA)期刊。本篇文章精选自DSE近期发文,由中新赛克赞助文章处理费。


文章介绍


许多实际应用中,Skyline查询是一个重要操作,用于返回帕累托最优的元组,来提供最优解的候选集。在海量数据上,Skyline查询常常返回过多结果,使得用户很难快速找到所需的信息。本文提出P-skyline来减少返回结果的规模。给定近似因子,P-skyline通过p-支配的定义只生成显著的Skyline结果。据我们所知,本文是首次研究P-skyline问题的工作。本文首先提出一个基线算法,该算法需要一次完整的表扫描来计算结果。本文随后提出更高效的PSTP算法,该算法包含两个阶段:候选集获取和结果精炼。在预排序的表上,PSTP算法利用选择性检索和选择性检查处理P-skyline,显著降低I/O成本和计算成本。通过在合成数据和真实数据集上的广泛实验,结果表明PSTP算法能够高效地计算海量数据P-skyline结果。



方法框架


1. P-skyline定义

给定一个包含n个元组的表T(A1, …, AM),对任意t∈ T,设t.Ait的属性Ai的值。不失一般性,设ASsky= {A1, …, Am}为Skyline标准,在该标准下定义元组之间的支配关系。支配和Skyline的定义如下。

定义1支配):对于任意t1t2Tt1支配t2(记作t1t2),当且仅当,对于所有i (1≤im),t1.Ait2.Ai,并且存在某个i(1≤im),使得t1.Ai<t2.Ai

定义2Skyline):Skyline查询返回T的一个子集SKY,其中每个元组都不被其他元组支配。

给定近似因子𝜖(0≤𝜖<1),p-支配和P-skyline定义如下。

定义3p-支配):对于任意t1t2Tt1元组p支配t2元组(记作t1 ≻p t2),当且仅当,对于所有i (1≤im),(1-ϵt1.Ait2.Ai,并且存在某个i (1≤im),使得(1-ϵt1.Ai<t2.Ai

定义4P-skyline): P-skyline查询返回T的一个子集SKYP,其中每个元组都不被其他元组p-支配。

图1. 一个Skyline例子图示

如图1所示,P-skyline返回Skyline结果的一个子集,SKYP⊆ SKYp-支配的定义增强了元组的支配能力。随着𝜖值的增大,指定的元组会更接近坐标原点,可能支配更多的元组。如果𝜖 = 0,则P-skyline返回传统的Skyline元组。如果ϵ→1,P-skyline可能返回一个空集。随着𝜖从0增加到1,P-skyline的结果单调地从传统Skyline结果减少到空集。

2. 构建所需的结构

我们的目标是设计一个高效的算法在海量数据上发现P-skyline结果,大幅减少I/O成本和计算成本。

定义5有前景的元组):可能成为P-skyline结果的元组称为有前景的元组。

剪枝效果是通过p-支配的定义来实现的。其直观的思路是,通过仅检索有前景的元组并进行必要的p-支配检查来计算P-skyline。如何快速确定有前景的元组是高效执行的关键。为此,一些有用的数据结构被预先构建。

定义 6p-支配得分):对于任意tTtp-支配得分是Tt中被tp-支配的元组的数量。

令每个元组的MPIL属性表示该元组在每个属性的有序列表中的最小位置索引,表T可以根据MPIL执行预排序操作。在PT的构建过程中,具有较小MPIL的元组更有可能具有较高的p-支配得分,因为它们至少在一个属性上表现良好。这些元组被排在PT的前面。

3. PSTP算法

本文提出PSTP算法,该算法利用预构建的结构,在海量数据上高效计算P-skyline。PSTP算法的执行包括两个阶段:获取候选元组和精炼结果。由于p-支配关系的非传递性,任何被某些元组p-支配的元组都可以用来p-支配其他元组。PSTP算法只在第1阶段保留候选元组C。在第2阶段,候选元组经过精炼,去掉被p-支配的候选元组。这个过程通过两次表扫描实现。为了提高计算效率,PSTP算法仅检索PT中必要的元组,并通过有效的剪枝策略在有限的候选元组上执行p-支配检查。

(1) 第1阶段:候选元组的获取

在第1阶段,PSTP算法通过在PT上进行选择性检索来获取P-skyline结果的候选元组。PSTP算法中的检索操作按轮次进行。在第一轮,PSTP算法按顺序检索PT中的前B1个元组。设当前检索的元组为t,PSTP遍历C中的每个元素,并将t和当前候选元组进行比较,并根据比较结果执行相应处理。后续轮次。在第k轮(k≥2)的开始,PSTP首先检索ℝ中的每个元组,设tr为当前的ℝ元组。第k轮中被trp-支配的元组应当直接跳过。

随着PSTP算法的执行,ℝ中的元组所带来的剪枝效果会逐渐提高,直到为每个大的子空间找到最优剪枝元组。这也是我们将PSTP算法的执行分为多个轮次的原因,在每个轮次中处理一组连续的元组。在本文中,B1被设置为32K。一方面,剪枝的位向量在每轮开始时计算,这避免了每次更新剪枝元组时都需要频繁计算位向量。另一方面,B1远小于海量数据中的n,即使第一轮没有涉及剪枝操作,PSTP算法仍然可以跳过大部分后续元组。在第1阶段,如果PT中的所有元组都被检索或跳过,PSTP算法就会获取P-skyline结果的候选元组。本文分析结果表明,PSTP算法可以利用提前终止条件提前终止执行。

(2) 第2阶段:结果的精炼

在第2阶段,PSTP算法通过对PT的再次选择性检索来精炼第1阶段获得的候选元组。

图2. 候选元组的图示,用于选择性检索,其中C={(0.1,0.7),(0.3,0.5),(0.5,0.3),(0.7,0.1)}和ε= 0.2。

选择性检索。如图2所示,PSTP算法仅在每个大的子空间中选择一个候选元组,用于确定无法p-支配任何候选元组的表元组,并在扫描过程直接跳过它们。

图3. 元组可能p-支配区域的网格划分图示

选择性p-支配检查。设当前检索的元组为t,PSTP算法利用t去移除C中被它p-支配的候选元组。一种简单的方法是遍历C并将t与每个候选元组进行比较。如果|C|不够小,这将导致较高的计算成本。在这部分中,PSTP算法在第2阶段开发了选择性p-支配检查,其灵感来自于一个直观的想法:如图3所示,每个检索到的元组只能p-支配一部分候选元组。换句话说,t不需要与C中的所有候选元组进行比较。



实验效果


本文的实验在合成数据集和真实数据集上进行。如图4所示,与基准算法相比,PSTP算法的计算和I/O开销减少一个数量级,PSTP算法仅需扫描预排序表的一小部分,有效提高执行效率。PSTP算法能有效筛选出显著元组,结果数量明显少于传统Skyline查询,且具备良好的代表性。
图4. 合成数据执行结果的图示
如表1所示,真实数据实验使用了11个真实数据集来评估PSTP算法的性能,近似因子设定为0.3,使用的Skyline标准大小为3或4,具体取决于数据的特点。
表1. 真实数据集的实验结果(运行时间以秒为单位)
给定近似因子𝜖=0.3。我们使用数值属性作为Skyline标准。默认情况下,|ASsky|=4。一些数据集使用三个属性作为Skyline标准,因为它们没有足够的数值属性。|S|和SP分别表示Skyline结果和P-skyline结果的数量。实验主要报告PSTP算法和BA算法在执行时间、I/O成本以及支配性检查次数上的结果。如表1所示,PSTP算法能够快速找到P-skyline结果。在大多数真实数据上,PSTP算法的运行速度比BA算法快一个数量级。这一显著的加速是通过大幅降低I/O成本和计算成本实现的。通过近似因子,PSTP算法可以有效地减少返回的Skyline结果的大小。对于一些真实数据集,P-skyline结果的数量比Skyline结果少一个或两个数量级。这意味着,尽管这些数据集中的大多数Skyline结果没有被任何其他元组支配,但它们与其他元组非常接近。较小规模的P-skyline结果可以帮助用户更快速、更有效地做出决策。



结语


本文研究P-skyline问题,该问题放宽了支配的严格定义,有效减少返回的大量Skyline结果。据我们所知,本文是首次研究P-skyline问题的工作。与返回所有Skyline元组不同,P-skyline只报告显著的skyline元组。首先提出基线算法BA,该算法执行顺序扫描,并将所需的元组保存在内存中,以计算海量数据上的P-skyline结果。为了降低BA算法的I/O成本和计算成本,本文提出PSTP算法。其执行过程包括两个阶段:候选元组获取和结果精炼。每个阶段都利用选择性检索,仅检索必要的元组。在第二阶段,PSTP算法利用成对网格文件来减少p-支配检查的计算成本。通过在合成数据和真实数据集上进行的广泛实验,结果表明,与BA算法相比,PSTP算法在速度上获得可达一个数量级的加速。


作者简介




万晓珑,哈尔滨工业大学(威海)计算机科学与技术学院讲师,主要研究方向包括海量数据分析,图数据挖掘等。



韩希先,哈尔滨工业大学(威海)计算机科学与技术学院教授,博士生导师,CCF杰出会员,入选省级高层次人才计划,主要研究方向包括海量数据分析和海量数据挖掘。



王金宝,哈尔滨工业大学(威海)计算机科学与技术学院副教授,硕士生导师,主要研究方向包括数据库,大数据管理与分析,数据隐私。




期刊简介




Data Science and Engineering(DSE)是由中国计算机学会(CCF)主办,数据库专业委员会承办,施普林格·自然(Springer Nature)出版的开放获取(Open Access)期刊。DSE致力于发表与数据科学与工程领域相关的关键科学问题与前沿研究热点,以大数据为研究重点,建设国际学术交流的重要平台,推动学术界和企业界的深度融合。征稿范畴主要包括:数据库系统、大数据管理与分析、大数据治理等相关基础理论、关键技术与系统实践。现任主编(Editors-in-Chief)为数据科学与工程领域的知名专家北京大学崔斌教授和意大利英苏布里亚大学Elena Ferrari教授,现任执行主编(Managing Editor)为数据库专业委员会主任、华东师范大学周傲英教授和浙江大学高云君教授。

目前期刊已被EI、ESCI与SCOPUS收录,2023年CiteScore为10.4,影响因子(Impact factor)为5.1,在计算机科学应用领域排名前12%(92/817)、计算机软件领域排名前12%(49/407)、信息系统领域排名前13%(51/394),人工智能领域排名前17%(58/350)。稿件处理费由赞助商中新赛克(Sinovatio)承担,欢迎大家免费下载阅读期刊全文,并积极投稿。


原文链接:

https://link.springer.com/article/10.1007/s41019-024-00259-6



文稿:李博涵
排版:李瑞远
审核:高云君


文章转载自时空实验室,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论