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

构建倒排泰森多边形的分布式索引方法技术

技术编号:17363740 阅读:56 留言:0更新日期:2018-02-28 13:51
构建倒排泰森多边形的分布式索引方法,属于云计算、大数据领域,用于解决的问题是:提高现有数据查询方法索引效率,技术要点是:分别计算数据集R中的m个对象r与各代表点p之间的距离、数据集S中的n个对象s与代表点p之间的距离,并将距离数据集R中的第i个对象r与数据集S中的第j个对象sj的最接近的代表点Pij选出并聚集在Voronoi单元格VCi中,形成m个VC的分区VC1~VCm,效果是:能够提高算法索引效率,索引不受到空间和时间影响。

A distributed index method for constructing inverted Tyson polygon

Distributed index construction method of inverted Tyson polygon, which belongs to the field of cloud computing, big data, is used to solve the problem is: to improve the existing method of data query efficiency index, is characterized in that the data set in R M R and the P object represents the distance between the data set between n objects and s representative points P S in the distance were calculated, and the point Pij represents the closest distance data set the I object R and R data sets in the j SJ S in the selected object and accumulates in the cell Voronoi VCi, form M VC partition VC1 ~ VCm, the effect is: to improve the algorithm efficiency index, the index is not subject to time and space effect.

【技术实现步骤摘要】
构建倒排泰森多边形的分布式索引方法
本专利技术属于云计算、大数据领域,涉及一种在分布式环境下可以有效提高查询效率的MapReduce索引。
技术介绍
MapReduce是一种目前流行的基于云平台的编程框架,它可以处理及生成大型数据集,其利用无共享集群来支持数据密集型的应用。处理步骤具体为:在分布式缓存系统中,由MapReduce任务在处理一个键/值对时,是在map函数中生成一组中间键/值对,根据相同的中间键来合并所有的中间值,每个map都独立于其他操作,即所有maps就可以并行执行。MapReduce的一组“reducers”可以执行归约操作,具有相同key的Map操作的输出同时可以归约到同一个reducer。然而单独运行一个归约过程可能会使得效率低下;MapReduce可用于支持比传统的商业服务器集群更大规模的数据处理,它可以在仅仅几小时内即可处理一个PB数量的数据,使用MapReduce进行数据索引具有较好的应用前景。然而,现有的索引算法由于不能适应MapReduce的并行处理,构建索引的时间耗费不够理想,可扩展性不佳,因而有必要构建一种索引方法,其能够适用于并行处理,以能够提高检索效率。
技术实现思路
为了提高现有数据查询方法索引效率,构建一种基于分布式的时空索引方法,本专利技术提供如下方案:一种构建倒排泰森多边形的分布式索引方法,其步骤如下:S1.d维空间中给定两个数据集R和S,Hadoop进行分片,部分mappers同时并行运行,在MapReduce任务中,使用默认的reducer,在启动map函数之前,使用预聚类算法得到代表点p,并加载到每个map的主存中;S2.在每一个map处理进程中,依次利用TextInputForma来读取输入的分片,TextInputFormat从文件读取数据到Mapper的实例中,分别计算数据集R中的m个对象r与各代表点p之间的距离、数据集S中的n个对象s与代表点p之间的距离,并将距离数据集R中的第i个对象r与数据集S中的第j个对象sj的最接近的代表点Pij选出并聚集在Voronoi单元格VCi中,形成m个VC的分区VC1~VCm,所述的i顺序取遍1~m,并且,当i顺序取1~m中的一个具体值时,在i的该值下,j顺序取遍1~n的所有值,得到m个存储最接近的代表点的Voronoi单元格;输出<VCi,List(Pij)>对;已知查询点p,判别其最邻近的VCi或最一些邻近的VCi集,由mapper输出所述最邻近的VCi或最一些邻近的VCi集对应的原始数据集R和/或S中的r、s对象,并输出最邻近的VCi或最一些邻近的VCi集的id;S3.将mapper输出到Hadoop的文件系统。在所述步骤S2中,所述的将距离数据集R中的第i个对象r与数据集S中的第j个对象sj的最接近的代表点Pij选出并聚集在Voronoi单元格VCi中,形成m个VC的分区VC1~VCm的过程如下:数据集R中第一个对象r1与数据集S中的第一个对象s1的最接近的代表点为P11,数据集R中第一个对象r1与数据集S中的第二个对象s2的最接近的代表点为P12,······,数据集R中第一个对象r1与数据集S中的第n个对象sn的最接近的代表点为P1n,该n个最接近的代表点选出并聚集在Voronoi单元格V1中;数据集R中第一个对象r1与数据集S中的第一个对象s1的最接近的代表点为P11,数据集R中第一个对象r1与数据集S中的第二个对象s2的最接近的代表点为P12,······,数据集R中第一个对象r1与数据集S中的第n个对象sn的最接近的代表点为P1n,该n个最接近的代表点选出并聚集在Voronoi单元格V1中;······数据集R中第m个对象rm与数据集S中的第一个对象s1的最接近的代表点为Pm1,数据集R中第m个对象rm与数据集S中的第二个对象s2的最接近的代表点为Pm2,······,数据集R中第m个对象rm与数据集S中的第n个对象sn的最接近的代表点为Pmn,该n个最接近的代表点选出并聚集在Voronoi单元格Vm中。倒排Voronoi索引包含两个部分:主索引,包括所有的聚类中心;第二索引,包括储存在每个VC的对像队列。有益效果:本专利技术使用Voronoi图构造倒排索引,由此索引方法是分布式的,且不受时间和空间的影响,该索引的形成还能够适用于如MapReduce的并行化处理,以能够提高算法索引效率,使得MapReduce可以不再受到空间和时间影响。附图说明图1是Voronoi图;图2是Voronoi图索引;图3是MRIV结构中的节点数据变化对RSD和SDS数据集构建索引时间的影响对比图。具体实施方实施例1:一种基于MapReduce与倒排泰森多边形的大规模近邻查询方法,将构建倒排泰森多边形的分布式索引方法适用于MapReduce算法中,其中:MapReduce是现有编程模型,用于大规模数据集的并行运算,所述方法包括如下步骤:S1.构造基于MapReduce的倒排Voronoi索引(泰森多边形索引,InvertedVoronoiIndex,IVI);S2.使用倒排Voronoi索引对数据集R和S进行分区,得到VC分区,该两个分区是由于后期需要进行Voronoi图的建立时,Voronoi图需要两个分区结合,因而在该步骤中进行了两个数据集的分区;S3.使用基于MapReduce的IVKNN进行分布式kNN(邻近算法)查询,IVKNN是利用IVI的倒排Voronoi索引。其中:构造基于MapReduce的倒排Voronoi索引的步骤如下:S1.d维空间中给定两个数据集R和S,Hadoop(分布式系统基础架构)进行分片,部分mappers(一种现有编码解码)同时并行运行,在MapReduce任务中,使用默认的reducer(子任务合并过程),在启动map函数之前,使用预聚类算法得到代表点p,并加载到每个map(子任务分解执行)的主存中;其中:代表点的获取方法,确定内部聚类点与相邻点,将内部聚类点的数据聚类,聚类后选出聚类中心进行索引,所需数据为与内部聚类点连接的相邻点,以这个内部聚类点为圆心,包含相邻的聚类中心点建立圆,以这个圆为外接圆的三角形作为Delaunay三角形,本方法中将两个不同的内部聚类点分别建立Delaunay三角形,这两个Delaunay三角形以相邻点为共同点建立Delaunay三角网,将数据对象分割为几个大分区,选择其中一聚类代表点成为代表点,被划分的每个对象以被聚类在一个Voronoi单元中,每个Voronoi网格中含有对象id。S2.在每一个map处理进程中,依次利用TextInputForma(一种现有读取模式)来读取输入的分片,TextInputFormat从文件读取数据到Mapper的实例中,分别计算数据集R中的m个对象r与各代表点p之间的距离、数据集S中的n个对象s与代表点p之间的距离,并将距离数据集R中的第i个对象r与数据集S中的第j个对象sj的最接近的代表点Pij选出并聚集在Voronoi单元格VCi中,形成m个VC(Voronoi图的分区)的分区VC1~VCm,所述的i顺序取遍1~m,并且,当i顺序取1~m中的一个具体值时,在i的该值下,j顺序取遍1本文档来自技高网...
构建倒排泰森多边形的分布式索引方法

【技术保护点】
一种构建倒排泰森多边形的分布式索引方法,其特征步骤如下:S1.d维空间中给定两个数据集R和S,Hadoop进行分片,部分mappers同时并行运行,在MapReduce任务中,使用默认的reducer,在启动map函数之前,使用预聚类算法得到代表点p,并加载到每个map的主存中;S2.在每一个map处理进程中,依次利用TextInputForma来读取输入的分片,TextInputFormat从文件读取数据到Mapper的实例中,分别计算数据集R中的m个对象r与各代表点p之间的距离、数据集S中的n个对象s与代表点p之间的距离,并将距离数据集R中的第i个对象r与数据集S中的第j个对象sj的最接近的代表点Pij选出并聚集在Voronoi单元格VCi中,形成m个VC的分区VC1~VCm,所述的i顺序取遍1~m,并且,当i顺序取1~m中的一个具体值时,在i的该值下,j顺序取遍1~n的所有值,得到m个存储最接近的代表点的Voronoi单元格;输出<VCi,List(Pij)>对;已知查询点p,判别其最邻近的VCi或最一些邻近的VCi集,由mapper输出所述最邻近的VCi或最一些邻近的VCi集对应的原始数据集R和/或S中的r、s对象,并输出最邻近的VCi或最一些邻近的VCi集的id;S3.将mapper输出到Hadoop的文件系统。...

【技术特征摘要】
1.一种构建倒排泰森多边形的分布式索引方法,其特征步骤如下:S1.d维空间中给定两个数据集R和S,Hadoop进行分片,部分mappers同时并行运行,在MapReduce任务中,使用默认的reducer,在启动map函数之前,使用预聚类算法得到代表点p,并加载到每个map的主存中;S2.在每一个map处理进程中,依次利用TextInputForma来读取输入的分片,TextInputFormat从文件读取数据到Mapper的实例中,分别计算数据集R中的m个对象r与各代表点p之间的距离、数据集S中的n个对象s与代表点p之间的距离,并将距离数据集R中的第i个对象r与数据集S中的第j个对象sj的最接近的代表点Pij选出并聚集在Voronoi单元格VCi中,形成m个VC的分区VC1~VCm,所述的i顺序取遍1~m,并且,当i顺序取1~m中的一个具体值时,在i的该值下,j顺序取遍1~n的所有值,得到m个存储最接近的代表点的Voronoi单元格;输出&lt;VCi,List(Pij)&gt;对;已知查询点p,判别其最邻近的VCi或最一些邻近的VCi集,由mapper输出所述最邻近的VCi或最一些邻近的VCi集对应的原始数据集R和/或S中的r、s对象,并输出最邻近的VCi或最一些邻近的VCi集的id;S3.将mapper输出到Hadoop的文件系统。2.如权利要求1所述的构建倒排泰森多边形的分布式索引方法,其特征在于,在所述步骤S...

【专利技术属性】
技术研发人员:季长清秦静汪祖民金锡哲刘畅吴锐
申请(专利权)人:大连大学
类型:发明
国别省市:辽宁,21

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

1