CN102609440B - 一种高维环境中资源分配问题的查询方法 - Google Patents
一种高维环境中资源分配问题的查询方法 Download PDFInfo
- Publication number
- CN102609440B CN102609440B CN 201110437148 CN201110437148A CN102609440B CN 102609440 B CN102609440 B CN 102609440B CN 201110437148 CN201110437148 CN 201110437148 CN 201110437148 A CN201110437148 A CN 201110437148A CN 102609440 B CN102609440 B CN 102609440B
- Authority
- CN
- China
- Prior art keywords
- dimensional
- query
- tree
- resource allocation
- key value
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000013468 resource allocation Methods 0.000 title claims abstract description 33
- 238000012545 processing Methods 0.000 claims description 8
- 230000004927 fusion Effects 0.000 abstract description 2
- 238000013507 mapping Methods 0.000 abstract 1
- 125000000205 L-threonino group Chemical group [H]OC(=O)[C@@]([H])(N([H])[*])[C@](C([H])([H])[H])([H])O[H] 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013506 data mapping Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种高维环境中资源分配问题的查询方法。该方法将每一个物体用高维环境中的一个高维点和两个附加参数来表示。然后将每个物体所对应的高维点通过一种降维技术映射成一个一维空间中的键值,并用一个B+树将所有物体对应的一维键值和附加参数索引在内存中。在查询处理前,根据资源分配问题的查询物体的查询条件将资源分配问题转化一维空间中的键值区间。在查询处理时,采用“最佳优先”的方法访问B+树,并用分配标记值来控制B+树的访问何时终止,从而查询结束。本发明利用了数据库和信息检索的现有研究和实现成果,基于已有的降维方法的扩展和融合可以非常方便快捷的提供资源分配问题的查询能力,提供最好的性能。
Description
技术领域
本发明涉及数据库系统、信息检索、高维数据映射和查询技术,特别是涉及一种高维环境内资源分配问题的查询方法。
背景技术
在越来越多的应用中,服务器根据用户自身的要求和偏好,为用户分配的资源。这包括在线婚介网站,交换居所服务网站,以及求职网站。这种类型的资源分配问题,通常指定一个查询物体。该查询物体包含一定数量的自身属性参数,同时,还包含一系列的要求。更进一步,数据库中的每个物体,同样拥有一定数量的自身属性参数和一系列对对方的条件。
不同于传统的查询类型,例如区域查询只需要判断数据库中的物体是否处于查询区域当中,资源分配问题的查询处理,需要判断数据库中的物体和查询物体是否处于彼此的查询区域当中。除了新的查询语义,在处理资源分配问题的过程中,还有一系列新的挑战。首先,资源分配问题涉及到的查询类型远比传统的空间数据类型,例如点数据、区域数据复杂。具体地,上述应用中的数据可以被建模为一个用于表示物体属性参数的空间点,和一个用于表示物体条件的空间区域的组合。更进一步,用于表示属性参数的空间点和用于表示条件的空间区域可能处于不同的值域空间中。由于这些问题的存在,使得为这种复杂类型数据建立索引,从而加快查询带来了更大的难度。另一方面,即时在同一种应用场景当中,资源分配问题也可能存在不同的表现形式。
在这种情况下,一个可以有效的管理海量高维数据,并支持各种表现形式的资源分配问题的通用索引方法和查询方法显得更加重要。
发明内容
本发明的目的在于提供一种高维环境中资源分配问题的查询方法。
本发明解决其技术问题采用的技术方案的步骤如下:
1)将每一个物体,用高维环境中的一个高维点和两个附加参数来表示;
2)将步骤1)中得到的每一个物体所对应的高维点通过降维方法转化成一个一维键值;
3)用B+树方法将步骤1)和步骤2)中得到的所有物体对应的一维键值和附加参数索引在内存中;
4)在查询处理前,根据查询物体的查询条件,将资源分配问题转化为一个一维的键值区间;
5)在查询处理时,采用“最佳优先”的方法访问步骤3)中得到的B+树;
6)用分配标记值来控制步骤5)中B+树的访问终止,从而查询结束。
步骤1)将每一个物体,用高维环境中的一个高维点和两个附加参数来表示;其中高维点为物体的中心点;两个附加参数分别为物体的最大半径和最大权重值。
步骤2)将步骤1)中得到的每一个物体所对应的高维点通过降维方法转化成一个一维键值;其中的降维方法为P+树方法。
步骤3)用B+树方法将步骤1)和步骤2)中得到的所有物体对应的一维键值和附加参数索引在内存中;其中B+树方法的索引关键值是物体对应的一维键值;此外在每个B+树节点中有两个存储空间,分别用来存储物体的两个附加参数。
步骤4)中将资源分配问题转化为一维空间中的键值区间需通过两个步骤:a)将资源分配问题转化为区域查询问题;b)将步骤a)中得到的区域查询问题通过降维方法转化为一个一维的键值区间。
步骤5)中为了采用“最佳优先”的方法访问步骤3)中得到的B+树,需要在内存中建立一个最大堆结构;其中最大堆的每个条目包含一个B+树节点,以及该B+树节点在最大堆中的排序值。
步骤6)中通过分配标记值和步骤5)中最大堆的顶端条目中的排序值的大小关系的比较,来控制步骤5)中B+树的访问的终止,从而查询结束。
本发明具有的有益效果是:
本发明充分利用了数据库和信息检索的现有研究和实现成果,基于已有的降维方法的扩展和融合可以非常方便快捷的提供资源分配问题的查询能力,并且不依赖于模糊数据的维度,为使用者提供最好的性能。本发明可以广泛用于交友网站,交换居所服务网站,以及求职网站等网络服务行业中海量数据的管理,以及资源分配问题的查询处理。
附图说明
图1是资源分配问题的查询方法示意图。
图2是B+树方法的示意图。
具体实施方式
现结合附图和具体实施例对本发明作进一步说明。
本发明具体实施过程和工作原理,如图1所示:
1)将每一个物体,用高维环境中的一个高维点和两个附加参数来表示;
2)将步骤1)中得到的每一个物体所对应的高维点通过降维方法转化成一个一维键值;
3)用B+树方法将步骤1)和步骤2)中得到的所有物体对应的一维键值和附加参数索引在内存中;
4)在查询处理前,根据查询物体的查询条件,将资源分配问题转化为一个一维的键值区间;
5)在查询处理时,采用“最佳优先”的方法访问步骤3)中得到的B+树;
6)用一个标记值来控制步骤5)中B+树的访问何时终止。
步骤1)中首先将物体所处于的属性空间和条件空间结合起来,得到一个高维的联合空间,并用D J 表示该联合空间的维度值。然后对于每一个物体X,用一个D J 维的空间矩形来表示物体的属性和条件。令C X 表示X的矩形的中心点,r X 来表示C X 在各维度距离该矩形边界的最大距离(半径),W X 来表示X的最大权重值,则每个物体X被表示为一个高维点C X 和两个附加值:最大半径r X 和最大权重W X 。
步骤2)中为了克服“维度的诅咒”这一问题,采用P+树降维方法,将每一个物体的中心点C X 从D J 维的高维环境映射到一维空间,成为一个一维键值。
然后,如图2所示,用B+树方法将步骤1)和步骤2)中得到的所有物体对应的一维键值和附加参数索引在内存中;其中B+树方法的索引关键值是物体对应的一维键值;此外在每个B+树节点中有两个存储空间,分别用来存储物体的两个附加参数。
步骤3)用B+树方法将步骤1)和步骤2)中得到的所有物体对应的一维键值和附加参数索引在内存中。其中B+树方法如图1所示。B+树的索引关键值是物体对应的一维键值。在每一个树节点中,除了索引关键值,树节点中还有两个存储空间,用来存储物体的两个附加参数,分别为该子节点对应的分支中所有物体的最大半径和最大权重值。
步骤4)中将资源分配问题转化为一维空间中的键值区间需通过两个步骤:a)将资源分配问题转化为区域查询问题;b)将区域查询问题通过降维方法转化为一个一维的键值区间。
步骤4)中将资源分配问题转化为一维空间中的键值区间需通过两个步骤:
a)根据资源分配问题的具体类型和查询物体的查询条件,将资源分配问题转化为区域查询问题。
b)将步骤a)中得到的区域查询问题通过P+树降维方法映射成一个一维键值区间。这个键值空间,将被存储在一个名为L key 的列表中。
步骤5)中采用最佳优先的方式访问B+树。为了实现最佳优先的访问方式,需要在内存中建立一个最大堆结构H。最大堆的每一个条目表示为(N,N.value)。其中,N是B+树中的一个节点,而N.value是N在最大堆H中对应的排序值。具体地,N.value 代表了N的子树包含的物体能够成为资源分配问题查询结果的可能性。
在查询开始的时候,本查询方法先将B+树的根节点插入最大堆H中。此后,本查询方法每次都直接访问最大堆的顶端条目(N,N.value)中对应的节点N。
步骤6)中通过比较标记值和步骤5)中最大堆的顶端条目中的排序值的大小关系来控制步骤5)中B+树的访问何时终止。令标记值为V thres 。当V thres 大于最大堆的顶端条目中的排序值N.value时,步骤步骤5)中B+树的访问终止。
Claims (3)
1.一种高维环境中资源分配问题的查询方法,其特征在于采用以下步骤实现:
1)将每一个物体,用高维环境中的一个高维点和两个附加参数来表示;
2)将步骤1)中得到的每一个物体所对应的高维点通过降维方法转化成一个一维键值;
3)用B+树方法将步骤1)和步骤2)中得到的所有物体对应的一维键值和附加参数索引在内存中;
4)在查询处理前,根据查询物体的查询条件,将资源分配问题转化为一个一维的键值区间;
5)在查询处理时,采用“最佳优先”的方法访问步骤3)中得到的B+树;
6)用分配标记值来控制步骤5)中B+树的访问终止,从而查询结束;
步骤1)将每一个物体,用高维环境中的一个高维点和两个附加参数来表示;其中高维点为物体的中心点;两个附加参数分别为物体的最大半径和最大权重值;
步骤3)用B+树方法将步骤1)和步骤2)中得到的所有物体对应的一维键值和附加参数索引在内存中;其中B+树方法的索引关键值是物体对应的一维键值;此外在每个B+树节点中有两个存储空间,分别用来存储物体的两个附加参数;
步骤4)中将资源分配问题转化为一维空间中的键值区间需通过两个步骤:a)将资源分配问题转化为区域查询问题;b)将步骤a)中得到的区域查询问题通过降维方法转化为一个一维的键值区间;
步骤5)中为了采用“最佳优先”的方法访问步骤3)中得到的B+树,需要在内存中建立一个最大堆结构;其中最大堆的每个条目包含一个B+树节点,以及该B+树节点在最大堆中的排序值。
2.根据权利要求1所述的一种高维环境中资源分配问题的查询方法,其特征在于:步骤2)将步骤1)中得到的每一个物体所对应的高维点通过降维方法转化成一个一维键值;其中的降维方法为P+树方法。
3.根据权利要求1所述的一种高维环境中资源分配问题的查询方法,其特征在于:步骤6)中通过分配标记值和步骤5)中最大堆的顶端条目中的排序值的大小关系的比较,来控制步骤5)中B+树的访问的终止,从而查询结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110437148 CN102609440B (zh) | 2011-12-23 | 2011-12-23 | 一种高维环境中资源分配问题的查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110437148 CN102609440B (zh) | 2011-12-23 | 2011-12-23 | 一种高维环境中资源分配问题的查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102609440A CN102609440A (zh) | 2012-07-25 |
CN102609440B true CN102609440B (zh) | 2013-10-23 |
Family
ID=46526815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110437148 Expired - Fee Related CN102609440B (zh) | 2011-12-23 | 2011-12-23 | 一种高维环境中资源分配问题的查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102609440B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1838124A (zh) * | 2006-02-20 | 2006-09-27 | 南京联创科技股份有限公司 | 海量数据内存数据库中快速定位的网格+t树索引的方法 |
CN101266607A (zh) * | 2008-05-09 | 2008-09-17 | 东北大学 | 基于最大间隙空间映射的高维数据索引方法 |
CN101299213A (zh) * | 2008-06-17 | 2008-11-05 | 中国地质大学(武汉) | N维聚类排序记录树空间索引方法 |
CN102214176A (zh) * | 2010-04-02 | 2011-10-12 | 中国人民解放军国防科学技术大学 | 超大维表的切分与表连接方法 |
-
2011
- 2011-12-23 CN CN 201110437148 patent/CN102609440B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1838124A (zh) * | 2006-02-20 | 2006-09-27 | 南京联创科技股份有限公司 | 海量数据内存数据库中快速定位的网格+t树索引的方法 |
CN101266607A (zh) * | 2008-05-09 | 2008-09-17 | 东北大学 | 基于最大间隙空间映射的高维数据索引方法 |
CN101299213A (zh) * | 2008-06-17 | 2008-11-05 | 中国地质大学(武汉) | N维聚类排序记录树空间索引方法 |
CN102214176A (zh) * | 2010-04-02 | 2011-10-12 | 中国人民解放军国防科学技术大学 | 超大维表的切分与表连接方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102609440A (zh) | 2012-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11468103B2 (en) | Relational modeler and renderer for non-relational data | |
CN107463632B (zh) | 一种分布式NewSQL数据库系统和数据查询方法 | |
Holzschuher et al. | Performance of graph query languages: comparison of cypher, gremlin and native access in neo4j | |
CN101408877B (zh) | 树节点加载系统及其方法 | |
US20110022582A1 (en) | Indexing of Partitioned External Data Sources | |
CN106407303A (zh) | 数据存储、查询方法及装置 | |
US9852180B2 (en) | Systems and methods of accessing distributed data | |
CN105677904B (zh) | 基于分布式文件系统的小文件存储方法及装置 | |
JP2002351873A (ja) | メタデータ管理システムおよび検索方法 | |
CN107784108A (zh) | 一种数据存储管理方法、装置及设备 | |
CN106326309A (zh) | 一种数据查询方法和装置 | |
KR100529661B1 (ko) | 오브젝트 통합 관리 시스템 | |
CN108509437A (zh) | 一种ElasticSearch查询加速方法 | |
CN106776783A (zh) | 非结构化数据存储管理方法、服务器和系统 | |
CN106095698A (zh) | 面向对象的缓存写入、读取方法及装置 | |
CN106471501A (zh) | 数据查询的方法、数据对象的存储方法和数据系统 | |
CN106484694B (zh) | 基于分布式数据库的全文搜索方法及系统 | |
CN107423037A (zh) | 应用程序接口定位方法及设备 | |
CN112417225A (zh) | 一种多源异构数据的联合查询方法与系统 | |
CN115237937A (zh) | 一种基于星际文件系统的分布式协同查询处理系统 | |
CN104391947B (zh) | 海量gis数据实时处理方法及系统 | |
KR20180077830A (ko) | 비공유 아키텍처 기반의 분산 스트림 처리 엔진에서 관계형 질의를 처리하는 방법, 이를 수행하기 위한 기록 매체 및 장치 | |
CN107276833A (zh) | 一种节点信息管理方法及装置 | |
CN109101595A (zh) | 一种信息查询方法、装置、设备及计算机可读存储介质 | |
CN107239568A (zh) | 分布式索引实现方法及装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131023 Termination date: 20211223 |