当前位置: 首页 > 专利查询>东北大学专利>正文

一种基于CPU-GPU异构体系结构的并行相似性连接方法技术

技术编号:23890650 阅读:24 留言:0更新日期:2020-04-22 06:19
本发明专利技术公开一种基于CPU‑GPU异构体系结构的并行相似性连接方法,属于计算机数据库技术与并行计算技术领域。该方法通过对数据相似性连接方法进行分析设计,构建新的倒排索引结构,实现在GPU上并行构建倒排索引,对相似性连接方法进行分解,根据两种处理器不同的计算特性重新设计计算过程,基于GPU实现双重前缀过滤,有效减小候选集体积。本发明专利技术提供的基于CPU‑GPU异构体系结构的相似性连接方法能够将传统的数据相似性连接准确地转换到CPU‑GPU异构计算体系上,从而有效提高大规模数据集相似性连接的处理效率。

【技术实现步骤摘要】
一种基于CPU-GPU异构体系结构的并行相似性连接方法
本专利技术涉及计算机数据库技术与并行计算
,尤其涉及一种基于CPU-GPU异构体系结构的并行相似性连接方法。
技术介绍
随着传统互联网的发展和移动互联网的出现,数据量迅速变大,“大数据”的概念逐渐被人们熟知。但大量的数据也对传统的数据存储和处理带来了新的挑战。为了更快的处理大数据,人们采用例如MapReduce和HDFS等分布式的策略来计算和存储大数据。传统的CPU性能提升方法已经达到瓶颈,提高主频和核心数量等方法对CPU性能的提升变得越来越困难。传统的仅由CPU负责计算的相似性连接算法的处理速度已经渐渐满足不了用户的需求。近年来,GPU的处理性能和并行处理单元集成度提升迅速,更多的算术逻辑单元使得GPU的综合计算性能远超CPU,能够极大地弥补CPU处理能力不足的问题。因此基于CPU-GPU异构体系结构的处理模式正成为未来的发展趋势。相似性连接处理技术是对来自不同数据集的两个对象计算相似度,并以相似度是否达到指定阈值作为对象间的连接条件。目前,相似性连接技术已经被广泛的应用在搜索引擎、数据集成以及知识库构建等领域。常见的相似性连接根据计算对象间相似度的算法不同,可以分为字符串相似性连接、集合相似性连接、向量相似性连接以及图相似性连接,其中以字符串相似性连接应用最为广泛。字符串的相似性可以通过Jaccard相似度等多种相似性度量进行计算。传统的相似性连接处理技术一般使用过滤-验证框架,其中包含过滤和验证两个部分:在过滤阶段设计高效的过滤算法将大量不可能符合相似度要求的数据记录对过滤剔除,大幅减少候选对的数量;在验证阶段,计算每个候选对的相似度,将满足相似度条件的候选对添加至最后结果。目前,对相似性连接算法的优化主要集中在过滤阶段的优化,通过对过滤算法的优化提升过滤效果,减少验证阶段的任务量。现有研究工作提出了很多的过滤算法,其中包括基于倒排索引的计数过滤算法、基于位置的过滤算法、基于长度的过滤算法以及基于前缀的过滤算法。这些算法在一定程度上都提升了过滤阶段的效率,但都是基于串行处理的设计思想,处理效率受到了极大的限制。
技术实现思路
针对上述现有技术的不足,本专利技术提供一种基于CPU-GPU异构体系结构的并行相似性连接方法。为解决上述技术问题,本专利技术所采取的技术方案是:一种基于CPU-GPU异构体系结构的并行相似性连接方法,其流程如图1所示,包括如下步骤:步骤1:使用GPU对初始数据集S并行构建SoA新型倒排索引,如图2所示为构建的基于SoA的倒排索引示意图;;步骤1.1:给定数据集S,将其中每行数据Si切分成若干个数据集合token;步骤1.2:为每个不同的token分配全局唯一数字类型tid;步骤1.3:在GPU显存中使用全局映射表记录token与分配的tid之间的映射关系,并借助全局映射操作,将体积较大的字符串类型的token转换为数字类型的tid,使得原数据的体积大幅减少,从而大幅减少后续倒排索引中每个关键词的占用空间;步骤1.4:全局映射关系构建完成后传输至GPU的globalmemory;步骤1.5:使用GPU构建SoA新型倒排索引;所述SoA新型倒排索引含有两个联系数组分别记录数据和token编号,其结构如图3所示,图3还给出了SoA新型倒排索引与传统索引结构的对比;步骤1.5.1:GPU中每个block负责一部分原始数据的解析工作,block中的每个thread每次读取一个单词,根据权利要求2所述的全局映射表解析数据,生成<tid,sid>键值对;步骤1.5.2:使用原子类型函数将sid和tid分别写入SoA倒排索引的数据数组中。步骤1.6:将构建完成的索引回传给CPU内存,对tid相同的匹配对进行合并,得到通用性更好的传统倒排索引。步骤2:根据倒排索引和前缀过滤生成候选集;步骤2.1:对倒排索引的每行数据的前P个token检索倒排索引,记录所有这些token对应的倒排索引中出现的sid;步骤2.2:对数据集S和所有查找得到的sid构建候选对,添加至候选集。步骤3:基于GPU进行双重长度过滤,得到过滤集;步骤3.1:使用GPU统计数据集信息;合理设置GPU的grid、block和thread数目,使每个线程完成以下任务:(a)读取权利要求2所述全局映射关系表中的部分数据,解析数据长度和token个数;(b)根据sid值使用原子函数将统计数据分别写入长度表与token表的对应位置,所述长度表与token表的结构同SoA;步骤3.2:基于步骤3.1中构建的长度表、token表和步骤2所述的候选集,使用GPU进行双重长度过滤;通过相似度计算确定匹配长度范围,使用GPU多线程同时对候选集进行长度和token个数双重检验,将不满足长度和个数要求的候选对过滤。步骤4:通过对步骤3构建的过滤集中所有候选对计算相似度,进行相似度验证;步骤5:将过滤集中相似度大于等于给定阈值τ的候选对进行连接。采用上述技术方案所产生的有益效果在于:1、本专利技术提供的一种基于CPU-GPU异构体系结构的并行相似性连接方法,能够将传统数据相似性连接处理过程准确的转换到CPU-GPU异构体系结构之上,从而有效提高对数据集进行相似性搜索和连接的处理效率,对大规模数据集的数据相似性连接和查询的执行效率的提高由为明显,减少了连接执行时间,使得大规模数据集相似性连接和搜索的处理性能得到改善;2、本专利技术具有较高的通用性:中间过程中使用GPU构建的倒排索引具有良好的通用性,同时对输入数据没有严格的格式要求;3、本专利技术很好的利用了GPU的并行计算能力和CPU的逻辑调度能力,将传统的串行相似性连接方法以并行的方式执行,从而提高连接操作的效率。附图说明图1为本专利技术总体流程图;图2为本专利技术构建的基于SoA的倒排索引示意图;图3为本专利技术构建的基于SoA的倒排索引结构与传统索引结构的对比图;图4为本专利技术实施例中已有倒排索引构建方法的加速比示意图;图5为本专利技术实施例中与已有相似性连接方法的执行时间对比图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。如图1所示,本实施例的方法如下所述。一种基于CPU-GPU异构体系结构的并行相似性连接方法,包括如下步骤:步骤1:使用GPU对初始数据集S并行构建SoA新型倒排索引,如图2所示为构建的基于SoA的倒排索引示意图;步骤1.1:本实施例给定数据集S如表1所示,包含9条用户记录的字符串,将其中每行数据Si根据字符串中的空格切分成若干个数据集合token,每条记录是由不同token组成的;表1示例数据集S步骤1.2:为每个本文档来自技高网
...

【技术保护点】
1.一种基于CPU-GPU异构体系结构的并行相似性连接方法,其特征在于包括以下步骤:/n步骤1:使用GPU对初始数据集S并行构建SoA新型倒排索引;/n步骤2:根据倒排索引和前缀过滤生成候选集;/n步骤3:基于GPU进行双重长度过滤,得到过滤集;/n步骤4:通过对步骤3构建的过滤集中所有候选对计算相似度,进行相似度验证;/n步骤5:将过滤集中相似度大于等于给定阈值τ的候选对进行连接。/n

【技术特征摘要】
1.一种基于CPU-GPU异构体系结构的并行相似性连接方法,其特征在于包括以下步骤:
步骤1:使用GPU对初始数据集S并行构建SoA新型倒排索引;
步骤2:根据倒排索引和前缀过滤生成候选集;
步骤3:基于GPU进行双重长度过滤,得到过滤集;
步骤4:通过对步骤3构建的过滤集中所有候选对计算相似度,进行相似度验证;
步骤5:将过滤集中相似度大于等于给定阈值τ的候选对进行连接。


2.根据权利要求1所述的一种基于CPU-GPU异构体系结构的并行相似性连接方法,其特征在于所述步骤1的过程如下:
步骤1.1:给定数据集S,将其中每行数据Si切分成若干个数据集合token;
步骤1.2:为每个不同的token分配全局唯一数字类型tid;
步骤1.3:在GPU显存中使用全局映射表记录token与分配的tid之间的映射关系,并借助全局映射操作,将体积较大的字符串类型的token转换为数字类型的tid,使得原数据的体积大幅减少,从而大幅减少后续倒排索引中每个关键词的占用空间;
步骤1.4:全局映射关系构建完成后传输至GPU的globalmemory;
步骤1.5:使用GPU构建SoA新型倒排索引;
步骤1.6:将构建完成的索引回传给CPU内存,对tid相同的匹配对进行合并,得到通用性更好的传统倒排索引。


3.根据权利要求2所述的一种基于CPU-GPU异构体系结构的并行相似性连接方法,其特征在于所述SoA新型倒排索引含有两个联系数组分别记录数据和token编号。


4.根据权利要求2所述的一种基于CPU-GPU异...

【专利技术属性】
技术研发人员:聂铁铮徐坤浩申德荣于戈寇月
申请(专利权)人:东北大学
类型:发明
国别省市:辽宁;21

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

1