CN101719155A - 一种支持分布式多集群计算环境的多维属性范围查询的方法 - Google Patents
一种支持分布式多集群计算环境的多维属性范围查询的方法 Download PDFInfo
- Publication number
- CN101719155A CN101719155A CN200910244347A CN200910244347A CN101719155A CN 101719155 A CN101719155 A CN 101719155A CN 200910244347 A CN200910244347 A CN 200910244347A CN 200910244347 A CN200910244347 A CN 200910244347A CN 101719155 A CN101719155 A CN 101719155A
- Authority
- CN
- China
- Prior art keywords
- attribute
- node
- inquiry
- vector
- unitbitidx
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种支持分布式多集群计算环境的多维属性范围查询方法来支持共享和检索历史性能数据,该方法在分布式哈希表(DistributedHash Table)基础上使用向量索引来解决数字型属性的范围查询,通过对查询结果集进行交集操作来解决多维属性的简单查询,实验结果证明,该方法具有比较好的可扩展性。
Description
技术领域
本发明设计了一种适合分布式多集群计算环境的多维属性范围查询方法来支持共享和检索历史性能数据,该方法使用向量索引来解决数字型属性的范围查询,通过对查询结果集进行交集操作来解决多维属性的简单查询。
背景技术
在分布式多集群计算环境中允许集群间共享性能数据以便提高性能分析的效率或者进行多实验分析,这就需要能够在这个分布式多集群环境中搜索查询历史数据的方法。
目前,在对等网络中实现资源查找的方法中基于分布式哈希表(Distributed Hash Table)的查询方法是一种有效率的查询方法。但是传统的基于DHT的查询方法是面向精确查询的。为了在分布式多集群计算环境中共享实验(并行作业在特定环境下的一次执行)数据,就要实现多维属性范围查询方法,支持性能数据的查询工作。例如,一次实验产生的性能数据资源属性可以描述为:NodeNumbers=6,CPUType=Intel,CPUSpeed=3.2GHz,而一次查询的描述可能为:5<=NodeNumbers<=15andCPUType=Intel and CPUSpeed>=2GHz。本发明就是要找到一种映射方法f,将资源属性空间S上的点P(s1,s2,…sm)(m是资源属性的个数,si,(1≤i≤m)为资源的一种属性)映射为散列空间上的一点Q(x),其中0≤x≤2t-1(t是散列值的bit位数),并且设计出多维属性的查询方法。
近来,有人提出将Chord的资源定位方法应用于网格系统。对于数字型属性通过重新定义散列函数来分配标识符,虽然解决了传统Chord资源定位方法的不足,实现简单,但该方法本质上只使用了一种属性作为需要的散列属性,即所有查询必须含有该属性,在支配属性定位的基础上再比对其它属性;当资源在稠密节点上稀疏分布时,查询效率较差。
基于树状向量索引的范围属性查询方法具有较好的查询性能和可扩展性,并且通常情况下可以准确返回所有匹配的结果,但是这种方法如果直接用在Chord系统上会导致索引信息的环状递归更新,造成所有节点上的索引信息完全相同,从而不能正常进行查询;此外,由于查询只能从邻居节点收集信息,所以当更新节点距离查询请求节点较远时,查询请求节点需要较长时间才能获得准确的数据。
发明内容
本发明设计了一种多维属性范围查询方法,该方法可以在分布式多集群计算环境中支持共享和检索历史性能数据,该方法使用向量索引来解决数字型属性的范围查询,通过对查询结果集进行交集操作来解决多维属性的简单查询。
在数字型属性范围查询中,将查询定义为Q:=QorQ|D[A]∈[umin,umax],其中D[A]表示属性A的取值。在使用属性值之前,将属性值所在的区间划分为k个小区间,用k位二进制向量编码。将值D[A]编码为一个k位的二进制向量BitIdx(D[A])=(b0,b1,…,bk-1),对每个i=0,1,…,k-2,仅当D[A]∈[ui,ui+1)时,bi=1,i=k-1时,仅当D[A]∈[ui,ui+1]时,bi=1。K[A]为属性A的k比特的标识符。UnitBitIdx[i]为第i位为1的k阶单位向量,Nk=successor(H(K[A]+UnitBitIdx[i]))称为属性A的第i个关键节点,该节点维护了属性A属于区间i的向量索引表,其中successor(P)为指向P的后继结点的后继函数。
数字型属性范围查询方法有以下步骤:
步骤一、查询请求节点N初始化资源集合W;
步骤二、将需要查询的属性A的值D[A]编码为一个k位的二进制向量BitIdx(D[A])=(b0,b1,…,bk-1);
步骤三、当0≤i≤k-1时,循环处理以下步骤:
计算b=UnitBitIdx[i]&BitIdx(D[A]),如果b不为0,求出属性A的第b个关键节点Nk=successor(H(K[A]+b)),将包含向量UnitBitIdx[i]的节点查询请求路由转发到节点Nk上,
Nk初始化资源集合W’,在节点Nk上使用K[A]和UnitBitIdx[i]在向量索引表中找到对应的Set将其中的元素加入集合W’,Nk将资源集合W’返回给N,合并到集合W中;
在多维属性查询中,将多维属性查询定义为Q:=Q and Q|A=str|A∈[umin,umax],其中D[A]表示属性A的取值,str为相应属性要查询的值。
多维属性范围查询的方法有以下步骤:
步骤一、节点N接到多维查询请求Q,初始化资源集合W;
步骤二、将多维复杂查询Q分解为单属性的简单查询Q1,Q2,……Qn,j=1,2…,n;
步骤三、当j=1,2…,n循环处理以下步骤:
处理简单查询Qj,如果Qj对应A=str的简单查询,根据哈希散列函数H(K[A]=str)找到资源集合W’;如果Qj对应数字型属性范围查询,使用数字型属性范围查询方法进行处理得到资源集合W’;
如果集合W为空,则将W’赋给集合W,否则求集合W’与W的交集赋给集合W;
本发明的多维属性范围查询方法的优点在于:
1.该方法使用向量索引来解决数字型属性的范围查询,弥补了分布式哈希表查询方法面向精确查询的不足,而支持属性值的范围查询。
2.实验证明,该方法无论在查询范围或者还是在节点规模方面都比现有方法具有更好的性能和更高的可扩展性。
附图说明
图1数字型属性范围查询方法流程图
图2范围查询方法实例
图3多维属性范围查询方法流程图
图4多维属性范围查询实例
附表说明
图5属性A在各节点上的区间向量索引表
具体实施方式
下面将结合附图对本发明作进一步的说明:
本方法将具有N个节点的P2P系统表示为集合P={P1,P2,…,PN},将节点组织成覆盖网络,路由信息在单独的连接上传播,并且维护一个节点集合P的无向生成树。覆盖网络只用来路由查询和更新信息,而节点间可以直接通讯。
本方法通过向量索引来发布、存储和查询资源信息。在数字型属性范围查询中,将查询定义为Q:=Q or Q|D[A]∈[umin,umax],其中D[A]表示属性A的取值。
在使用属性值之前,将属性值所在的区间划分为k个小区间,用k位二进制向量编码。例如,数字型属性A的值域为[umin,umax],选择k+1个分割点umin=uo<u1<…<uk=umax将[umin,umax]划分为k个相连的区间[ui,ui+1),i=0,1,…,k-2和[ui,ui+1],i=k-1。每种属性都需要定义一种值域的划分,将值D[A]编码为一个k位的二进制向量BitIdx(D[A])=(b0,b1,…,bk-1),对每个i=0,1,…,k-2,当且仅当D[A]∈[ui,ui+1)时,bi=1,i=k-1时,当且仅当D[A]∈[ui,ui+1]时,bi=1。K[A]为属性A的k比特的标识符。UnitBitIdx[i]为第i位为1的单位向量,例如,UnitBitIdx[0]=(1,0,…,0),UnitBitIdx[1]=(0,1,…,0),……,UnitBitIdx[k-1]=(0,0,…,1),Nk=successor(H(K[A]+UnitBitIdx[i]))称为属性A的第i个关键节点,该节点维护了属性A属于区间i的向量索引表,successor(P)为指向P的后继结点的后继函数。向量索引表的表项有:AttrIdent:属性标识符,能够在系统中唯一确定一个属性的值;UnitBitIdx:单位向量,对应k位的单位向量;Set:资源集合,包含对应单位向量索引的资源。
数字型属性范围查询方法如下:
a.查询请求节点N初始化资源集合W;
b.将需要查询的属性A的值D[A]编码为一个k位的二进制向量BitIdx(D[A])=(b0,b1,…bk-1);
c.当0≤i≤k-1时,循环处理以下步骤:
计算b=UnitBitIdx[i]&BitIdx(D[A]),如果b不为0,求出属性A的第b个关键节点Nk=successor(H(K[A]+b)),将包含向量UnitBitIdx[i]的节点查询请求路由转发到节点Nk上,
Nk初始化资源集合W’,在节点Nk上使用K[A]和UnitBitIdx[i]在向量索引表中找到对应的Set将其中的元素加入集合W’,Nk将资源集合W’返回给N,合并到集合W中;
方法流程图如图所示。
方法实例如图所示,设资源的属性A值域为[-180,180],使用12位二进制向量编码,并且H(K[A]+’001000000000’)=13,H(K[A]+’000100000000’)=80,H(K[A]+’000010000000’)=57,H(K[A]+’000001000000’)=0。属性A的相关的区间向量索引表如图5所示。当N要查询D[A]∈[1,110]的资源时,首先初始化资源节点集合P以及资源集合W;将D[A]编码,编码后的向量索引为BitIdx(D[A])=(0,0,1,1,1,1,0,0,0,0,0,0);依照Chord单关键字的查找方法根据H(K[A])找到属性A的关键节点Nk,在这里将包含UnitBitIdx[i]的节点查询请求发送给Nk;Nk=successor(13)=N15,Nk=successor(80)=N89,Nk=successor(57)=N63和Nk=successor(0)=N1;在节点N15上以“Attribute A”和001000000000在向量索引表中查找Set,找到资源R2和资源R1,将这两个节点加入集合W’;N15将资源集合W’返回给查询请求节点N,由N将W’合并到集合W中;节点N89和N63上均返回空集合;在节点N1上以“Attribute A”和000001000000在向量索引表中查找Set,找到了资源R2,将这个资源加入集合W’;N1将资源集合W’返回给查询请求节点N,由N将W’合并到集合W中,此时,查询过程终止。
该查找方法对于一次u∈[x,y]查询的时间复杂度为O(mlogN),其中m为需要查询的区间个数,O(logN)为查询节点Nk需要的时间。
在多维属性查询中,将多维属性查询定义为Q:=Q and Q|A=str|A∈[umin,umax],其中D[A]表示属性A的取值。
多维属性查询方法如下:
a.节点N接到多维查询请求Q,初始化资源集合W;
b.将多维复杂查询Q分解为单属性的简单查询Q1,Q2,……Qn;
c.当j=1,2…,n循环处理以下步骤:
处理简单查询Qj,如果Qj对应A=str的简单查询,根据哈希散列函数H(K[A]=str)找到资源集合W’;如果Qj对应数字型属性范围查询,使用数字型属性范围查询方法进行处理得到资源集合W’;
如果集合W为空,则将W’赋给集合W,否则求集合W’与W的交集赋给集合W。
方法流程图如图3所示。
方法实例如图4所示,设节点N接收到多维查询请求Q:A∈[1,110]andB=′example1′,将查询Q 分解为Q1:A∈[1,110]和Q2:B=′example1′,处理简单查询Q1,得到资源集合W’包括资源R2和资源R1,此时集合W为空,将节点R2和节点R1放入集合W中;然后按照传统的Chord查询方法根据H(K[B]=′example1′)=46向节点N50查询得到资源集合W’包含资源R2,由于此时资源集合W不为空,求集合W’和W的交集得到资源R2放入集合W中;此时查询过程终止。
Claims (2)
1.一种支持分布式多集群计算环境的多维属性范围查询的方法,其特征在于:在多维属性查询中,将多维属性查询定义为Q:=Q and Q|A=str|D[A]∈[umin,umax],其中D[A]表示属性A的取值,在使用属性值之前,将属性值所在的区间划分为k个小区间,用k位二进制向量编码,将值D[A]编码为一个k位的二进制向量BitIdx(D[A])=(b0,b1,...,bk-1),对每个i=0,1,...,k-2,仅当D[A]∈[ui,ui+1)时,bi=1,i=k-1时,仅当D[A]∈[ui,ui+1]时,bi=1,K[A]为属性A的k比特的标识符,str为相应属性要查询的值,
该方法包括以下步骤:
步骤一、节点N接到多维查询请求Q,初始化资源集合W;
步骤二、将多维复杂查询Q分解为单属性的简单查询Q1,Q2,......Qn,j=1,2...,n;
步骤三、当j=1,2...,n循环处理以下步骤:
处理简单查询Qj,如果Qj对应A=str的简单查询,根据哈希散列函数H(K[A]=str)找到资源集合W’;如果Qj对应数字型属性范围查询,使用数字型属性范围查询方法进行处理得到资源集合W’;
如果集合W为空,则将W’赋给集合W,否则求集合W’与W的交集赋给集合W。
2.根据权利要求书1所述的支持分布式多集群计算环境的多维属性范围查询的方法,其特征在于:
在数字型属性范围查询中,将查询定义为Q:=Q or Q|D[A]∈[umin,umax],其中D[A]表示属性A的取值,将值D[A]编码为一个k位的二进制向量BitIdx(D[A])=(b0,b1,...,bk-1),对每个i=0,1,...,k-2,仅当D[A]∈[ui,ui+1)时,bi=1,i=k-1时,仅当D[A]∈[ui,ui+1]时,bi=1,K[A]为属性A的k比特的标识符,UnitBitIdx[i]为第i位为1的k阶单位向量,Nk=successor(H(K[A]+UnitBitIdx[i]))称为属性A的第i个关键节点,该节点维护了属性A属于区间i的向量索引表,其中successor(P)为指向P的后继结点的后继函数。向量索引表的表项有:
AttrIdent:属性标识符,能够在系统中唯一确定一个属性的值;
UnitBitIdx:单位向量,对应k位的单位向量;
Set:资源集合,包含对应单位向量索引的资源;
数字型属性范围查询方法有以下步骤:
步骤一、查询请求节点N初始化资源集合W;
步骤二、将需要查询的属性A的值D[A]编码为一个k位的二进制向量BitIdx(D[A])=(b0,b1,...,bk-1);
步骤三、当0≤i≤k-1时,循环处理以下步骤:
计算b=UnitBitIdx[i]&BitIdx(D[A]),如果b不为0,求出属性A的第b个关键节点Nk=successor(H(K[A]+b)),将包含向量UnitBitIdx[i]的节点查询请求路由转发到节点Nk上,
Nk初始化资源集合W’,在节点Nk上使用K[A]和UnitBitIdx[i]在向量索引表中找到对应的Set将其中的元素加入集合W’,Nk将资源集合W’返回给N,合并到集合W中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910244347XA CN101719155B (zh) | 2009-12-29 | 2009-12-29 | 一种支持分布式多集群计算环境的多维属性范围查询的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910244347XA CN101719155B (zh) | 2009-12-29 | 2009-12-29 | 一种支持分布式多集群计算环境的多维属性范围查询的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101719155A true CN101719155A (zh) | 2010-06-02 |
CN101719155B CN101719155B (zh) | 2012-11-21 |
Family
ID=42433729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910244347XA Expired - Fee Related CN101719155B (zh) | 2009-12-29 | 2009-12-29 | 一种支持分布式多集群计算环境的多维属性范围查询的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101719155B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609441A (zh) * | 2011-12-27 | 2012-07-25 | 中国科学院计算技术研究所 | 基于分布熵的局部敏感哈希高维索引方法 |
US8380737B2 (en) | 2010-12-17 | 2013-02-19 | International Business Machines Corporation | Computing intersection of sets of numbers |
CN103383653A (zh) * | 2012-05-02 | 2013-11-06 | 中国科学院计算技术研究所 | 云资源管理和调度方法及系统 |
CN103488778A (zh) * | 2013-09-27 | 2014-01-01 | 华为技术有限公司 | 一种数据查询方法及装置 |
CN103488778B (zh) * | 2013-09-27 | 2016-11-30 | 华为技术有限公司 | 一种数据查询方法及装置 |
CN109885570A (zh) * | 2019-01-30 | 2019-06-14 | 南京邮电大学 | 一种辅助索引结合散列表的多维范围查询方法 |
CN110019084A (zh) * | 2017-10-12 | 2019-07-16 | 航天信息股份有限公司 | 面向HDFS的split层索引方法和装置 |
CN114679448A (zh) * | 2020-12-24 | 2022-06-28 | 超聚变数字技术有限公司 | 一种资源匹配方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1564160A (zh) * | 2004-04-22 | 2005-01-12 | 重庆市弘越科技有限公司 | 建立及查询多维数据立方体的方法 |
CN100534047C (zh) * | 2006-04-28 | 2009-08-26 | 国际商业机器公司 | 对Web服务资源的基于属性的索引和/或查询方法及系统 |
CN101241506A (zh) * | 2008-03-17 | 2008-08-13 | 张建中 | 一种多维检索方法和装置以及系统 |
-
2009
- 2009-12-29 CN CN200910244347XA patent/CN101719155B/zh not_active Expired - Fee Related
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8380737B2 (en) | 2010-12-17 | 2013-02-19 | International Business Machines Corporation | Computing intersection of sets of numbers |
CN102609441A (zh) * | 2011-12-27 | 2012-07-25 | 中国科学院计算技术研究所 | 基于分布熵的局部敏感哈希高维索引方法 |
CN102609441B (zh) * | 2011-12-27 | 2014-06-25 | 中国科学院计算技术研究所 | 基于分布熵的局部敏感哈希高维索引方法 |
CN103383653A (zh) * | 2012-05-02 | 2013-11-06 | 中国科学院计算技术研究所 | 云资源管理和调度方法及系统 |
CN103383653B (zh) * | 2012-05-02 | 2017-07-04 | 中国科学院计算技术研究所 | 云资源管理和调度方法及系统 |
CN103488778A (zh) * | 2013-09-27 | 2014-01-01 | 华为技术有限公司 | 一种数据查询方法及装置 |
CN103488778B (zh) * | 2013-09-27 | 2016-11-30 | 华为技术有限公司 | 一种数据查询方法及装置 |
CN110019084A (zh) * | 2017-10-12 | 2019-07-16 | 航天信息股份有限公司 | 面向HDFS的split层索引方法和装置 |
CN110019084B (zh) * | 2017-10-12 | 2022-01-14 | 航天信息股份有限公司 | 面向HDFS的split层索引方法和装置 |
CN109885570A (zh) * | 2019-01-30 | 2019-06-14 | 南京邮电大学 | 一种辅助索引结合散列表的多维范围查询方法 |
CN114679448A (zh) * | 2020-12-24 | 2022-06-28 | 超聚变数字技术有限公司 | 一种资源匹配方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101719155B (zh) | 2012-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Semantic small world: An overlay network for peer-to-peer search | |
Cai et al. | Maan: A multi-attribute addressable network for grid information services | |
CN101719155B (zh) | 一种支持分布式多集群计算环境的多维属性范围查询的方法 | |
CN105357247B (zh) | 基于分层云对等网络的多维属性云资源区间查找方法 | |
Ding et al. | An efficient quad-tree based index structure for cloud data management | |
CN103838770A (zh) | 一种数据逻辑分区的方法和系统 | |
CN110022234B (zh) | 面向边缘计算的非结构化数据共享机制实现方法 | |
CN103823846A (zh) | 一种基于图论的大数据存储及查询方法 | |
Li et al. | Ssw: A small-world-based overlay for peer-to-peer search | |
CN102891872A (zh) | 一种对等网络中数据存储和查询的方法及系统 | |
Shen et al. | Leveraging a compound graph-based DHT for multi-attribute range queries with performance analysis | |
Xu et al. | Energy‐efficient big data storage and retrieval for wireless sensor networks with nonuniform node distribution | |
CN102378407B (zh) | 一种物联网中的对象名字解析系统及其解析方法 | |
CN101902388A (zh) | 可扩充的多级排序资源快速发现技术 | |
CN106612318A (zh) | 云计算中一种云资源的查找方法 | |
CN110716933B (zh) | 一种面向新型城轨列车大数据的高伸缩分布式索引方法 | |
CN101917475B (zh) | 一种基于p2p模式的psrd普适服务资源发现方法 | |
Abe et al. | Aggregation skip graph: A skip graph extension for efficient aggregation query over p2p networks | |
Shu et al. | Adapting the content native space for load balanced indexing | |
Sen et al. | MARQUES: Distributed multi-attribute range query solution using space filling curve on DTHs | |
Shen et al. | Combining efficiency, fidelity, and flexibility in resource information services | |
CN104333591A (zh) | 一种信息物理融合系统的分布式语义服务发现方法 | |
Brodal et al. | D 2-tree: A new overlay with deterministic bounds | |
Ren et al. | haps: Supporting effective and efficient full-text p2p search with peer dynamics | |
Asaduzzaman et al. | GeoP2P: An adaptive peer-to-peer overlay for efficient search and update of spatial information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121121 Termination date: 20151229 |
|
EXPY | Termination of patent right or utility model |