一种特征字符串识别方法及系统的制作方法

文档序号:6331979阅读:172来源:国知局
专利名称:一种特征字符串识别方法及系统的制作方法
技术领域
本发明涉及一种信息识别技术,尤其涉及一种特征字符串识别方法及系统。
背景技术
特征字符串(模式字符串)识别是信息识别中重要的核心技术之一,用于从目标字符串中发现模式字符串。当特征字符串条数较少内存能够容纳时;采用普通的字符串匹配算法可以达到特征字符串识别的目的;如果特征字符串比较多,采用字符串匹配算法将会遇到性能的瓶颈。特别是特征字符串条数很多,现有的计算机系统的内存无法容纳时,则需要把特征字符串存储到磁盘中。对于大规模特征字符串的识别,采用扫描特征串匹配的方式,将导致频繁的磁盘读取,性能低下。对于大规模特征字符串识别,现有的有效解决方案对特征字符串创建 B-Tree (多路搜索树)索引;把目标字符串,分割成若干子字符串,在Β-Tree中查找。 B-Tree是基于磁盘的外存索引技术。Β-Tree是多路平衡树,Β-Tree索引的性能由以下,几个因素决定DB-Tree的节点扇出系数。系数越高,算法的复杂度越低,有利于算法性能的提升。2)B-Tree的节点对应物理页面数。对应的物理页面数少,减少了磁盘访问时间。3)B-Tree的节点平均填充度。平均填充度越高,则Β-Tree的节点利用率高,有利于降低树的高度,从而有利于算法性能的提升。4)B-Tree的查找算法。查找算法决定了查找的算法复杂度。由于在磁盘中查找,需要频繁的读取磁盘中的数据;由于磁盘的物理特性,决定了读取磁盘非常耗时,因此降低读取磁盘的频率将显著提高查找的速度。现有的解决方案,使用B-Tree创建特征字符串索引有以下缺点1、由于特征字符串是变长的,对于每一个内点,需要若干个物理页面存放,需要多次读取物理页面才能加载一个完整的内点;2、节点存储数据冗余大;3、缓冲池使用最近最久未策略管理,页面的命中率低,影响了读取性能。

发明内容
本发明的目的在于,提供一种一种特征字符串识别方法及系统,识别效率高,降低读取磁盘的次数。为实现上述目的,根据本发明的一个方面,提供一种特征字符串识别方法,包括 A、将待识别特征字符串转换为二进制代码;B、读取B-Tree的节点;C、当该节点为内点时, 根据所述二进制代码在所述内点中进行二叉查找,确定所述待识别特征字符串对应的叶子节点的位置。其中,步骤C具体包括Cl、根据所述二进制代码在所述内点中进行二叉查找,获得第一位置;C2、根据所述二进制代码及所述第一位置定位所述待识别特征字符串对应的第二位置;C3、当所述第二位置的节点还是内点时,则循环上述步骤。上述步骤C3之后还包括当所述读取B-Tree的节点为叶子节点时,在所述叶子节点中做初始位置查找;当所述初始位置中的特征字符串与待识别特征字符串一致时,识别成功。其中,内点中存储有固定长度的编码数组,所述编码数组为对特征字符串转换成的二进制代码进行平衡二叉树排序,再对形成的平衡二叉树做中续遍历后形成的,所述编码数组包括所述平衡二叉树左侧叶子节点数及子节点公共前缀字符串长度。上述步骤Cl具体包括C11、设定初始化变量包括I,J,N;I = 0,J = 0,N = KeyCount ;其中I表示子节点偏移位置,J表示在二叉编码数组的偏移位置,N表示平衡二叉树叶子节点数,KeyCoimt表示节点内二叉树叶子节点数;C12、当N大于1,执行步骤C13, 当N小于等于1时,执行步骤C17 ;C13、获得特征字符串对应的二进制代码在!11_1皿?[刃处的值,该值用Bit表示;其中,m_lcmp[J]表示节点J对应的子树的叶子节点公共前缀;C14、 当所述二进制代码在m_lcmp[J]处的值为1时,执行步骤C15,否则执行步骤C16 ;C15、转入右侧子树,I = m_Leaf Count [J] ;N = m_Leaf Count [J] ;J = m_Leaf Count [J];其中 m_ LeafCount [J]表示第J个节点对应的子树左侧叶子节点数;执行步骤C12 ;C16、转入左侧子树,N = m_LeafCount [J] ;J = 1 ;执行步骤C12 ;C17、返回初始查找位置PTRi,其中PTRi 等于I,PTRi表示初始查找位置。上述步骤C2具体包括C201、加载IBlindPos位置对应的节点,其中IBlindPos 为初始位置,Node代表节点;C202、获得节点的下界KeyLowi ;C203、计算特征字符串与 KeyLowi对应的二进制序列的差异位置,该差异位置用DifT表示;C204、获得特征字符串对应二进制代码,在DifT位置处的值,该值用Bit表示;C205、设定初始化变量包括I, J, N5I = O, J = O, N = KeyCount ;其中,I表示子节点偏移位置,J表示在二叉编码数组的偏移位置,N表示平衡二叉树叶子节点数,KeyCount表示节点Node内二叉树叶子节点数;C206、iN> 1而且m_lcmp[J] < = Diff,执行步骤C207,否则,执行步骤C210,其中 m_lcmp[J]表示二叉树第J个子节点的叶子节点的公共前缀长度;C207、当IBlindPos不小于m_LeafCount [J],其中m_LeafCount [J]表示以二叉树第J个节点为根的左子树的叶子节点数,则执行步骤C208 ;否则转入步骤C209 ;C208、移动到右侧,IBlinkPos- = m_ LeafCount [J] ;I = m_LeafCount [J] ;N = m_LeafCount [J] ;J = m_LeafCount [J],以上这些运算的结果是转向当前节点右子树子树的,执行步骤C206 ;C209、移动到左侧,N = m_ LeafC0unt[J],J = 1执行步骤C206 ;C210、当特征字符串对应二进制代码在Diff位置处的值为O时,则返回当前节点Node的第I个子节点,否则返回第I+N个子节点。优选地,加载节点的具体操作包括根据当前节点的逻辑编号从一级缓冲池中查找所述节点对应的页面;如果一级缓冲池没有该页面,则从二级缓冲池中查找,当二级缓冲池中有该页面时,从二级缓冲池中加载该页面到一级缓冲池;当二级缓冲池中也没有该页面,则从磁盘中加载该页面到一级缓冲池;当一级缓冲池中未满时,将所述页面放入到一级缓冲池中;当一级缓冲池中已满时,减少所述页面的权值,当所述二级缓冲池未满时,选择权值最小的页面放入到二级缓冲池;当所述二级缓冲池已满时,释放二级缓冲池中的空间, 选择权值最小的页面放入到二级缓冲池;根据所述节点的高度计算页面权置,根据所述页面权值调度页面。采用二级缓存的方式从缓冲池中加载页面,提高了页面加载的命中率,减少了读取磁盘次数。根据所述节点的高度计算页面权置,根据所述页面权值调度页面。为实现上述目的,根据本发明的另一个方面,提供一种特征字符串识别系统,包括转换装置,用于将待识别特征字符串转换为二进制代码;读取装置,用于读取B-Tree的节点;查找装置,当该节点为内点时,根据所述二进制代码在所述内点中进行二叉查找,确定所述待识别特征字符串对应的叶子节点的位置。本发明的特征字符串识别方法及系统,由于每个内点中编码数组的长度固定,因此只需要一个固定大小物理页面进行存放。在特征字符串的识别过程中,只需要读取一个物理页面就可以加载一个完整的内点,减少数据冗余,降低了读取磁盘的次数,提高了识别效率。


图1-1是本发明对节点内数据编码的流程图;图1-2是本发明平衡二叉树的示意图;图2是本发明特征字符串识别方法实施例的流程图;图3是本发明特征字符串识别方法实施例初始位置查找的流程图;图4是本发明特征字符串识别方法实施例叶子节点定位的流程图;图5是本发明通过二级缓冲池加载节点的流程图;图6是本发明特征字符串识别系统实施例的结构图。
具体实施例方式以下结合附图对本发明进行详细说明。方法实施例B-Tree节点内的数据,是由有序的序列对(KEYi, PONTi)组成,其中,i = 0,1, 2,. . .,m-1,其中m表示节点的扇出系数。对于B-1Tree的内点,PONTi为子节点的指针,KEYi 为子节点的下确界。对于B-Tree的叶子节点,KEYi为特征串,PONTi为关联指针。如图1-1所示,本发明中,首先要对B-Tree节点内的数据进行编码,具体步骤如下步骤101,对特征字符串(Key)采用外排序算法,按照升序方式排序;步骤102,把按照升序排列结果放入队列,该队列采用文件作为存储介质;步骤103,从队列取出K个特征字符串,这K个特征字符串构成了一个有序字符串数组;步骤104,把这些特征字符串逐一转换为0、1代码。即把每一个字符采用二进制表示,这些二进制序列对应于特征字符串;步骤105,对这些二进制序列采用平衡二叉树排序,如图1-2所示,构造一棵平衡二叉树,逐一向二叉树插入二进制序列,调整树的高度,使之始终保持平衡状态;并且在树的内点中保留子节点左子树的叶子节点数和公共字符串长度(m_LeafCount,m_lcmp),其中m_LeafCount表示二叉树左子树叶子节点数,m_ Icmp为子节点公共前缀字符串长度;
步骤106,对平衡二叉树做中续遍历,生成编码数组,该数组是由(m_LeafC0unt, m_lcmp)组合构成;该编码数组保持了平衡二叉树的有序性,由于编码数组的长度只与特征字符串的个数有关,所以可以在有限的空间存储,实现了变长字符串数组向定长编码索引的转换;步骤107,判断是否创建内点,如果这K个特征字符串是由外排序获得,则创建 B-Tree叶子节点Node,执行步骤109 ;否则创建Β-Tree内点Node,执行步骤108 ;步骤108,如果是内点则写入中续编码、对应的子节点编号和Node的下界,即最小的特征字符串和二叉树根节点记录的公共字符串写入队列,之后执行步骤110 ;步骤109,如果是叶子节点则写入中续遍历编码和特征字符串关联的信息,之后执行步骤110 ;步骤110,判断队列中是否还有待处理的字符串,如果队列中仅仅剩余一个特征字符串则处理完毕,编码结束,否则转入步骤103。本实施例的对于B-Tree节点编码后,节点中形成一个长度固定的编码数组。避免了变长Key (特征字符串)的影响,能够显著提高节点的扇出系数。内点采用上述的编码方式,减少数据冗余,只需要读取一个物理页面就可以加载一个完整的内点,降低了读取磁盘的次数。如图2所示,通过上述编码,本发明相应的特征字符串识别方法实施例包括以下步骤步骤201,将带识别字符串Key转换为二进制代码,转换方式是Key对应的每一个字符采用二进制表示,构成的0,1序列,这里Key代表带识别字符串;步骤202,从缓冲池中读取B-Tree的根节点Node,即把页码编号I^age等于Root的节点,从缓冲池加载到内存中,这里I^age变量表示节点的编号,Root为根节点的编号,Node 表示节点;步骤203,判断节点Node是否为B-Tree的叶子节点,如果是则进入步骤206,否则进入步骤204 ;步骤204,通过编码序列在内点中做二叉查找,获得第一位置,即初始位置,即第一次位置定位,初始位置用IBlindPos表示;步骤205,子节点定位,使用编码序列和初始位置通过位置定位确定确切位置,即第二次位置定位,获得第二位置,即子节点位置,从缓冲池中加载子节点,执行步骤203 ;循环执行步骤203 205,直到找到的节点为叶子节点;步骤206,在叶子节点中做初始位置查找,初始位置用IBlindPos表示;步骤207,取出IBlinkPos位置对应的特征字符串与待识别的特征字符串比较,字符串比较的结果记为Cmp ;步骤208,判断Cmp是否为0,即IBlinkPos位置对应的特征字符串与待识别的特征字符串是否一致,如果Cmp为0,则执行步骤209 ;如果Cmp不为0,则执行步骤210 ;步骤209,做识别成功标记后结束;步骤210,做识别失败标记后结束。本实施例的特征字符串识别方法,由于每个内点中编码数组的长度固定,因此只需要一个固定大小物理页面进行存放。在特征字符串的识别过程中,只需要读取一个物理页面就可以加载一个完整的内点,减少数据冗余,降低了读取磁盘的次数,提高了识别效率。如图3所示,上述特征字符串识别方法中步骤204,初始位置查找的具体流程如下步骤301,设定初始化变量包括I,J,N ;I = 0,J = 0,N = KeyCount ;其中I表示子节点偏移位置,J表示在二叉编码数组的偏移位置,N表示平衡二叉树叶子节点数, KeyCount表示节点内二叉树叶子节点数;步骤302,判断N是否大于1,如果是,则执行步骤303 ;如果否,则执行步骤307 ;步骤303,获得Key对应的二进制序列在m_lcmp[J]处的值,该值用Bit表示,其中 m_lcmp[J]表示节点J对应的子树的叶子节点公共前缀;步骤304,如果Key对应的二进制序列在m_lcmp [J]处的值为1,则执行步骤305, 否则执行步骤306 ;步骤305,转入右侧子树,I = m_LeafCount [J] ;N = m_LeafCount [J] ; J = m_ LeafCount [J];其中m_LeafCount [J]表示第J个节点对应的子树左侧叶子节点数;步骤306,转入左侧子树,N = m_LeafCount [J] ;J = 1 ;执行步骤302 ;步骤307,返回初始查找位置PTRi,其中PTRi等于I,PTRi表示初始查找位置。如图4所示,上述特征字符串识别方法中步骤205,通过再次遍历平衡二叉树编码数组来获得子节点的实际位置,具体流程如下步骤401,通过缓冲池加载IBlindPos位置对应的节点Node,IBlindPos为初始位置,Node代表节点;步骤402,获得节点Node的下界,下界用KeyLowi表示;步骤403,计算Key与KeyLowi对应的二进制序列的差异位置,该差异位置用DifT 表不;步骤404,获得Key对应二进制序列在Diff位置处的值,该值用Bit表示;步骤405,设定初始化变量I,J,N ;I = 0,J = 0,N = KeyCount ;I表示子节点偏移位置,J表示在二叉编码数组的偏移位置,N表示平衡二叉树叶子节点数,KeyCount表示节点Node内二叉树叶子节点数;步骤406,如果 N > 1 而且 m_lcmp [J] < = Diff,其中 m_lcmp [J]表示二叉树第 J 个子节点的叶子节点的公共前缀长度,则执行步骤407 ;否则执行步骤410 ;步骤407,如果 IBlindPos 大于或等于 m_LeafCount [J],其中 m_LeafCount [J]表示以二叉树第J个节点为根的左子树的叶子节点数,则执行步骤408 ;否则执行步骤409 ;步骤408,移动到右侧子树;IBlinkPos = m_LeafCount [J] ;I = m_LeafCount [J]; N = m_LeafCount[J] ;J = m_LeafCount[J];以上这些运算的结果是转向当前节点右子树子树的,之后返回步骤406 ;步骤409,移动到左侧子树;N = m_LeafCount [J],J = 1,执行步骤406 ;步骤410,判断Key对应二进制序列在DifT位置处的值是否为0,如果为0,执行步骤411 ;否则执行步骤412 ;步骤411,返回当前节点Node的第I个子节点;步骤412,返回第I+N个子节点。
优选地,本实施例从缓冲池中加载节点采用二级缓冲池的方法,即将缓冲池分为一级缓冲池和二级缓冲池,一级缓冲池和二级缓冲池存储的是B+-Tree的节点。由于 B-Tree节点的使用频率与节点的高度有关,节点的高度越高,被使用的概率就越大。其中一级缓冲池中存放的是最近被使用的节点,二级缓冲池存放的是将要从内存中释放的节点。如图5所示,通过二级缓冲池加载节点的方法具体流程如下步骤501,获取当前节点的逻辑编号;步骤502,根据当前节点的逻辑编号从一级缓冲池中查找所述节点对应的页面;步骤503,判断一级缓冲池是否存有该页面,如果有执行步骤;如果一级缓冲池没有该页面,则执行步骤504;步骤504,判断二级缓冲池中是否存有该页面,如果有,执行步骤505,如果没有执行步骤506 ;步骤505,从二级缓冲池中加载该页面,执行步骤507 ;步骤506,从磁盘中加载该页面,执行步骤507 ;步骤507,判断一级缓冲池是否已满,如果是,执行步骤509,如果否,执行步骤 508 ;步骤508,将所述页面放入到一级缓冲池中,执行步骤513 ;步骤509,根据树的高度,减少所述页面的权值,减少权值为节点高度的一半 (Height/2),执行步骤510 ;节点高度越高,则权值递减的越小;步骤510,判断二级缓冲池是否已满,如果是,执行步骤511,如果否,则行步骤 512 ;步骤511,采用最近未使用算法释放二级缓冲池中的空间后,执行步骤512 ;步骤512,选择权值最小的页面放入到二级缓冲池后,执行步骤513 ;步骤513,根据所述节点的高度计算页面权置;步骤514,增加权值之后结束,页面权值增加为节点的高度(Height)。本实施例中,采用二级缓存的方式从缓冲池中加载页面,提高了页面加载的命中率,减少了读取磁盘次数。系统实施例如图6所示,本发明特征字符串识别系统,包括转换装置61,用于将待识别特征字符串转换为二进制代码;读取装置62,用于读取B-Tree的节点;查找装置63,当该节点为内点时,根据所述二进制代码在所述内点中进行二叉查找,确定所述待识别特征字符串对应的叶子节点的位置。其中,查找装置,当所述读取B-Tree的节点为叶子节点时,在所述叶子节点中做初始位置查找;还包括比较装置64,用于比较所述初始位置中的特征字符串与待识别特征字符串,当二者一致时,识别成功。其中,查找装置63包括初始位置定为模块,用于根据所述二进制代码在所述内点中进行二叉查找,获得第一位置;叶子节点定为模块,根据所述二进制代码及所述第一位置定位所述待识别特征字符串对应的第二位置。优选地,本实施例从缓冲池中加载节点采用二级缓冲池的方法,缓冲池65包括一级缓冲池和二级缓冲池,一级缓冲池,存储最近使用的节点所对应的页面;二级缓冲池,存储将要从内存中释放的节点所对应的页面;读取装置62,用于从所述一级缓冲池和二级缓冲池中加载节点。本实施例的特征字符串识别系统,由于每个内点中编码数组的长度固定,因此只需要一个固定大小物理页面进行存放。在特征字符串的识别过程中,只需要读取一个物理页面就可以加载一个完整的内点,减少数据冗余,降低了读取磁盘的次数,提高了识别效率。另外,本实施例中,采用二级缓存的方式从缓冲池中加载页面,提高了页面加载的命中率,减少了读取磁盘次数。应说明的是以上实施例仅用以说明本发明而非限制,本发明也并不仅限于上述举例,一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围中。
权利要求
1.一种特征字符串识别方法,其特征在于,包括A、将待识别特征字符串转换为二进制代码;B、读取B-1Tree的节点;C、当该节点为内点时,根据所述二进制代码在所述内点中进行二叉查找,确定所述待识别特征字符串对应的叶子节点的位置。
2.根据权利要求1所述的特征字符串识别方法,其特征在于,所述步骤C具体包括 Cl、根据所述二进制代码在所述内点中进行二叉查找,获得第一位置;C2、根据所述二进制代码及所述第一位置定位所述待识别特征字符串对应的第二位置;C3、当所述第二位置的节点还是内点时,则循环上述步骤。
3.根据权利要求2所述的特征字符串识别方法,其特征在于,所述步骤C3之后还包括当所述读取B-Tree的节点为叶子节点时,在所述叶子节点中做初始位置查找; 当所述初始位置中的特征字符串与待识别特征字符串一致时,识别成功。
4.根据权利要求2所述的特征字符串识别方法,其特征在于,所述内点中存储有固定长度的编码数组,所述编码数组为对特征字符串转换成的二进制代码进行平衡二叉树排序,再对形成的平衡二叉树做中续遍历后形成的,所述编码数组包括所述平衡二叉树左侧叶子节点数及子节点公共前缀字符串长度。
5.根据权利要求2所述的特征字符串识别方法,其特征在于,所述步骤Cl具体包括 C11、设定初始化变量包括I,J,N ;I = 0,J = 0,N = KeyCount ;其中I表示子节点偏移位置,J表示在二叉编码数组的偏移位置,N表示平衡二叉树叶子节点数,KeyCount表示节点内二叉树叶子节点数;C12、当N大于1,执行步骤C13,当N小于等于1时,执行步骤C17 ; C13、获得特征字符串对应的二进制代码在!11_1皿?[刃处的值,该值用Bit表示;其中, m_lcmp[J]表示节点J对应的子树的叶子节点公共前缀;C14、当所述二进制代码在m_lcmp[J]处的值为1时,执行步骤C15,否则执行步骤C16 ; C15、转入右侧子树,I = m_LeafCount [J] ;N = m_LeafCount [J] ;J = m_LeafCount [J]; 其中m_LeafC0imt[J]表示第J个节点对应的子树左侧叶子节点数;执行步骤C12 ; C16、转入左侧子树,N = m_LeafCount [J] ;J = 1 ;执行步骤C12 ; C17、返回初始查找位置PTRi,其中PTRi等于I,PTRi表示初始查找位置。
6.根据权利要求4所述的特征字符串识别方法,其特征在于,所述步骤C2具体包括 C201、加载IBlindPos位置对应的节点,其中IBlindPos为初始位置,Node代表节点; C202、获得节点的下界KeyLowi ;C203、计算特征字符串与KeyLowi对应的二进制序列的差异位置,该差异位置用Diff 表不;C204、获得特征字符串对应二进制代码,在Diff位置处的值,该值用Bit表示; C205、设定初始化变量包括I,J,N ;I = 0,J = 0,N = KeyCount ;其中,I表示子节点偏移位置,J表示在二叉编码数组的偏移位置,N表示平衡二叉树叶子节点数,KeyCount表示节点Node内二叉树叶子节点数;C206、iN> 1而且m_lcmp[J] < = Diff,执行步骤C207,否则,执行步骤C210,其中 m_lcmp[J]表示二叉树第J个子节点的叶子节点的公共前缀长度;C207、当 IBlindPos 不小于 m_LeafCount [J],其中 m_LeafCount [J]表示以二叉树第 J 个节点为根的左子树的叶子节点数,则执行步骤C208 ;否则转入步骤C209 ;C208、移动到右侧,IBlinkPos- = m_LeafCount [J] ;I = m_LeafCount [J] ;N = m_ LeafCount [J] ;J = m_LeafC0imt[J],以上这些运算的结果是转向当前节点右子树子树的, 执行步骤C206 ;C209、移动到左侧,N = m_LeafCount [J] ,J=I 执行步骤 C206 ; C210、当特征字符串对应二进制代码在Diff位置处的值为O时,则返回当前节点Node 的第I个子节点,否则返回第I+N个子节点。
7.根据权利要求1至6中任意一项所述的特征字符串识别方法,其特征在于,加载节点的具体操作包括根据当前节点的逻辑编号从一级缓冲池中查找所述节点对应的页面; 如果一级缓冲池没有该页面,则从二级缓冲池中查找,当二级缓冲池中有该页面时,从二级缓冲池中加载该页面到一级缓冲池;当二级缓冲池中也没有该页面,则从磁盘中加载该页面到一级缓冲池; 当一级缓冲池中未满时,将所述页面放入到一级缓冲池中;当一级缓冲池中已满时,减少所述页面的权值,当所述二级缓冲池未满时,选择权值最小的页面放入到二级缓冲池;当所述二级缓冲池已满时,释放二级缓冲池中的空间,选择权值最小的页面放入到二级缓冲池;根据所述节点的高度计算页面权置,根据所述页面权值调度页面。
8.一种特征字符串识别系统,其特征在于,包括转换装置,用于将待识别特征字符串转换为二进制代码; 读取装置,用于读取B-Tree的节点;查找装置,当该节点为内点时,根据所述二进制代码在所述内点中进行二叉查找,确定所述待识别特征字符串对应的叶子节点的位置。
9.根据权利要求8所述的特征字符串识别系统,其特征在于,所述查找装置,当所述读取B-Tree的节点为叶子节点时,在所述叶子节点中做初始位置查找;还包括比较装置,用于比较所述初始位置中的特征字符串与待识别特征字符串,当二者一致时,识别成功。
10.根据权利要求8所述的特征字符串识别系统,其特征在于,所述查找装置包括初始位置定为模块,用于根据所述二进制代码在所述内点中进行二叉查找,获得第一位置;叶子节点定为模块,根据所述二进制代码及所述第一位置定位所述待识别特征字符串对应的第二位置。
11.根据权利要求8所述的特征字符串识别系统,其特征在于,还包括缓冲池, 所述缓冲池包括一级缓冲池和二级缓冲池,所述一级缓冲池,存储最近使用的节点所对应的页面; 所述二级缓冲池,存储将要从内存中释放的节点所对应的页面; 所述读取装置,用于从所述一级缓冲池和二级缓冲池中加载节点。
全文摘要
本发明公开了一种特征字符串识别方法及系统。其中特征字符串识别方法包括A、将待识别特征字符串转换为二进制代码;B、读取B-Tree的节点;C、当该节点为内点时,根据所述二进制代码在所述内点中进行二叉查找,确定所述待识别特征字符串对应的叶子节点的位置。本发明的特征字符串识别方法及系统,由于每个内点中编码数组的长度固定,因此只需要一个固定大小物理页面进行存放。在特征字符串的识别过程中,只需要读取一个物理页面就可以加载一个完整的内点,减少数据冗余,降低了读取磁盘的次数,提高了识别效率。
文档编号G06K9/64GK102402692SQ201010280948
公开日2012年4月4日 申请日期2010年9月13日 优先权日2010年9月13日
发明者宋子辉, 杨崇俊 申请人:中国科学院遥感应用研究所, 北京中遥地网信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1