CN103678550A - 一种基于动态索引结构的海量数据实时查询方法 - Google Patents

一种基于动态索引结构的海量数据实时查询方法 Download PDF

Info

Publication number
CN103678550A
CN103678550A CN201310648180.XA CN201310648180A CN103678550A CN 103678550 A CN103678550 A CN 103678550A CN 201310648180 A CN201310648180 A CN 201310648180A CN 103678550 A CN103678550 A CN 103678550A
Authority
CN
China
Prior art keywords
node
result
data
query
mass data
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.)
Granted
Application number
CN201310648180.XA
Other languages
English (en)
Other versions
CN103678550B (zh
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.)
Longkon wisdom Polytron Technologies Inc
Original Assignee
Nanjing Post and Telecommunication 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 Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201310648180.XA priority Critical patent/CN103678550B/zh
Publication of CN103678550A publication Critical patent/CN103678550A/zh
Application granted granted Critical
Publication of CN103678550B publication Critical patent/CN103678550B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F16/2246Trees, e.g. B+trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种基于动态索引结构(DC-Tree)的海量数据实时查询方法,该方法是将海量多维数据集降维,支持高空间效率低查询时间的方法,并支持分布式冗余存储,从而提升了传统分布式机制中数据分配的效率,适应大规模数据的处理;该方法包括:多维数据记录DR通过MasterNode中Z Curve映射函数fz,生成降维结果集S;MasterNode选定k个哈希函数,通过Bloom Filter对结果集S进行映射,生成节点集NN;更新数据记录DR,对节点集NN中每个元素实行动态构建;用户User查询MDS结果,通过步骤1、步骤2获得节点集NN,启用并行查询方法;用户User对节点集NN中所有访问节点的结果集进行聚合,得到最终查询结果Rset。

Description

一种基于动态索引结构的海量数据实时查询方法
技术领域
本发明涉及计算机大数据查询技术领域,特别涉及一种基于动态索引结构的海量数据实时查询方法。
背景技术
随着互联网的飞速发展,社交网络、移动应用等日趋火热,我们看到网络信息的数据量在日益增多,大数据作为一种新兴数据概念而被定义,数据作为信息的载体,起着举足轻重的作用。数据的***式增长使得我们进入了大规模数据分析的时代,其特点是计算强度大,并且要求大规模并发存储和处理能力。如何快速地处理海量数据,及时有效地从海量数据中提取有价值的信息,是急需解决的技术问题。
目前,大规模数据分析有2种主流技术:第一种是20世纪80年代开始,以Teradata、Gamma研究项目为代表的并行数据库逐步发展成熟,它是由一系列操作符组成,前一操作符的输出流是下个操作符的输入流,记录按流水线的方式依次经过这些操作符,具有较高的性能。第2种是以Google为首的基于Map Reduce和分布式文件***GFS组成一种“无共享”的简单函数式编程的并行计算框架,支持其每天亿万次的搜索。Apache的Hadoop是一种Map Reduce的开源实现。但这些大规模数据处理技术难以满足实时性要求,更多的是针对离线数据的处理。Hadoop更像是一种ETL工具,两者的关系不是相互竞争而是互为补充。
另一方面,由Guttman提出的动态索引结构R-Tree及基于R-Tree的变种,其***、查询等操作可以同时进行,并且支持多维的模型,在众多空间索引技术中的优势非常明显,但是其针对大规模数据处理时随着树高度的增加,其查询结点重叠度增加,造成查询效率下降较快。而本发明能够很好地解决上面的问题。
发明内容
本发明目的在于提供一种基于动态索引结构(DC-Tree)的大规模多维数据实时查询方法,该方法解决了大规模多维数据处理的滞后性问题,实现了在分布式架构体系上的海量数据实时查询模型。
本发明解决其技术问题所采用的技术方案是:本发明提出一种基于动态索引结构(DC-Tree)的海量数据实时查询方法,该方法包括如下步骤:
步骤1:多维数据记录DR通过MasterNode中Z Curve映射函数fz,生成降维结果集S;
步骤2:MasterNode选定k个哈希函数,通过Bloom Filter对结果集S进行映射,生成节点集NN;
步骤3:更新数据记录DR,对节点集NN中每个元素实行动态构建;
步骤4:用户User查询MDS结果,通过步骤1、步骤2获得节点集NN,启用并行查询方法;
步骤5:用户User对节点集NN中所有访问节点的结果集进行聚合,得到最终查询结果Rset。
本发明是基于动态索引结构将海量多维数据集降维,支持高空间效率低查询时间的方法,并支持分布式冗余存储,从而提升了传统分布式机制中数据分配的效率,适应大规模数据的处理。本发明建立了具有概念层次化结构的多维数据树,打破传统的单一属性查询方法,使带有多维功能属性的数据集分成不同维度进行构建,大大降低了单一属性查询时的聚合工作量。
本发明通过将高维数据空间数据映射到一维空间,大大降低了数据管理节点的工作负担,支持数据存储节点的动态增加。同时设计了海量数据***和查询方法,支持多维属性数据的动态构建,并支持海量数据查询的实时性效果,增加了查询过程访问锁机制,适应查询的并发性需求。
一、***架构
图1给出海量数据实时查询***的体系架构,该***由以下四部分组成:数据管理节点(Master Node)、动态索引树(DC-Tree)、数据存储节点(Data Node)及用户(User)。MasterNode负责数据查询/更新的定位,主要运用降维和快速查询技术。DC-Tree主要是用于动态构建多维属性数据查询树,提供实时查询效果。DataNode负责具体数据的存储。用户(User)向MasterNode发送查询请求,MasterNode将对查询请求内容处理,确定所查询内容在部分DataNode上,并将这些符合要求的DataNode提交给用户。完成这个操作之后,用户将于MasterNode断开连接,并主动访问提交的DataNode进行查询。***整体架构如下图1所示。
本发明的海量数据实时查询方案由以下四部分操作组成:MDS(最小描述子集)分解、Zcurve降维处理、Bloom Filter定位、DC-Tree索引及结果聚合。
二、方法流程
1.MDS(最小描述子集)分解
MDS(最小描述子集)表现形式为(M1,...,Md),其中
Figure BDA0000430114430000021
不妨设Mi={ai1,ai2,...,aik},其中1≤i≤d,aik∈Di,则此MDS(最小描述子集)对应的多维数据记录集为{(a11,a21,...,ad1),...,(a1k,a2k,...,adk)},记为MM。
2.Z curve降维处理
根据上述步骤1中所得结果集MM,运用Z Curve方法进行降维操作,设Z Curve映射函数为fz(p,m,n),其中p∈MM,m为Z Curve阶数,n为多维模型的维度数,不妨设映射函数fz返回值为yp。该映射函数计算过程伪代码如下:
(1)yp=0;
REPEAT
REPEAT
(2)yp=yp+2n(i-1)+j-1aji
UNTIL j≥n
UNTIL i≥m
(3)RETURN yp
由于n维m阶Z Curve的映射函数空间复杂度为O(n),所以上述结果需要长度为n的数组来存放结果集yp,不妨设此结果集为S。
3.Bloom Filter定位
根据上述步骤2中所得降维处理后的结果集S={y1,...,yn},再根据相关工作中对BloomFilter的阐述,此时需要选择k个哈希函数HFi,其中1≤i≤k,由于Bloom Filter本身存在一定的错误率,为了能够减少这种正向性错误,本发明在构建哈希函数时运用了Knuth论证:两个哈希函数HF1和HF2通过下面的形式可以生成更多的哈希函数:
HFi=[HF1+HF2+f(i)]mod r
其中1≤i≤k,r为Bloom Filter数组长度,HF1和HF2是两个相互独立的哈希函数。当f(i)=0时,采用双哈希函数机制,否则就为扩展哈希函数机制,这样产生的哈希函数保持了正向性错误率不变,并且提高了***的计算效率。
选定k个函数函数后,对集合S中数据进行映射,返回一个DataNode节点集,不妨设为NN。并将此集NN返回至用户。
4.DC-Tree索引及结果聚合
用户根据上述步骤3中所得集合NN,定位到所需进行索引的DataNode,DataNode采用DC-Tree索引方法进行查找。在每个DataNode上进行查找后,会将索引结果发送到一个索引结果集中,不妨设为RSet,此时再对该索引结果集进行聚合,获得最终查询结果。
有益效果:
1、本发明提高了数据分配的效率,适应大规模数据的处理,降低了单一属性查询时的聚合工作量。
2、本发明实现了大规模数据高效并发处理和实时性功能。
附图说明
图1是本发明的***架构图。
图2是本发明的动态***方法流程图。
图3是本发明的并行查询方法流程图。
具体实施方式
下面通过结合说明书附图,进一步说明本发明的技术方案。
实施例1
如图2和图3所示,本发明提出一种基于动态索引结构(DC-Tree)的海量数据实时查询方法,该方法包括如下步骤:
步骤1:多维数据记录DR通过MasterNode中Z Curve映射函数fz,生成降维结果集S;
步骤2:MasterNode选定k个哈希函数,通过Bloom Filter对结果集S进行映射,生成节点集NN;
步骤3:更新数据记录DR,对节点集NN中每个元素实行动态构建;
步骤4:用户User查询MDS结果,通过步骤1、步骤2获得节点集NN,启用并行查询方法;
步骤5:用户User对节点集NN中所有访问节点的结果集进行聚合,得到最终查询结果Rset。
本发明是基于动态索引结构将海量多维数据集降维,支持高空间效率低查询时间的方法,并支持分布式冗余存储,从而提升了传统分布式机制中数据分配的效率,适应大规模数据的处理。本发明建立了具有概念层次化结构的多维数据树,打破传统的单一属性查询方法,使带有多维功能属性的数据集分成不同维度进行构建,大大降低了单一属性查询时的聚合工作量。
本发明的一个新的多维数据记录DR,通过MasterNode快速定位查询节点集NN,并动态添加到相应DC-Tree,用户User通过MDS查询节点集NN,聚合返回查询结果。
则其具体实施方式为:
(1)多维数据记录DR通过MasterNode中Z Curve映射函数fz,生成降维结果集S;
(2)MasterNode选定k个哈希函数,通过Bloom Filter对结果集S进行映射,生成节点集NN;
(3)更新数据记录DR,对节点集NN中每个元素实行动态构建;
动态***:为根节点D申请加锁LOCK;更新目录结点的Measure值;如果DR仅仅包含在D的一个孩子的MDS中,那么令D置为这个目录孩子结点;如果DR包含在多个D的孩子的MDS中,那么找出这些孩子中包含最少数据结点的那个孩子,并将D置为这个目录孩子结点;如果DR不包含在D的任何一个孩子的MDS中,首先拷贝一份D,不妨设为D’,将DR添加到D的每一个孩子结点中,计算添加后的重叠值,选择重叠值最小的那个孩子结点,并将其设为D;将数据记录DR***到D中,并更新D的Measure值;如果D的容纳空间已经达到最大,则调用***函数SPLIT,将D作为参数传递;更新D的父亲结点的Measure和MDS;令D指向D的父亲结点,如果D没有更新或者D不是根节点,则重新将数据记录DR***到D中,并更新D的Measure值,继续执行,否则结束;为根节点D申请解锁UNLOCK;
(4)用户User查询MDS结果,通过步骤1、步骤2获得节点集NN,启用并行查询方法;
并行查询:对节点集NN中所有节点,如果该节点没有上锁,则并发访问所有在NN中节点;为根节点D申请加锁LOCK;对D的每一次孩子结点C,对C的任何一个维度,如果与查询MDS不在同一维度层次上,则将两者中较低维度层次转换为较高维度层次;如果C的_MDS包含在查询MDS中,则将该_MDS及其Measure Values加入到结果集中;如果C的_MDS和查询MDS有重叠但并不包含在查询MDS中,则将该孩子结点C设为D,递归调用并行查询函数PARALLEL QUERY,继续及NN中节点执行同样操作;如果C为叶子结点,则访问结束;为根节点D申请解锁UNLOCK;
(5)用户User对节点集NN中所有访问节点的结果集进行聚合,得到最终查询结果Rset;
(6)全过程结束。
实施例2
如图1所示,本发明给出海量数据实时查询***的体系架构,该***由以下四部分组成:数据管理节点(Master Node)、动态索引树(DC-Tree)、数据存储节点(Data Node)及用户(User)。MasterNode负责数据查询/更新的定位,主要运用降维和快速查询技术。DC-Tree主要是用于动态构建多维属性数据查询树,提供实时查询效果。DataNode负责具体数据的存储。用户(User)向MasterNode发送查询请求,MasterNode将对查询请求内容处理,确定所查询内容在部分DataNode上,并将这些符合要求的DataNode提交给用户。完成这个操作之后,用户将于MasterNode断开连接,并主动访问提交的DataNode进行查询。
本发明的海量数据实时查询方法由以下四个操作部分组成,包括:MDS(最小描述子集)分解、Z curve降维处理、Bloom Filter定位、DC-Tree索引及结果聚合。

Claims (5)

1.一种基于动态索引结构的海量数据实时查询方法,其特征在于,所述方法包含如下步骤:
步骤1:多维数据记录DR通过MasterNode中Z Curve映射函数fz,生成降维结果集S;
步骤2:MasterNode选定k个哈希函数,通过Bloom Filter对结果集S进行映射,生成节点集NN;
步骤3:更新数据记录DR,对节点集NN中每个元素实行动态构建;
步骤4:用户User查询MDS结果,通过步骤1、步骤2获得节点集NN,启用并行查询方法;
步骤5:用户User对节点集NN中所有访问节点的结果集进行聚合,得到最终查询结果Rset。
2.根据权利要求1所述的一种基于动态索引结构的海量数据实时查询方法,其特征在于:所述方法中建立了实时查询模型,将海量多维数据集降维。
3.根据权利要求1所述的一种基于动态索引结构的海量数据实时查询方法,其特征在于:所述方法中建立了具有概念层次化结构的多维数据树。
4.根据权利要求1所述的一种基于动态索引结构的海量数据实时查询方法,其特征在于,所述方法中包括:MDS(最小描述子集)分解、Z curve降维处理、Bloom Filter定位、DC-Tree索引及结果聚合。
5.根据权利要求1所述的一种基于动态索引结构的海量数据实时查询方法,其特征在于:所述方法是基于动态索引结构。
CN201310648180.XA 2013-09-09 2013-12-04 一种基于动态索引结构的海量数据实时查询方法 Active CN103678550B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310648180.XA CN103678550B (zh) 2013-09-09 2013-12-04 一种基于动态索引结构的海量数据实时查询方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201310408184 2013-09-09
CN201310408184.0 2013-09-09
CN2013104081840 2013-09-09
CN201310648180.XA CN103678550B (zh) 2013-09-09 2013-12-04 一种基于动态索引结构的海量数据实时查询方法

Publications (2)

Publication Number Publication Date
CN103678550A true CN103678550A (zh) 2014-03-26
CN103678550B CN103678550B (zh) 2017-02-08

Family

ID=50316095

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310648180.XA Active CN103678550B (zh) 2013-09-09 2013-12-04 一种基于动态索引结构的海量数据实时查询方法

Country Status (1)

Country Link
CN (1) CN103678550B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104090962A (zh) * 2014-07-14 2014-10-08 西北工业大学 面向海量分布式数据库的嵌套查询方法
CN104731875A (zh) * 2015-03-06 2015-06-24 浙江大学 一种获取多维数据稳定性的方法和***
CN106020724A (zh) * 2016-05-20 2016-10-12 南京邮电大学 一种基于数据映射算法的近邻存储方法
CN106528773A (zh) * 2016-11-07 2017-03-22 山东首讯信息技术有限公司 一种基于Spark平台支持空间数据管理的图计算***及方法
CN107273471A (zh) * 2017-06-07 2017-10-20 国网上海市电力公司 一种基于Geohash的二元电力时序数据索引构建方法
CN107832347A (zh) * 2017-10-16 2018-03-23 北京京东尚科信息技术有限公司 数据降维方法、***及电子设备
CN109597807A (zh) * 2018-10-25 2019-04-09 阿里巴巴集团控股有限公司 数仓表处理方法和装置
CN109783441A (zh) * 2018-12-24 2019-05-21 南京中新赛克科技有限责任公司 基于Bloom Filter的海量数据查询方法
CN114866262A (zh) * 2022-07-07 2022-08-05 万商云集(成都)科技股份有限公司 一种数据证书文件的存储取用方法、装置、设备和介质
US11741258B2 (en) 2021-04-16 2023-08-29 International Business Machines Corporation Dynamic data dissemination under declarative data subject constraints

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6122628A (en) * 1997-10-31 2000-09-19 International Business Machines Corporation Multidimensional data clustering and dimension reduction for indexing and searching
EP2483851A1 (en) * 2009-09-29 2012-08-08 NEC Europe Ltd. Method and system for probabilistic processing of data
EP2564306A4 (en) * 2010-04-27 2017-04-26 Cornell University System and methods for mapping and searching objects in multidimensional space

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104090962B (zh) * 2014-07-14 2017-03-29 西北工业大学 面向海量分布式数据库的嵌套查询方法
CN104090962A (zh) * 2014-07-14 2014-10-08 西北工业大学 面向海量分布式数据库的嵌套查询方法
CN104731875A (zh) * 2015-03-06 2015-06-24 浙江大学 一种获取多维数据稳定性的方法和***
CN104731875B (zh) * 2015-03-06 2018-04-17 浙江大学 一种获取多维数据稳定性的方法和***
CN106020724A (zh) * 2016-05-20 2016-10-12 南京邮电大学 一种基于数据映射算法的近邻存储方法
CN106528773B (zh) * 2016-11-07 2020-06-26 山东联友通信科技发展有限公司 一种基于Spark平台支持空间数据管理的图计算***及方法
CN106528773A (zh) * 2016-11-07 2017-03-22 山东首讯信息技术有限公司 一种基于Spark平台支持空间数据管理的图计算***及方法
CN107273471A (zh) * 2017-06-07 2017-10-20 国网上海市电力公司 一种基于Geohash的二元电力时序数据索引构建方法
CN107832347A (zh) * 2017-10-16 2018-03-23 北京京东尚科信息技术有限公司 数据降维方法、***及电子设备
CN109597807A (zh) * 2018-10-25 2019-04-09 阿里巴巴集团控股有限公司 数仓表处理方法和装置
CN109783441A (zh) * 2018-12-24 2019-05-21 南京中新赛克科技有限责任公司 基于Bloom Filter的海量数据查询方法
US11741258B2 (en) 2021-04-16 2023-08-29 International Business Machines Corporation Dynamic data dissemination under declarative data subject constraints
CN114866262A (zh) * 2022-07-07 2022-08-05 万商云集(成都)科技股份有限公司 一种数据证书文件的存储取用方法、装置、设备和介质
CN114866262B (zh) * 2022-07-07 2022-11-22 万商云集(成都)科技股份有限公司 一种数据证书文件的存储取用方法、装置、设备和介质

Also Published As

Publication number Publication date
CN103678550B (zh) 2017-02-08

Similar Documents

Publication Publication Date Title
CN103678550A (zh) 一种基于动态索引结构的海量数据实时查询方法
CN106227800B (zh) 一种高度关联大数据的存储方法及管理***
CN107291807B (zh) 一种基于图遍历的sparql查询优化方法
Moniruzzaman et al. Nosql database: New era of databases for big data analytics-classification, characteristics and comparison
Zhao et al. Modeling MongoDB with relational model
CN106933833B (zh) 一种基于空间索引技术的位置信息快速查询方法
CN102270232B (zh) 一种存储优化的语义数据查询***
CN103177094B (zh) 一种物联网数据清洗方法
CN102915365A (zh) 基于Hadoop的分布式搜索引擎构建方法
US20100235344A1 (en) Mechanism for utilizing partitioning pruning techniques for xml indexes
CN106874425B (zh) 基于Storm的实时关键词近似搜索算法
CN107491476B (zh) 一种适用于多种大数据管理***的数据模型转换及查询分析方法
Wang et al. Parallel trajectory search based on distributed index
Curé et al. On the evaluation of RDF distribution algorithms implemented over apache spark
Kang et al. Research on construction methods of big data semantic model
Liu et al. Using provenance to efficiently improve metadata searching performance in storage systems
CN103440308A (zh) 一种基于形式概念分析的数字论文检索方法
Al-Hamodi et al. An enhanced frequent pattern growth based on MapReduce for mining association rules
CN110389953B (zh) 基于压缩图的数据存储方法、存储介质、存储装置和服务器
CN107291875B (zh) 一种基于元数据图的元数据组织管理方法和***
CN110321456B (zh) 一种海量不确定xml近似查询方法
CN112148830A (zh) 一种基于最大区域网格的语义数据存储与检索的方法及装置
Kaporis et al. ISB-tree: A new indexing scheme with efficient expected behaviour
Yu et al. Distributed top-k keyword search over very large databases with MapReduce
JP2016009425A (ja) データ仮想化サーバ、データ仮想化サーバにおけるクエリ処理方法及びクエリ処理プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20190314

Address after: Room A808, World Trade Center Building, 67 Shanxi Road, Gulou District, Nanjing City, Jiangsu Province

Patentee after: Longkon wisdom Polytron Technologies Inc

Address before: 210003 new model road 66, Gulou District, Nanjing, Jiangsu

Patentee before: Nanjing Post & Telecommunication Univ.

TR01 Transfer of patent right
CP02 Change in the address of a patent holder

Address after: Floor 31, Asia Pacific business building, No. 2 Hanzhong Road, Gulou District, Nanjing, Jiangsu 210005

Patentee after: LUCULENT SMART TECHNOLOGIES CO.,LTD.

Address before: Room A808, World Trade Center Building, 67 Shanxi Road, Gulou District, Nanjing City, Jiangsu Province

Patentee before: LUCULENT SMART TECHNOLOGIES CO.,LTD.

CP02 Change in the address of a patent holder