CN101467149A - 具有可变压缩的自适应索引 - Google Patents
具有可变压缩的自适应索引 Download PDFInfo
- Publication number
- CN101467149A CN101467149A CNA2007800220438A CN200780022043A CN101467149A CN 101467149 A CN101467149 A CN 101467149A CN A2007800220438 A CNA2007800220438 A CN A2007800220438A CN 200780022043 A CN200780022043 A CN 200780022043A CN 101467149 A CN101467149 A CN 101467149A
- Authority
- CN
- China
- Prior art keywords
- search
- key
- computer
- tree
- indication
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明建立在特里结构概念上以构造一种用于使用串搜索密钥与其它搜索标准的灵活合成对对象进行紧凑编索引和高效多维搜索的系统,以促进经压缩对象存储器和搜索树的快速原型设计,所述经压缩对象存储器和搜索树包括有多种搜索方法。
Description
优先权声明
本申请案主张以下共同待决申请案的优先权,所述共同待决申请案的全文并入本文中:塔西亚·库兹涅佐夫等人在2006年6月30日申请的题为“具有可变压缩的自适应索引(ADAPTIVE INDEX WITH VARIABLE COMPRESSION)”的第60/806,366号美国临时申请案(代理人案号TELA-07780US0);塔西亚·库兹涅佐夫在2006年6月30日申请的题为“对具有可变压缩的自适应索引的最近搜索(NEAREST SEARCH ONADAPTIVE INDEX WITH VARIABLE COMPRESSION)”的第60/806,367号美国临时申请案(代理人案号TELA-07781US0);塔西亚·库兹涅佐夫等人在2006年6月28日申请的题为“具有可变压缩的自适应索引(ADAPTIVE INDEX WITH VARIABLECOMPRESSION)”的第11/770,058号美国实用新型申请案(代理人案号TELA-07780US1);以及塔西亚·库兹涅佐夫在2007年6月28日申请的题为“对具有可变压缩的自适应索引的最近搜索(NEAREST SEARCH ON ADAPTIVE INDEX WITHVARIABLE COMPRESSION)”的第11/770,426号美国实用新型申请案(代理人案号TELA-07781US1)。
技术领域
无
背景技术
许多应用程序可使用所存储的地理数据来为用户提供地图服务。可针对移动或固定系统而实施的应用程序可包含地图渲染、空间对象搜索、地理编码或地理查找、路径搜索、导向和定位。对象搜索,特别是通过串密钥进行的对象搜索,可用于这些应用程序。
发明内容
无
附图说明
图1展示本发明一个实施例的基于地图的系统。
图2A到图2B展示具有和不具有编索引的系统。
图3A到图3B展示短叶节点和长叶节点。
图4A到图4B展示一个实施例的树系统。
图5是一个实施例的方法的流程图。
图6A到图6C说明图5的方法的实施例的操作。
图7说明节点含有其它搜索标准的指示(例如排除或包含信息)的实例。
图8说明使用具有多个树的单个对象存储器。
图9A到图9B说明使用API来为树选择密钥结构。
具体实施方式
本发明的一个实施例是一种计算机实施的方法,其用于自适应地构造用于通过对象的串密钥来搜索所述对象的搜索系统。所述搜索系统可包含驻存在对象存储器108中的对象,以及可使用所述对象以所述对象的串密钥结构而构造的树102。
树102可基于特里结构树(trie tree)或前缀树,特里结构树或前缀树是有序树型数据结构,其用于对对象编索引,其中密钥为适应特定搜索方法的串。在给定部分串密钥输入的情况下,特里结构促进了对随后字符的选择的检索。在唐那德·克努特(DonaldKnuth)的《计算机编程技术》,第3卷,存储与搜索,第3版,阿狄森-卫斯理(Addison-Wesley),1997,ISBN 0-201-89685-0,第6.3章节:数字搜索,第492页到第512页中给出对特里结构的描述。
可重构特里结构,以通过操纵密钥前缀并使节点和叶的数口减到最小的一系列步骤,来使其可适合于限制性存储要求。在一个实施例中,树102的大多数叶节点可与对象存储器中的多个对象相关联,这可意味着在从对象存储器获得一组对象之前,只在树中搜索到完整密钥的一部分。举例来说,树102可以是完整特里结构的可变比例压缩。
可基于给定压缩标准来使树存储减到最小。可使用能适用的搜索方法来经由搜索树和所述对象存储器来检索对象。所述搜索可适合于由压缩导致的树结构以及给定用户接口。
在一个实施例中,对象存储器108模拟真实世界中的可使用串密钥来搜索的空间对象。真实世界空间对象可包含城市、城市中的街道、十字路口、关注点(POI)或可与串密钥相关联的另一类型的对象。
在一个实施例中,对象可存储在特里结构的叶中。在另一实施例中,为了适应对同一组对象的多种搜索方法,可针对给定类型的对象构造单独的对象存储器,作为固定长度或可变长度存储装置。用于可变长度对象的存储装置可构造有固定长度对象偏移目录。此对象存储器可适合对象的搜索和卷动。
对象存储器条目可由每一对象的唯一密钥决定,其中库中对象的次序可由对象的分类密钥决定。对象存储器可区分搜索密钥的成分。
在一个实施例中,一旦设立了对象存储器,就可构造搜索树102,使得可使用对象的搜索密钥在树叶中找到对库中每一对象的参考。
树的搜索密钥结构可指示空间对象,例如街道、街道十字路口、关注点(POI)或对象的其它元素或属性。在一个实施例中,用于给定类的对象的密钥的成分连接起来的次序指示用于此类对象的特定搜索方法。密钥成分的连接次序可以是简单的机制,借此系统设计者可用在用于给定类的对象的大量串密钥定义中所包括的各种用户接口来快速地进行原型设计和实验。
可在应用程序中实施和使用API,以帮助构造搜索密钥,且因此构造搜索方法,以允许设计者产生用于搜索对象的多种用户接口,并用所述用户接口来进行实验。在一个实施例中,可使用此API来建立GUI,以为对给定类的对象的搜索方法定义和选择密钥结构,借此对对象存储器和树强加适当的次序。API可给予系统设计者通常与RDBMS技术相关联的容易改变搜索系统的接口的灵活性,而不依赖于关系数据库管理系统,关系数据库管理系统可能具有对一些环境来说不切实际的存储要求。
因此,通过选择串密钥成分以及密钥结构的合成的成分次序,设计者可评估多种用户接口以及潜在的搜索方法。
图9A和图9B展示使用API 902构造树和对象存储器。设计者可从数据904选择密钥成分和次序。举例来说,可将数据904的数据字段用作密钥成分。可使用密钥结构和所述数据来构造可经由用户接口访问的树和对象存储器,所述用户接口实施密钥结构中所表达的搜索方法。
图9A展示密钥结构由城市/街道给出的实例。这意味着用户接口906适合于以此次序接收数据。图9B展示当密钥结构由街道/城市给出,其中用户接口908适合于以此次序接收数据时的实例。
对于给定用户接口轮廓和选定压缩标准,可针对搜索树大小、对象存储器大小、存储器要求以及最佳和最差情况搜索性能产生评分。这可给予系统设计者通过比较不同实施方案的评分而平衡各种要求的工具。
举例来说,压缩的量可影响系统的性能。较高等级的压缩可意味着需要从对象存储器获得更多对象,并对其进行分析。较低等级的压缩可导致对树的较大存储要求。调整树构造且可使叶节点所参考的对象的数目增到最大的可变压缩标准可经调谐以合理地平衡最终应用的性能、存储器和存储使用。在一个实施例中,压缩标准调整树的任一分支下的对象的最小数目。
再次参看图1,由于可变压缩的缘故,树可包含叶节点,所述叶节点参考对象存储器108中的多个对象。叶节点中的对象或对象参考可具有不同的密钥值,其中共用前缀与叶的父节点的密钥值匹配。这可意味着更复杂的搜索算法,与对原始未经压缩的特里结构的直接搜索形成对比,所述搜索算法以接下来对对象存储器的对象参考增大了对树的局部搜索,以完成所述搜索。
可将叶节点区分为短叶节点或长叶节点。短叶参考连续列表中的第一对象,以及所参考的对象的数目。长叶可通过存储参考的计数以及对列表中每一对象的直接参考来参考任意对象列表。搜索可包含基于搜索密钥而找到叶节点110,以及在所述叶节点所参考的对象之中定位一组匹配。
[0029]
在一个实施例中,用户逐字符地输入搜索串,且应用程序搜索树102,以指示一组有效的随后输入字符,直到搜索串完整或用户请求与部分密钥匹配的一组对象为止。所述应用程序可提供指示有效的随后字符的显示,或以其它方式输出所述有效的随后字符。在另一实施例中,用户输入整个或部分搜索串。支持此类搜索的树可在每一树节点处存储密钥前缀串,其中最短的密钥前缀串在根部,且完整的搜索密钥在叶部。在本发明的一个实施例中,通过减少节点的密钥前缀来压缩搜索树,以仅存储其自身的父前缀的扩展,使得通过以一节点的所存储的密钥前缀连接从根部到所述节点的路径上的所有密钥前缀串,来获得此节点的实际密钥前缀。在自适应索引的一个实施例中,通过使具有单个子节点的节点坍缩(collapsing)来进一步压缩搜索树。
本发明的一个实施例是一种系统,所述系统包括:应用程序104,其具有地图显示器106;以及搜索系统,其包含树102和对象存储器108。树102可构造有与密钥结构相关联的节点。可通过减少每一节点的前缀来压缩树102。当既定经由单个搜索方法访问一类对象时,树102可包含存储对象的叶节点。当既定经由一个以上搜索方法访问所述类对象时,树102可包含含有对对象存储器中的对象的参考的叶节点。由于可变压缩的缘故,树102可包含参考对象存储器108中的多个对象的叶节点。所述搜索可包含:基于搜索密钥进行搜索以找到叶节点110;以及检查由所述叶节点指示的对象。
系统100可具有用户接口110,用户接口110可接收来自用户的输入,且产生输出,一种示范性输出可以是展示有效的随后字符的随后字符指示。如下文所论述,可从对树102和/或对象存储器108的搜索中确定一组可用的随后字符。
图2A和图2B展示短叶节点的实例,所述短叶节点含有指向第一对象的指针(ID),以及可用最小数目的读取操作从对象存储器检索到的若干对象。图2A展示以下实例:对象存储在具有固定大小条目的对象存储器202中,其需要单次读取(假定存在足够的存储器)。图2B展示以下实例:对象存储在具有可变大小条目的对象存储器204中。在所述情况下,可使用具有固定大小偏移的偏移阵列206来将读取操作的数目限制为2(假定存在足够的存储器)。
在上述两种情况下,可获得对应于计数数目的对象数据。举例来说,如果计数为50,那么可从对象存储器获得随后50个对象,并适当地对其进行分析。短叶节点降低了对树的存储要求。这对在资源受限系统上实施的移动地理应用程序来说可能是有价值的。
在一个实施例中,如图3A中所示,相继对象可存储在短叶中。所述短叶节点可含有ID和计数。对象存储器中对象的次序以密钥结构所指示的次序排列。
图3B展示长叶。可使用长叶来指向具有用于每一对象的个别指针的非相继对象。
图8展示具有指向同一对象存储器806中的对象的两个树802和804的实例。所述两个树可与用户接口中的两个不同输入元素相关联。通常,搜索密钥结构遵循库806中的对象的次序的树可使用短叶节点来指向相继对象。其它树可使用长叶节点。长叶增加了存储要求。对长叶对象的读取操作的数目与长叶中的对象的数目成比例。
图4A说明在一个实施例中如何获得所述组“随后可用字符”的实例。如果用户具有输入“PIN”,那么可通过检查节点402的子节点的前缀来获得随后可用字符。
图4B展示其中叶节点404参考对象存储器中的多个相继对象的系统。在此实例中,从对象存储器获得对应于节点404的对象的名称,并对其进行分析以获得“随后字符”信息。在图4B的实例中,与叶节点404相关联的对象的名称PINE RIDGE、PINE VALLEY、PINEBROOK、PINECONE、PINNACLE、PINTAIL、PINTO全部以用户输入“PIN”开头。可对这些名称进行分析,以获得有效的随后字符{“、’E’、’N’、’T’},其可输出给用户。可以类似方式,对正被获得且接着经处理以供显示的与叶节点相关联的对象数据群组实施卷动和其它功能。
在一个实施例中,叶节点无需具有相关联的密钥信息。这可意味着叶节点将与其父节点具有相同的密钥前缀。这可允许对象或对象参考容易地组合成叶节点,以实现最高效的紧缩。
在一个实施例中,可访问叶节点所参考的对象,接着对其进行分析,以确定随后字符,且实施卷动。树可在树的不同层级处具有叶节点。
本发明的一个实施例是一种计算机实施的方法,所述方法构造包括遵循密钥结构的密钥的列表的树,构造完整的树结构,且接着通过组合节点使得大多数叶节点与多个对象相关联来修整所述完整的树结构。
压缩技术可包含基于给定标准而使对对象的叶节点参考增到最大,以使每一节点所要求的存储额外开销减到最小。
图5展示一个实施例的示范性流程图。在步骤502中,确定密钥结构。街道名称的示范性密钥结构可以是“街道名称?城市名称”,其中“′?′”是分隔符。举例来说,“肯辛顿?旧金山”。十字路口的示范性密钥结构可以是“街道1名称?街道2名称?城市名称”。可在对象存储器中复制对象,使得可使用任一次序来搜索街道十字路口。举例来说,“奥克?埃姆?萨克拉门托”和“埃姆?奥克?萨克拉门托”可表示通往单个条目或通往树对象存储器的两个条目的两个不同树搜索路径,所述两个条目每一者用其属性组参考同一真实十字路口。
在步骤504中,可基于密钥结构确定对象的密钥的列表。密钥结构还可确定对象存储器中对象的次序。
在步骤506中,可基于密钥列表创建完整的节点结构。如步骤508、510和512中所示,此完整节点结构可经压缩以通过减少节点和叶的数目来缩减树的大小。图6A到图6C中也展示示范性步骤。
在图6A中,具有单个子节点602的节点604与子节点602组合,以形成节点606。节点606与搜索串中的多个字符相关联。
图6B展示压缩步骤的实例。在图6B的实例中,检查每一孙节点,看其是否可与另一孙节点组合。在一个实例中,如果两个孙节点都具有小于给定数目的相关联对象(例如,在一个实施方案中是16个),那么对树进行修整,以适应此标准。在图6B的实例中,节点610、612和614组合在一起以形成节点616。
图6C展示将节点620分成节点622和624以使每一叶节点中相关联对象的数目保持在最大大小以下(例如,在一个实施例中是63)的情况。
以上实例将步骤展示为各不相同。在另一实施例中,可将压缩步骤组合成产生相同结果的单个步骤。
在一个实施例中,树节点可存储对其它搜索标准的指示。对树的搜索或其它操作可使用所述指示来确定节点及其后代节点或相关联对象是否需要被进一步分析。在一个实施例中,可使用所述指示来实施n维搜索。
在一个实施例中,可通过例如类别或城市等对象属性来过滤所述搜索。所述指示可包含对未在节点的后代中发现的对象类别的指示,和/或对包含在其后代的至少一者中的对象类别的指示。类似地,如果指示包含城市id,那么可通过城市来过滤所述搜索。在一个实施例中,用户可通过由指定对象类别提炼,且进一步由所处城市的名称提炼的名称来搜索关注点。
举例来说,如果关注点类别的存在或缺乏被指示在树节点上,那么对关注点的字符搜索可从搜索路径中去除排除某一类别(例如,快餐)的节点。
在一个实施例中,节点可存储类别排除或包含信息,以简化并加速对特定类别的搜索。排除信息可指示所述类别中没有与所述节点相关联的对象。包含信息可指示所述类别中存在与所述节点相关联的对象。
图7展示一个实例。在此实例中,如果搜索是针对餐馆的,那么对树片段的搜索可在节点702处停止,且如果搜索是针对加油站的,那么对树片段的搜索可在节点704处停止。可在创建节点树时实施对其它搜索标准(例如排除信息)的指示。
图7的树可用于多维搜索。举例来说,可针对搜索的第一维数检查密钥信息,且针对搜索的额外维数检查搜索标准信息。
在一个实例中,用户接口可包含勾选框或类似物,以接收用户针对树上所指示的额外搜索标准的输入,例如对象类别。所述搜索可使用类别信息来确定要在搜索中审查哪些节点。在图7的实例中,如果用户正寻找加油站,且已输入“P”,那么“I”将不会被展示为下一个可用字符,因为节点704排除了加油站。
所述搜索标准可以是与某些节点相关联的代码,以指示未在节点的后代或类似物中找到所述类别。对象存储器中的对象还可具有相关联的类别信息,因此二维搜索可涉及树的节点和对象存储器中的对象两者。
可使用用于选择密钥结构的API来将额外搜索标准添加到所述树,以实现多维搜索。
如第60/806,367号共同待决美国专利申请案“对具有可变压缩的自适应索引的最近搜索(NEAREST SEARCH ON ADAPTIVE INDEX WITH VARIABLE COMPRESSION)”(对应于代理人案号TELA-07781US0)中所描述,可使用搜索系统来对特定位置进行最近搜索。
如计算机领域的技术人员将明白,可使用根据本发明的教示而编程的专用数字计算机或微处理器的常规通用目的来实施一个实施例。如软件领域的技术人员将明白,熟练的编程人员可容易基于本发明的教示而准备适当的软件编码。如所属领域的技术人员将容易明白,还可通过准备集成电路或通过互连常规组件电路的适当网络来实施本发明。
一个实施例包含一种计算机程序产品,其为上面/里面存储有指令的存储媒体,所述指令可用于对计算机进行编程,以执行本文中存在的特征中的任何一者。所述存储媒体可包含(但不限于)任何类型的盘,包含软盘、光盘、DVD、CD-ROM、微驱动器以及磁-光盘、ROM、RAM、EPROM、EEPROM、DRAM、适合于对存储在计算机可读媒体的任何一者上的指令和/或数据进行存储的媒体或装置的快闪存储器,本发明包含用于控制通用/专用计算机或微处理器的硬件,且用于使计算机或微处理器能够利用本发明的成果与人类用户或其它机构进行交互的软件。此软件可包含(但不限于)装置驱动器、操作系统、执行环境/容器以及用户应用程序。
已出于说明和描述的目的提供了对本发明优选实施例的前述描述内容。不希望所述描述内容是详尽的,或将本发明限于所揭示的精确形式。相关领域的一般技术人员将明白许多修改和变化。举例来说,可以替代次序执行所揭示的本发明实施例中所执行的步骤,可省略某些步骤,且可添加额外步骤。选择并描述所述实施例旨在最好地阐释本发明的原理及其实际应用,从而使所属领域的其他技术人员能够理解本发明的各个实施例,且作出适于所预期的特定用途的各种修改。希望本发明的范围由权利要求书及其等效物界定。
Claims (67)
1.一种计算机实施的方法,其包括:
搜索树,所述树构造有与密钥相关联的节点,根据给定压缩标准对所述树进行修整,所述树包含将多个对象存储在对象存储器中或参考所述对象存储器中的多个对象的叶节点,所述多个对象具有不同的密钥值,所述搜索包含基于搜索密钥进行搜索以找到叶节点;其中所述搜索进一步包括检查所述叶节点所指示的对象。
2.根据权利要求1所述的计算机实施的方法,其中所述叶节点与和其父节点相同的密钥前缀相关联。
3.根据权利要求1所述的计算机实施的方法,其中节点存储对其它搜索标准的指示。
4.根据权利要求3所述的计算机实施的方法,其中所述对其它搜索标准的指示包含对未在所述节点的后代中找到的对象属性的指示。
5.根据权利要求3所述的计算机实施的方法,其中所述对其它搜索标准的指示包含对包含在所述节点的至少一个后代中的对象属性的指示。
6.根据权利要求1所述的计算机实施的方法,其中使用API来为搜索系统选择密钥结构,且响应于对所述密钥结构的所述选择,使用对象的密钥来构造所述对象存储器和树。
7.根据权利要求1所述的计算机实施的方法,其中用户逐字符地将密钥输入到应用程序,所述应用程序搜索所述树,以指示有效的随后输入字符。
8.根据权利要求7所述的计算机实施的方法,其中所述应用程序提供指示所述有效的随后字符的输出。
9.根据权利要求1所述的计算机实施的方法,其中所述密钥结构指示地理位置或对象的名称。
10.根据权利要求1所述的计算机实施的方法,其中所述密钥结构指示州和城市。
11.根据权利要求1所述的计算机实施的方法,其中所述密钥结构指示街道。
12.根据权利要求1所述的计算机实施的方法,其中所述密钥结构指示街道十字路口。
13.根据权利要求1所述的计算机实施的方法,其中所述密钥结构指示关注点。
14.根据权利要求1所述的计算机实施的方法,其中所述密钥结构指示坐标。
15.根据权利要求1所述的计算机实施的方法,其中所述密钥结构指示链接到位置的对象。
16.根据权利要求1所述的计算机实施的方法,其中所述叶节点指示具有从所述叶的父叶继承过来的相同前缀的多个对象。
17.根据权利要求1所述的计算机实施的方法,其中针对对象名称进行所述搜索。
18.根据权利要求1所述的计算机实施的方法,其中针对地理编码、地理查找、反向地理编码和关注点来进行所述搜索。
19.一种系统,其包括:
应用程序;以及
搜索系统,其用以为所述应用程序搜索树,所述树构造有与密钥相关联的节点,所述树包含与对象存储器中的多个对象相关联的叶节点,所述多个对象具有不同的密钥值,所述搜索包含基于搜索密钥进行搜索,以找到叶节点;其中所述搜索进一步包括检查所述叶节点所指示的对象。
20.根据权利要求19所述的系统,其中节点存储对其它搜索标准的指示。
21.根据权利要求20所述的系统,其中所述对其它搜索标准的指示包含对未在所述节点的后代中找到的对象属性的指示。
22.根据权利要求19所述的系统,其中所搜索的所述对象是非空间对象。
23.根据权利要求20所述的系统,其中所述对其它搜索标准的指示包含对包含在所述节点的至少一个后代中的对象属性的指示。
24.根据权利要求19所述的系统,其中所搜索的所述对象是空间对象。
25.根据权利要求19所述的系统,其中使用API来为所述搜索系统选择密钥结构,且响应于对所述密钥结构的所述选择,使用对象的密钥来构造所述对象存储器和树。
26.根据权利要求19所述的系统,其中用户将数据输入到应用程序,所述应用程序搜索所述树以指示有效的随后输入字符。
27.根据权利要求25所述的系统,其中所述应用程序提供指示所述有效的随后字符的显示。
28.根据权利要求19所述的系统,其中所述密钥的一部分指示州。
29.根据权利要求19所述的系统,其中所述密钥的一部分指示城市。
30.根据权利要求19所述的系统,其中所述密钥的一部分指示街道。
31.根据权利要求19所述的系统,其中所述密钥的一部分指示街道十字路口。
32.根据权利要求19所述的基于地图的系统,其中所述密钥结构指示关注点。
33.根据权利要求19所述的基于地图的系统,其中所述密钥结构指示坐标。
34.根据权利要求19所述的基于地图的系统,其中所述密钥结构指示链接到空间对象的对象。
35.根据权利要求19所述的基于地图的系统,其中所述叶节点指示具有相同前缀的多个对象。
36.根据权利要求19所述的基于地图的系统,其中针对地理编码进行所述搜索。
37.根据权利要求19所述的基于地图的系统,其中针对地理查找进行所述搜索。
38.根据权利要求19所述的基于地图的系统,其中针对反向地理编码进行所述搜索。
39.根据权利要求19所述的基于地图的系统,其中进行所述搜索以定位关注点。
40.一种计算机实施的方法,其包括:
搜索树,以确定可用的随后字符,所述树构造有与密钥相关联的节点,所述树包含与对象存储器中的多个对象相关联的叶节点,所述多个对象具有不同的密钥值,其中所述用以确定可用的随后字符的搜索包含从所述树且/或从所述对象存储器中的对象获得可用的随后字符信息。
41.一种计算机实施的构造树结构的方法,其包括:
接收具有遵循密钥结构的密钥的对象的列表;
构造完整的树结构;以及
组合节点,使得大多数叶节点与多个对象相关联。
42.根据权利要求41所述的计算机实施的方法,其中节点存储对其它搜索标准的指示。
43.根据权利要求42所述的计算机实施的方法,其中所述对其它搜索标准的指示包含对未在所述节点的后代中找到的对象属性的指示。
44.根据权利要求42所述的计算机实施的方法,其中所述对其它搜索标准的指示包含对包含在所述节点的至少一个后代中的对象属性的指示。
45.根据权利要求42所述的计算机实施的方法,其中使用API来为搜索系统选择密钥结构,且响应于对所述密钥结构的所述选择,使用对象的密钥来构造所述对象存储器和树。
46.根据权利要求41所述的计算机实施的方法,其中根据压缩标准来修整所述树的高度。
47.根据权利要求41所述的计算机实施的方法,其中所述组合步骤包含组合叶节点。
48.根据权利要求41所述的计算机实施的方法,其中连续地存储短叶节点所参考的对象。
49.根据权利要求41所述的计算机实施的方法,其中长叶节点所参考的对象指向无序对象。
50.一种计算机实施的方法,其包括:
搜索树的节点,所述树节点指示密钥信息,至少一些节点指示额外搜索标准信息,所述搜索是多维的,使得针对所述搜索的第一维数检查所述密钥信息,且针对所述搜索的额外维数检查所述搜索标准信息。
51.根据权利要求50所述的系统,其中在所述搜索的所述第一维数中将密钥值与用户输入进行比较。
52.根据权利要求50所述的系统,其中所述经修整的树包含将多个对象存储在对象存储器中或参考所述对象存储器中的多个对象的叶节点。
53.根据权利要求50所述的系统,其中所述搜索标准指示未在所述节点的后代中找到的对象属性。
54.根据权利要求50所述的系统,其中所述搜索标准指示包含在所述节点的后代中的对象属性。
55.一种计算机实施的系统,其包括:
a)串搜索密钥成分的针对一类对象的定义,所述串搜索密钥成分可经操纵以适合大量用户接口;
b)对象存储器,其区分搜索密钥的成分;
c)由所述成分构成的搜索密钥结构的合成,用以得出给定用户接口;
d)针对给定搜索密钥定义而组成的可适应搜索树,其中节点与搜索密钥结构相关联,所述叶节点将对象存储在对象存储器中或参考对象存储器中的对象,且基于给定压缩标准而使所述树存储减到最小,其中使用可适应搜索方法经由所述搜索树和所述对象存储器来定位匹配对象,所述搜索适合于由压缩产生的所述树结构以及给定用户接口。
56.根据权利要求55所述的计算机实施的系统,其中从所述树检索匹配对象是基于部分或完整搜索密钥的输入。
57.根据权利要求55所述的计算机实施的系统,其中通过选择完整的一组或一子组初级搜索密钥成分来界定搜索密钥。
58.根据权利要求55所述的计算机实施的系统,其中通过对所选定的初级搜索密钥成分强加某一次序来界定搜索密钥。
59.根据权利要求55所述的计算机实施的系统,其中对象存储器次序由所述初级搜索密钥强加。
60.根据权利要求55所述的计算机实施的系统,其中各自具有其自身的搜索密钥结构的一个或一个以上搜索树可参考同一对象存储器。
61.根据权利要求55所述的计算机实施的系统,其中针对一类对象界定唯一密钥结构。
62.根据权利要求55所述的计算机实施的系统,其中可从经压缩的树和/或对象存储器检索随后的可用输入字符。
63.根据权利要求55所述的计算机实施的系统,其中对于给定用户接口轮廓和选定压缩标准,针对搜索树大小以及最佳、平均和最差情况搜索性能产生评分,从而给予系统设计者通过比较不同实施方案的评分来平衡各种要求的工具。
64.根据权利要求55所述的计算机实施的系统,其通过视情况在每一树节点处存储指示所述节点的后代中存在与给定标准匹配的至少一个对象的额外搜索标准来适应多维搜索。
65.根据权利要求55所述的计算机实施的系统,其中所述压缩包含组合和分割节点与分支。
66.根据权利要求65所述的计算机实施的系统,其中在单个步骤中进行所述组合和分割。
67.一种用于适应多种用户接口感观轮廓的计算机实施的系统,其包括:
a)串搜索密钥成分的针对一类对象的定义,所述串搜索密钥成分可经操纵以适合大量用户接口;
b)对象存储器,其区分搜索密钥的成分;
c)由所述成分构成的搜索密钥结构的合成,借此密钥成分的操纵实施不同的用户接口;
d)API,用以界定串密钥结构,借此设计者可选择密钥的成分以及密钥中成分的次序,其导致搜索的不同用户接口;以及
e)自适应经压缩搜索树,用以适合对可由所述对象存储器中的搜索密钥成分实施的大量用户接口中的一者的对象搜索,其中节点与搜索密钥结构相关联,叶将对象存储在对象存储器中或参考所述对象存储器中的对象。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US80636606P | 2006-06-30 | 2006-06-30 | |
US60/806,366 | 2006-06-30 | ||
US60/806,367 | 2006-06-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101467149A true CN101467149A (zh) | 2009-06-24 |
Family
ID=40806661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007800220438A Pending CN101467149A (zh) | 2006-06-30 | 2007-06-28 | 具有可变压缩的自适应索引 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101467149A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103827867A (zh) * | 2011-09-30 | 2014-05-28 | 哈曼贝克自动系统股份有限公司 | 生成搜索树的方法和导航装置 |
CN106021356A (zh) * | 2015-05-11 | 2016-10-12 | 上海兆芯集成电路有限公司 | 依据输入区块类型使用动态散列算法的硬件数据压缩器 |
CN112214424A (zh) * | 2015-01-20 | 2021-01-12 | 乌尔特拉塔有限责任公司 | 对象存储器结构、处理节点、存储器对象存储和管理方法 |
CN112740197A (zh) * | 2018-09-19 | 2021-04-30 | 森塞尔公司 | 用于基于特里数据结构的数据库的高效存储器内多版本并发控制 |
-
2007
- 2007-06-28 CN CNA2007800220438A patent/CN101467149A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103827867A (zh) * | 2011-09-30 | 2014-05-28 | 哈曼贝克自动系统股份有限公司 | 生成搜索树的方法和导航装置 |
CN103827867B (zh) * | 2011-09-30 | 2019-02-05 | 哈曼贝克自动系统股份有限公司 | 生成搜索树的方法和导航装置 |
CN112214424A (zh) * | 2015-01-20 | 2021-01-12 | 乌尔特拉塔有限责任公司 | 对象存储器结构、处理节点、存储器对象存储和管理方法 |
CN112214424B (zh) * | 2015-01-20 | 2024-04-05 | 乌尔特拉塔有限责任公司 | 对象存储器结构、处理节点、存储器对象存储和管理方法 |
CN106021356A (zh) * | 2015-05-11 | 2016-10-12 | 上海兆芯集成电路有限公司 | 依据输入区块类型使用动态散列算法的硬件数据压缩器 |
CN106021356B (zh) * | 2015-05-11 | 2019-07-16 | 上海兆芯集成电路有限公司 | 依据输入区块类型使用动态散列算法的硬件数据压缩器 |
CN112740197A (zh) * | 2018-09-19 | 2021-04-30 | 森塞尔公司 | 用于基于特里数据结构的数据库的高效存储器内多版本并发控制 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20080016066A1 (en) | Adaptive index with variable compression | |
Rocha-Junior et al. | Top-k spatial keyword queries on road networks | |
JP4878178B2 (ja) | データ処理方法および装置並びにその処理プログラム | |
US20050278378A1 (en) | Systems and methods of geographical text indexing | |
US20130262485A1 (en) | High Efficiency Prefix Search Algorithm Supporting Interactive, Fuzzy Search on Geographical Structured Data | |
CN106503223B (zh) | 一种结合位置和关键词信息的在线房源搜索方法及装置 | |
US8700661B2 (en) | Full text search using R-trees | |
CN113535788B (zh) | 一种面向海洋环境数据的检索方法、系统、设备及介质 | |
CN104731945A (zh) | 一种基于HBase的全文检索方法及装置 | |
CN107766433A (zh) | 一种基于Geo‑BTree的范围查询方法及装置 | |
CN101467149A (zh) | 具有可变压缩的自适应索引 | |
CN104484478B (zh) | 一种关联聚类数据瘦身方法及系统 | |
CN103500165B (zh) | 一种结合聚类和双key值的高维向量检索方法 | |
JP2010277329A (ja) | 近傍探索装置 | |
RU2433467C1 (ru) | Способ формирования структуры агрегированных данных и способ поиска данных посредством структуры агрегированных данных в системе управления базами данных | |
CN105740374A (zh) | 基于分布式内存的三维平台数据模糊查询方法 | |
US20170075989A1 (en) | Search method | |
US8745035B1 (en) | Multistage pipeline for feeding joined tables to a search system | |
WO2014061846A1 (ko) | 혼합 질의 처리를 위한 색인 생성 방법, 혼합 질의 처리 방법 및 색인 자료구조를 기록한 기록 매체 | |
KR101052220B1 (ko) | 검색어를 포함하는 스카이라인 질의 수행장치 및 방법 | |
WO2008005808A2 (en) | Adaptive index with variable compression | |
KR100645711B1 (ko) | 다수의 정보 블록으로 구분된 웹 페이지를 이용한 정보검색 서비스 제공 서버, 방법 및 시스템 | |
CN105808745A (zh) | 一种数据检索方法及设备 | |
Aung et al. | Modify compact R-tree dynamic index structure for myanmar GIS database | |
JP6411232B2 (ja) | サンプリング装置およびサンプリングプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1128788 Country of ref document: HK |
|
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090624 |
|
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1128788 Country of ref document: HK |