CN100468400C - 一种提高搜索信息速度的方法及系统 - Google Patents

一种提高搜索信息速度的方法及系统 Download PDF

Info

Publication number
CN100468400C
CN100468400C CNB2005101077938A CN200510107793A CN100468400C CN 100468400 C CN100468400 C CN 100468400C CN B2005101077938 A CNB2005101077938 A CN B2005101077938A CN 200510107793 A CN200510107793 A CN 200510107793A CN 100468400 C CN100468400 C CN 100468400C
Authority
CN
China
Prior art keywords
storage unit
information
search
search result
result information
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.)
Active
Application number
CNB2005101077938A
Other languages
English (en)
Other versions
CN1940922A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CNB2005101077938A priority Critical patent/CN100468400C/zh
Publication of CN1940922A publication Critical patent/CN1940922A/zh
Application granted granted Critical
Publication of CN100468400C publication Critical patent/CN100468400C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种提高搜索信息速度的方法,该方法将用于搜索信息的关键词生成哈希值;利用所述哈希值查询利用C语言中的数组作为内部存储结构的哈希表判断是否已缓存有对应的搜索结果;若缓存有,从所述哈希表中获得所述对应、并用于标识数组内存池中的存储单元的数组元素下标值;从数组元素在所述数组内存池中所标识的存储单元内读取搜索结果信息返回给请求方;若未缓存,由搜索引擎利用所述关键词进行搜索并获得搜索结果,在型哈希表中建立所述哈希值与下标值间的映射关系,将所述搜索结果信息存储到该下标值确定的数组元素在所述数组内存池中标识的存储单元内并将搜索结果信息返回给请求方。本发明还公开了一种提高搜索信息速度的方法及系统。

Description

一种提高搜索信息速度的方法及系统
技术领域
本发明涉及计算机及通信技术领域,尤其涉及一种提高搜索信息速度的方法及系统。
背景技术
目前对象缓存架构大都使用Java实现,开源的项目主要有:Jive、OSCache、Java Caching System、EHCache、ShiftOne、SwarmCache、TreeCache/JBossCache、WhirlyCache。
Jive是一个开放的Java源代码项目。Jive缓存信息为:把所要缓存的对象加到哈希映射表HashMap中,用两个双向链表分别维持着缓存对象和每个缓存对象的生命周期。如果一个缓存对象被访问到,那么就把它放到链表的最前面,然后不定时地把要缓存的对象加入链表中,把过期对象删除,如此反复。
由于Java是使用虚拟机动态分配和回收内存,执行效率不高,而且大都为网站系统而设计,不太适用于对性能要求很高的搜索系统。
发明内容
本发明提供一种提高搜索信息速度的方法及系统,以解决现有技术在搜索信息时存在效率低的问题。
本发明提供以下技术方案:
一种提高搜索信息速度的方法,包括如下步骤:
A、根据搜索请求,将用于搜索信息的关键词生成哈希值;
B、通过利用C语言中的数组作为内部存储结构的哈希值查询用于索引缓存的搜索结果信息的所述哈希表,判断是否缓存有该关键词的搜索结果信息;若是,则进行步骤C、D,否则,进行步骤E、F;
C、从所述哈希表中获得所述哈希值所对应的数值,并将该数值作为用于标识数组内存池中的存储单元的数组的下标值;
D、从所述下标值确定的数组元素在所述数组内存池中所标识的存储单元内读取搜索结果信息,将该信息返回给请求方;
E、由搜索引擎利用所述关键词进行搜索,获得搜索结果信息;
F、分配一个空闲的数组下标值,在所述哈希表中建立所述哈希值与下标值间的映射关系,将所述搜索结果信息存储到该下标值确定的数组元素在所述数组内存池中标识的存储单元内,并将搜索结果信息返回给请求方。
其中:
根据所有已存储搜索结果信息的存储单元形成最近最少使用链表,链表中的每个节点关联一个已缓存搜索结果信息的存储单元,其中,链表头对应最近最常使用的存储单元的下标值,链表尾对应最近最少使用的存储单元的下标值。
分配存储单元存储搜索结果信息时,或所述最近最少使用链表中的节点所对应的存储单元内的搜索结果信息被使用时,将该存储单元对应的节点添加或移动到链表头。
当需要释放存储单元时,从所述最近最少使用链表的尾部取出节点并重置对应的存储单元,以及从所述哈希表中删除对应的哈希值和下标值的对应关系。
根据所有空闲的存储单元形成空闲链表,该链表中的每个节点对应数组内存池中的一个存储单元;当分配存储单元存储搜索结果信息时从该空闲链表中取出头节点,当最近最少使用链表中释放存储单元的下标值时,在该空闲链表的尾部添加该下标值。
从存储单元读取搜索结果信息时,还对该搜索结果信息进行有效性检查,并根据检查结果按下述情况分别处理:
若确定所述搜索结果信息的已保存时间在配置的信息有效时间内,则将搜索结果信息返回给请求方;
若确定所述搜索结果信息的已保存时间大于配置的信息有效时间并且小于最大生命周期时间,则在读取该搜索结果信息后释放该存储单元,并利用所述关键词重搜索信息并缓存;
若确定所述搜索结果信息的已保存时间不小于配置的最大生命周期时间,则释放存储单元,利用所述关键词重搜索信息,并将搜索结果提供给请求方并缓存。
一种搜索系统,包括:
数组内存池,包含多个存储单元,用于缓存信息;
哈希值生成模块,用于将搜索关键词生成哈希值;
哈希表,利用C语言中的数组作为内部存储结构,用于保存哈希值与数组中元素的下标值之间的映射关系,以及根据所述哈希值进行查询并提供查询结果;
管理模块,用于管理所述数组内存池中的存储单元,将哈希值提供给所述哈希表和根据哈希表的查询结果判断是否缓存有所述关键词的搜索结果信息,以及将搜索结果信息返回给请求方;
搜索引擎,用于在所述管理模块确定未缓存有搜索结果信息时,利用所述关键词搜索信息,并返回给管理模块;
信息存取模块,用于在所述管理模块确定缓存有搜索结果信息时,从所述下标值确定的数组元素在数组内存池中所标识的存储单元内读取搜索结果信息;或者,将搜索引擎搜索的结果信息存储到所述存储单元,以及在所述哈希表中建立关键词的哈希值与该存储单元对应的数组元素下标值的映射关系。
本发明具有以下有益效果:
1、本发明在哈希表中使用需要查询的关键词的散列值作为关键(key)值,存储单元所在的内存池数组下标值作为哈希表key值的对应值(value),能够实现从查询关键字到数组内存池索引值的快速定位和降低系统的负载,同时还能提高对查询和存储请求的并发处理能力。
2、由于密集型哈希表是一个使用C数组作为内部存储结构的哈希表,这样的存储结构与标准哈希表相比可以带来近50%的速度提升,因此,本发明采用密集型哈希表索引缓存信息,能够大幅度提高系统搜索的响应速度。
3、本发明中数组和对应存储单元采用静态配置,因此,还可降低动态分配所带来的损耗。
附图说明
图1为本发明中存储信息的关系示意图;
图2为本发明中存储信息的流程图;
图3为本发明搜索信息的流程;
图4为本发明中缓存系统的结构示意图;
图5为本发明中搜索系统的结构示意图。
具体实施方式
为了提高搜索信息的效率,本发明利用数组内存池缓存搜索结果信息,利用哈希表作索引。当需要搜索时先通过哈希表查询是否缓存有相应的搜索结果信息,若有则直接读取,若无则进行搜索,并将搜索后的搜索结果信息返回给请求方和缓存该搜索结果信息。本发明中的存储关系如图1所示。
数组内存池是由缓存对象构成的数组,数组内存池包括多个用于存储信息的存储单元(或称元素),数组中的每个数组元素标识一个存储单元。每个存储单元还包含有用于辅助管理的信息,这些包括:建立时间、缓存信息和前后索引信息等。该内存池是在程序启动时根据配置分配固定的内存,以降低动态分配所带来的损耗。
为了提供效率,最佳方式是使用密集型哈希表。密集型哈希表是一个使用C语言数组作为内部存储结构的哈希表,这样的存储结构与标准哈希表相比可以带来近50%的速度提升。哈希表中使用需要查询的关键词的散列值作为它的key值,而查询结果所在的内存池数组下标值作为哈希表key值的对应value,实现从查询关键字到数组内存池索引值的快速定位。可以通过MD5算法将关键词生成哈希值(散列值)。
最近最少使用列表(LRU list)为双向链表结构,用于管理内存池,链表节点存储的是数组内存池的数组下标值,即每一个节点对应一个存储单元。链表头为最近最常使用(MRU)端,链表尾为最近最少使用(LRU)端。每当一个缓冲区被引用时,将该节点置于链表的MRU端,若数组内存池中没有空闲的缓冲区可用时释放LRU端的节点。
空闲列表(Free list):为普通的链表,系统初始化时将数组内存池的索引值(即数组下标值)都放置在该链表中,当需要保存新的查询结果时,它从空闲链表的头部摘出一个缓冲区,同时将该缓冲区加到LRU list的MRU端。当数组内存池没有空闲缓冲区可用时,则从LRU list释放LRU节点到free list中。
数组内存池的数组元素个数根据需要存储的信息量决定设置,该值是静态配置,在程序运行期间不能修改。初始化时,数组内存池中缓存单元没有前/后向元素(如其初始值为-1),最近最少使用列表(LRU list)中没有元素,而所有的数组下标值均保存在空闲列表(Free list)中。
参阅图2所示,在搜索系统中,采用以上方式缓存搜索结果信息的主要流程如下:
步骤100、利用MD5算法将需要搜索信息的关键词生成哈希值;该值为一个128位的串。
步骤110、从空闲列表(Free list)中分配一个未使用的数组下标值。
步骤120、在密集哈希表中建立哈希值与数组下标值之间的映射关系。
步骤130、将需要保存的信息存储到所述下标值在数组确定的元素所对应的缓存单元内。
步骤140、在最近最少使用列表(LRU list)中的MRU端增加节点,并将所述下标值保存在该节点中。
上述方法不仅局限于存储搜索结果信息,可以用于保存与关键词相关的其他任何信息。
参阅图3所示,在搜索系统中,采用上述方式搜索和缓存信息的主要处理过程如下:
步骤200、接收搜索请求,并将用于搜索信息的关键词生成哈希值,如该值为一个128位的串。
步骤210、利用所述哈希值查询用于索引缓存的搜索结果信息的密集型哈希表,判断是否缓存有该关键词的搜索结果信息;若是,则进行步骤220;否则,进行步骤260。
步骤220、利用所述哈希值查询密集型哈希表,获得所述哈希值所对应的数组元素的下标值。
步骤230、根据所述下标值在数组中确定的数组元素,定位到该数组元素所标识的数组内存池中的存储单元。
步骤240、从所述存储单元读取搜索结果信息并提供给请求方。
步骤250、根据所述存储单元的下标值,将最近最少使用列表(LRU list)中对应的节点移动到的MRU端。
步骤260、将所述关键词传送给搜索引擎,由搜索引擎获得的搜索结果信息。
步骤270、从空闲列表(Free list)中分配一个空闲的数组元素的下标值。
步骤290、在密集哈希表中建立哈希值与数组下标值之间的映射关系。
步骤300、将搜索到的结果信息存储到所述下标值在数组确定的元素所对应的缓存单元内,并将搜索结果信息返回给请求方。
步骤310、在最近最少使用列表(LRU list)中的MRU端增加节点,并将所述下标值保存在该节点中,使该节点对应所述存储单元。
为了保证缓存信息的新鲜度,还可在将缓存数据返回给客户端前要对其进行有效性检测,如果缓存数据已失效则必须重新查询和缓存。其具体方式是:在从数组内存的存储单元读取数据时,根据用户配置的有效时间(ExpireTime)和MaxLifeTime(最大生命周期)判断当前的查询时间与该缓存结果创建时间差值落在哪个时间段内。若时间差小于ExpireTime则从内存池中取出缓存结果返回给客户端;如果时间差大于等于ExpireTime而小于MaxLifeTime时先将缓存结果返回给客户端,然后释放该缓存元素节点,包括完成从密集型哈希表中删除映射关系、从LRU链表中删除该节点和追加至空闲链表尾等一系列操作;然后由搜索引擎利用关键词进行搜索,并将结果重新保存至内存池中,但此时不再返回给客户端,以此保证缓存内容的新鲜度;若时间差值大于MaxLifeTime则马上释放该缓存元素节点,接着按没有缓存结果的处理过程处理该查询请求。
对于数组内存中已存储数据的存储单元,并不限于采用上述的链表结构进行管理,也可以对数组缓存池中保存的每一个对象进行引用计数及最近查询时间,当该缓冲区被引用的次数达到一定值后重新查询并保存查询结果,而释放很久都没有再进行引用的缓冲区。
相应的,一种缓存系统如图4所示,该系统包括:
数组内存池,包含多个存储单元,用于缓存信息。
哈希值生成模块,用于将与信息相关的关键词生成哈希值;
哈希表,利用散列算法(如MD5)将与信息相关的关键词生成哈希值。
管理模块,与哈希值生成模块和哈希表具有逻辑上的连接关系,用于管理所述数组内存池中的已存储信息的存储单元和空闲的存储单元。较佳的方式是,管理模块通过双向链表管理存储单元。
保存信息模块,与所述数组内存池和管理模块具有逻辑上的连接关系,用于将信息存储到所述存储单元,并在所述哈希表中建立关键词的哈希值与该存储单元对应的数组元素下标值之间的映射关系。
相应的,一种搜索系统如图5所示,该系统包括:
数组内存池,包含多个存储单元,用于缓存信息。
哈希值生成模块,用于将搜索关键词生成哈希值。
哈希表,用于保存哈希值与数组中元素的下标值之间的映射关系,以及根据所述哈希值进行查询并提供查询结果。
管理模块,与哈希值生成模块和哈希表具有逻辑上的连接关系,用于管理所述数组内存池中的存储单元,将哈希值提供给所述哈希表和根据哈希表的查询结果判断是否缓存有所述关键词的搜索结果信息,以及将搜索结果信息返回给请求方。
搜索引擎,与所述管理模块具有逻辑上的连接关系,用于在所述管理模块确定未缓存有搜索结果信息时,利用所述关键词搜索信息,并返回给管理模块。
信息存取模块,与所述管理模块和数组内存池具有逻辑上的连接关系,用于在所述查询模块确定缓存有搜索结果信息时,从所述下标值确定的数组元素在数组内存池中所标识的存储单元内读取搜索结果信息;或者,将搜索引擎搜索的结果信息存储到所述存储单元,以及在所述哈希表中建立关键词的哈希值与该存储单元对应的数组元素下标值的映射关系。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (7)

1、一种提高搜索信息速度的方法,其特征在于,包括如下步骤:
A、根据搜索请求,将用于搜索信息的关键词生成哈希值;
B、通过利用C语言中的数组作为内部存储结构的哈希值查询用于索引缓存的搜索结果信息的所述哈希表,判断是否缓存有该关键词的搜索结果信息;若是,则进行步骤C、D,否则,进行步骤E、F;
C、从所述哈希表中获得所述哈希值所对应的数值,并将该数值作为用于标识数组内存池中的存储单元的数组的下标值;
D、从所述下标值确定的数组元素在所述数组内存池中所标识的存储单元内读取搜索结果信息,将该信息返回给请求方;
E、由搜索引擎利用所述关键词进行搜索,获得搜索结果信息;
F、分配一个空闲的数组下标值,在所述哈希表中建立所述哈希值与下标值间的映射关系,将所述搜索结果信息存储到该下标值确定的数组元素在所述数组内存池中标识的存储单元内,并将搜索结果信息返回给请求方。
2、如权利要求1所述的方法,其特征在于,根据所有已存储搜索结果信息的存储单元形成最近最少使用链表,链表中的每个节点关联一个已缓存搜索结果信息的存储单元,其中,链表头对应最近最常使用的存储单元的下标值,链表尾对应最近最少使用的存储单元的下标值。
3、如权利要求2所述的方法,其特征在于,分配存储单元存储搜索结果信息时,或所述最近最少使用链表中的节点所对应的存储单元内的搜索结果信息被使用时,将该存储单元对应的节点添加或移动到链表头。
4、如权利要求2所述的方法,其特征在于,当需要释放存储单元时,从所述最近最少使用链表的尾部取出节点并重置对应的存储单元,以及从所述哈希表中删除对应的哈希值和下标值的对应关系。
5、如权利要求2所述的方法,其特征在于,根据所有空闲的存储单元形成空闲链表,该链表中的每个节点对应数组内存池中的一个存储单元;当分配存储单元存储搜索结果信息时从该空闲链表中取出头节点,当最近最少使用链表中释放存储单元的下标值时,在该空闲链表的尾部添加该下标值。
6、如权利要求1所述的方法,其特征在于,从存储单元读取搜索结果信息时,还对该搜索结果信息进行有效性检查,并根据检查结果按下述情况分别处理:
若确定所述搜索结果信息的已保存时间在配置的信息有效时间内,则将搜索结果信息返回给请求方;
若确定所述搜索结果信息的已保存时间大于配置的信息有效时间并且小于最大生命周期时间,则在读取该搜索结果信息后释放该存储单元,并利用所述关键词重搜索信息并缓存;
若确定所述搜索结果信息的已保存时间不小于配置的最大生命周期时间,则释放存储单元,利用所述关键词重搜索信息,并将搜索结果提供给请求方并缓存。
7、一种搜索系统,其特征在于,包括:
数组内存池,包含多个存储单元,用于缓存信息;
哈希值生成模块,用于将搜索关键词生成哈希值;
哈希表,利用C语言中的数组作为内部存储结构,用于保存哈希值与数组中元素的下标值之间的映射关系,以及根据所述哈希值进行查询并提供查询结果;
管理模块,用于管理所述数组内存池中的存储单元,将哈希值提供给所述哈希表和根据哈希表的查询结果判断是否缓存有所述关键词的搜索结果信息,以及将搜索结果信息返回给请求方;
搜索引擎,用于在所述管理模块确定未缓存有搜索结果信息时,利用所述关键词搜索信息,并返回给管理模块;
信息存取模块,用于在所述管理模块确定缓存有搜索结果信息时,从所述下标值确定的数组元素在数组内存池中所标识的存储单元内读取搜索结果信息;或者,将搜索引擎搜索的结果信息存储到所述存储单元,以及在所述哈希表中建立关键词的哈希值与该存储单元对应的数组元素下标值的映射关系。
CNB2005101077938A 2005-09-30 2005-09-30 一种提高搜索信息速度的方法及系统 Active CN100468400C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101077938A CN100468400C (zh) 2005-09-30 2005-09-30 一种提高搜索信息速度的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101077938A CN100468400C (zh) 2005-09-30 2005-09-30 一种提高搜索信息速度的方法及系统

Publications (2)

Publication Number Publication Date
CN1940922A CN1940922A (zh) 2007-04-04
CN100468400C true CN100468400C (zh) 2009-03-11

Family

ID=37959112

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101077938A Active CN100468400C (zh) 2005-09-30 2005-09-30 一种提高搜索信息速度的方法及系统

Country Status (1)

Country Link
CN (1) CN100468400C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110191428A (zh) * 2019-05-27 2019-08-30 北京鸿联九五信息产业有限公司 一种基于智能云平台的数据分配方法

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5061741B2 (ja) * 2007-06-13 2012-10-31 日本電気株式会社 情報処理装置及びそれに用いる順序付きデータ管理方法並びにそのプログラム
CN101764836B (zh) * 2008-12-23 2013-08-07 北京大学深圳研究生院 分布式心跳服务器架构及其进程处理方法
CN101478652B (zh) * 2008-12-31 2013-10-30 深圳市同洲电子股份有限公司 一种内存数据的检索方法、系统及数字电视接收终端
CN102117159B (zh) * 2009-04-30 2012-11-14 广东国笔科技股份有限公司 一种人机界面交互系统和方法
CN101782922B (zh) * 2009-12-29 2012-01-18 山东山大鸥玛软件有限公司 一种面向海量数据检索的多级桶哈希索引方法
CN102122285B (zh) * 2010-01-11 2012-10-31 卓望数码技术(深圳)有限公司 一种数据缓存系统中的数据查询系统和数据查询方法
CN101990256A (zh) * 2010-08-27 2011-03-23 中兴通讯股份有限公司 长连接管理装置及长连接通讯的链路资源管理方法
CN102436448A (zh) * 2010-09-29 2012-05-02 腾讯科技(深圳)有限公司 搜索方法和系统
CN102098288B (zh) * 2010-12-17 2014-01-22 曙光信息产业股份有限公司 一种采用静态链表构造tcp节点池优化tcp连接管理的方法
CN102541924B (zh) * 2010-12-21 2016-01-20 中国移动通信集团公司 一种检索信息的缓存方法和搜索引擎系统
CN102156723A (zh) * 2011-03-31 2011-08-17 中兴通讯股份有限公司 一种基于哈希算法的数据存储和读取的方法及装置
CN102129473B (zh) * 2011-04-19 2016-09-14 北京思特奇信息技术股份有限公司 一种静态数据检索方法
CN102202331A (zh) * 2011-05-31 2011-09-28 武汉市维优科技有限公司 一种朗讯告警信息的管理方法
CN102279880B (zh) * 2011-07-28 2014-07-16 赵香芳 一种实时更新缓存的方法和系统
CN102629234B (zh) * 2012-01-18 2015-01-21 物联微电子(常熟)有限公司 一种单片机片内置Flash数据快速检索方法
CN103514217B (zh) * 2012-06-30 2017-02-08 重庆新媒农信科技有限公司 检索应用中检索条件的关联提示处理方法及系统
CN103092767B (zh) * 2013-01-25 2016-12-28 浪潮电子信息产业股份有限公司 一种对云计算内部物理机信息内存池的管理方法
CN103246726B (zh) * 2013-05-09 2017-04-12 北京奇付通科技有限公司 一种网络信息的搜索方法、装置和系统
CN103593314A (zh) * 2013-11-19 2014-02-19 乐视致新电子科技(天津)有限公司 外接存储设备断点续传的方法及装置
CN103699854B (zh) * 2013-12-31 2017-02-22 华为技术有限公司 数据存储方法、数据访问方法及存储设备
CN104809138B (zh) * 2014-01-28 2018-06-08 阿里巴巴集团控股有限公司 一种基于hash处理的词汇管理方法和设备
CN104462549B (zh) * 2014-12-25 2018-03-23 瑞斯康达科技发展股份有限公司 一种数据处理方法和装置
CN105243030A (zh) * 2015-10-26 2016-01-13 北京锐安科技有限公司 一种数据缓存方法
CN106991102B (zh) * 2016-01-21 2021-06-08 腾讯科技(深圳)有限公司 倒排索引中键值对的处理方法及处理系统
CN106096023B (zh) * 2016-06-24 2019-03-08 腾讯科技(深圳)有限公司 数据读取方法、数据写入方法及数据服务器
CN109241196A (zh) * 2017-07-06 2019-01-18 阿里巴巴集团控股有限公司 数据查询方法及装置、设备
CN110019552A (zh) * 2017-12-21 2019-07-16 北京京东尚科信息技术有限公司 用户关注状态更新的方法和装置
CN110427397B (zh) * 2018-04-27 2023-03-21 腾讯科技(深圳)有限公司 凭证数据查重方法及相关设备
CN109656926A (zh) * 2018-12-24 2019-04-19 杰信软件科技(苏州)有限公司 数据库的管理方法
CN111078132A (zh) * 2019-10-15 2020-04-28 中国平安财产保险股份有限公司 基于Redis集群的数据均匀缓存方法、装置、终端及存储介质
CN111162937B (zh) * 2019-12-20 2023-05-16 北京格林威尔科技发展有限公司 一种在传输设备中实现内存池的方法及装置
CN111143414A (zh) * 2019-12-26 2020-05-12 五八有限公司 一种缓存数据的反馈方法、装置、电子设备及存储介质
CN111338731B (zh) * 2020-02-24 2022-05-24 腾讯科技(深圳)有限公司 页面的显示方法、装置、计算机可读存储介质和计算机设备
CN112947856B (zh) * 2021-02-05 2024-05-03 彩讯科技股份有限公司 一种内存数据的管理方法、装置、计算机设备及存储介质
CN112988795A (zh) * 2021-02-26 2021-06-18 开放智能机器(上海)有限公司 一种号码检索方法、系统、设备和存储介质
CN113704302A (zh) * 2021-07-30 2021-11-26 济南浪潮数据技术有限公司 基于hash映射的海量数据检索方法、系统、终端及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
数据结构. 严蔚敏, 吴伟民,第251页第16行到第253页第3行,清华大学出版社. 1997
数据结构. 严蔚敏, 吴伟民,第251页第16行到第253页第3行,清华大学出版社. 1997 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110191428A (zh) * 2019-05-27 2019-08-30 北京鸿联九五信息产业有限公司 一种基于智能云平台的数据分配方法
CN110191428B (zh) * 2019-05-27 2021-10-12 北京鸿联九五信息产业有限公司 一种基于智能云平台的数据分配方法

Also Published As

Publication number Publication date
CN1940922A (zh) 2007-04-04

Similar Documents

Publication Publication Date Title
CN100468400C (zh) 一种提高搜索信息速度的方法及系统
US8868926B2 (en) Cryptographic hash database
JP5198294B2 (ja) 時間的に近接して記憶システムに書き込まれたデータユニットを示すコンテンツアドレスの生成方法およびその装置
KR100562906B1 (ko) 시리얼 플래시 메모리에서의 xip를 위한 우선순위기반의 플래시 메모리 제어 장치 및 이를 이용한 메모리관리 방법, 이에 따른 플래시 메모리 칩
CN102542034B (zh) 一种数据库接口的结果集缓存方法
US9104327B2 (en) Fast translation indicator to reduce secondary address table checks in a memory device
US10891229B2 (en) Multi-level caching method and multi-level caching system for enhancing graph processing performance
US20050055511A1 (en) Systems and methods for data caching
US9009403B2 (en) Multi-updatable least recently used mechanism
JP2003337834A (ja) サイズ変更可能なキャッシュ・センシティブ・ハッシュ・テーブル
US10007615B1 (en) Methods and apparatus for performing fast caching
US10628318B2 (en) Cache sector usage prediction
US10387045B2 (en) Apparatus and method for managing buffer having three states on the basis of flash memory
US6842826B1 (en) Method and apparatus for providing efficient management of least recently used (LRU) algorithm insertion points corresponding to defined times-in-cache
US20200341909A1 (en) Cache data location system
CN107766258B (zh) 内存存储方法与装置、内存查询方法与装置
Botelho et al. Minimal perfect hashing: A competitive method for indexing internal memory
GB2276961A (en) Set-associative memory with data "shunting".
US9697898B2 (en) Content addressable memory with an ordered sequence
KR102482516B1 (ko) 메모리 어드레스 변환
KR102321346B1 (ko) 대용량 ssd 장치를 위한 데이터 저널링 방법
CN101459599B (zh) 一种实现缓存数据访问与加载并发进行的方法及系统
JP2017162194A (ja) データ管理プログラム、データ管理装置、及びデータ管理方法
Sanders Hashing with linear probing and referential integrity
US8037259B2 (en) System and method for managing addresses in a computing system

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
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20070404

Assignee: Beijing Jingdong Shangke Information Technology Co., Ltd.

Assignor: Tencent Technology (Shenzhen) Co., Ltd.

Contract record no.: 2014990000345

Denomination of invention: Method and system for improving information search speed

Granted publication date: 20090311

License type: Common License

Record date: 20140526

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model