[发明专利]基于多核处理器的轮廓层次查询并行处理方法有效
申请号: | 201710928768.9 | 申请日: | 2017-10-09 |
公开(公告)号: | CN107766472B | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 李小勇;朱浩洋;任开军;李小玲;邓科峰;任小丽;赵娟 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 谭武艺 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 多核 处理器 轮廓 层次 查询 并行 处理 方法 | ||
1.一种基于多核处理器的轮廓层次查询并行处理方法,其特征在于实施步骤包括:
1)输入包含n个数据元组的数据集D={Q1,Q2,...,Qn}以及分块大小α,数据集D中第i个数据元组表示第i个数据元组Qi的第j个属性值,d表示数据元组的属性数目;
2)将数据集D中的数据元组按照升序进行排序;
3)将待输出的层次轮廓Skyline layers置为空集;
4)对数据集D以分块大小α划分分块后进行轮廓层次查询批处理,在每一个分块中,线程并行处理分块中的点并更新层次轮廓Skyline layers,当分块中的点都被处理完成之后,再串行对分块之中所有点进行处理更新层次轮廓Skyline layers,当数据集D的所有分块都处理完成之后,得到数据集D的层次轮廓Skyline layers并输出;
步骤4)的详细步骤包括:
4.1)从数据集D中取出前α个数据元组复制到数据集D′,其中α为输入的分块大小;
4.2)将从数据集D中取出前α个数据元组从数据集D中移除,其中α为输入的分块大小;
4.3)对数据集D′中的任意数据元组D′[i]基于多核处理器并行执行步骤①;
步骤①:从层次序列layer=<layer1,layer2,...,layerK>中顺序选出laydrj(1≤j≤K),如果对于任意Q∈layerj满足将D′[i]的层次设置为j;
数据集D的层次轮廓Skyline layers为层次序列layer=<layer1,layer2,...,layerK>满足以下三个条件(a)(b)(c):(a)layer1即为数据集D的Skyline;(b)对于任意i(1≤i≤K),layeri是数据集的Skyline;(c)数据集D的Skyline包含了不被其他数据元组所支配的数据元组;对于两个元组Qj和Qi,若gj支配Qi表示为表示当且仅当Qj在所有属性上都优于或等于Qi,并且至少在一个属性上严格优于Qi;
4.4)对数据集D′中的任意数据元组基于多核处理器并行执行步骤②;
步骤②:如果存在j<i,满足将数据元组D′[j]放入数据元组D′[i]的支配列表中;对于两个元组Qj和Qi,若Qj支配Qi表示为表示当且仅当Qj在所有属性上都优于或等于Qi,并且至少在一个属性上严格优于Qi;
4.5)对数据集D′中的任意数据元组D′[i]串行执行步骤③和步骤④;
步骤③:如果数据元组支配列表中数据元组的最大层次数大于等于数据元组的层次数,将数据元组D′[i]的层次数置为数据元组D′[i]支配列表中数据元组的最大层次数+1;
步骤④:将数据元组插入对应的层次轮廓Skyline layers中;
4.6)判断数据集D是否为空,如果数据集D非空则跳转执行步骤4);否则,将层次轮廓Skyline layers作为轮廓层次查询并行处理结果输出。
2.根据权利要求1所述的基于多核处理器的轮廓层次查询并行处理方法,其特征在于,步骤2)将数据集D中的数据元组按照升序进行排序具体是指将数据集D中的数据元组按照给定的函数L1进行排序。
3.根据权利要求2所述的基于多核处理器的轮廓层次查询并行处理方法,其特征在于,给定的函数L1的表达式为其中Qi为数据元组Q的第i个属性值,d表示数据元组的属性数目。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710928768.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种无糖桑椹果酱及其制作方法
- 下一篇:一种无糖山楂果酱及其制作方法