CN104504076A - 一种高并发和高空间利用率的分布式缓存方法 - Google Patents
一种高并发和高空间利用率的分布式缓存方法 Download PDFInfo
- Publication number
- CN104504076A CN104504076A CN201410811138.XA CN201410811138A CN104504076A CN 104504076 A CN104504076 A CN 104504076A CN 201410811138 A CN201410811138 A CN 201410811138A CN 104504076 A CN104504076 A CN 104504076A
- Authority
- CN
- China
- Prior art keywords
- hash
- space
- algorithm
- page
- distributed caching
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开了一种高并发和高空间利用率的分布式缓存方法,包括:1)哈希算法的优化;2)页面置换算法的优化,对原有LRU置换机制进行改进优化,将近期最少使用LRU算法基于双向链表的实现替换为双向循环链表,并且添加hand指针指向需要置换的数据;3)判断Hopscotch哈希算法在并发改进后数据是否存在;4)判断内存空间是否充足,如果内存空间不足,则进行下一步页面置换机制;如果空间足够,即可存储数据,自此,完成高并发和高空间利用率的分布式缓存。本发明通过替换和改进缓存管理算法,优化锁机制,以及改进哈希算法,不仅在空间利用率上有所提高,而且提高了并发访问控制能力,有效地解决因内存碎片而造成无法高效地利用空间的问题。
Description
技术领域
本发明属于计算机科学与技术领域,涉及到一种高并发和高空间利用率的分布式缓存系统,是一种基于Memcached系统而提出的提高并发执行效率和空间利用率的方法。
背景技术
Memcached作为一个高性能分布式缓存系统在云计算中得到了广泛的应用,它通过在内存中建立缓存来减少数据访问次数,提高读写速度。然而,随着大规模云计算技术和Web应用的快速发展,数据存储数量和速度成指数倍增长,Memcached在空间利用率和并发执行效率上已无法满足日益增长的快速数据读写需求。因此,对Memcached的性能优化成为目前亟待解决的问题。
Memcached是偏重读操作的工作负载情况,如果读操作没有被优化,锁被广泛引用在查询路径中,就需要寻求移除查询路径中的所有障碍来提高Memcached并发访问,故提出一种哈希算法替换Memcached原有链地址哈希算法提高并发访问效率。
Hopscotch哈希表是一组桶。Hopscotch方法关键特征就是在任何给予items桶相邻桶的概念。这相邻的特性就是在任一个相邻的桶中查找所想要的item的开销与在本身桶中查找item的开销相同或者相近。Hopscotch哈希算法将试图将一个item放入近邻点,可能是以置换其他items为代价。Hopscotch哈希算法使用一个简单的哈希函数h。item散列到一个条目总是会在该条目中或者在其相邻的H-1个条目中发现,且H(例如,H可以是标准机器字节,为32)是一个常数。换句话说,近邻点是一个“虚拟”的桶,是一个固定大小和相邻的H-1个桶覆盖的。每个条目包含一个跳跃信息字,一个H比特的位图。
下面是Hopscotch哈希算法如何添加x记录使用:从位置i开始,使用线性探测找在索引j处找到空的条目;如果索引j处的条目为空并且j是在i的的范围内,则将x放在j处并且返回;否则,j与i相距很远,即超过了H的范围。为了创建一个接近i的空条目,找到一个item y其散列值位于i与j之间,但要在j的范围内,而且该散列值条目位于j的下面。置换y到索引j得到一个新的空槽与i接近。重复上述操作,如果没有这样的item存在,或者表已经满了,则扩容和重新散列哈希表。
Memcached在数据删除方面有效利用资源。数据不会真正从Memcached缓存中删除,即不会释放已经分配的内存,在记录过期时,该记录对外是不可见的,而该记录的位置可以重新插入数据。Memcached的废除机制是采用惰性废除方法,CPU不会监视记录的时间戳,只是在查询记录时检查时间戳,获取记录的废除时间,从而判断是否过期,故Memcached不会在过期监视上浪费CPU时间。同时追加新纪录空间不足时,采用近期最少使用算法对新纪录进行空间分配。严格的LRU算法对内存的管理,能够确保关键字被安全废除,同时也造成了同步的瓶颈,因为所有缓存更新必须序列化;同时也会让一些短期使用的关键字长期在内存中存在,直到关键字到达LRU链表的末端,从而浪费内存。LRU算法在Memcached系统中是基于双向链表实现的,但是其插入和读取记录时都需要调整记录在LRU表中的位置,而且这两个操作在Memcached中却是上锁的,这很不利于并发访问,在Memcached偏重读操作为主的工作负载情况下,对于读取记录操作过程中添加锁机制是不合理的,所以这也是不利于并发控制机制和空间利用率的瓶颈之一。
发明内容
本发明的目的在于针对上述已有技术的不足,提出了一种高并发和高空间利用率的分布式缓存方法。本发明通过替换和改进缓存管理算法,优化锁机制,以及改进哈希算法,不仅在空间利用率上有所提高,而且提高了并发访问控制能力,有效地解决因内存碎片而造成无法高效地利用空间的问题。
为了实现上述目的,提出一种改进的哈希算法提高哈希表的读写并发访问效率,以及提高空间效率的方法,根据LRU页面置换算法在Memcached缓存系统的实现方式,使得缓存管理的空间效率和并发更新缓存,本发明在LRU缓存置换的基础上实现了一种可以提高空间效率和改进一种哈希算法来提高并发控制效率的方法。
本发明的技术方案是这样实现的:
一种高并发和高空间利用率的分布式缓存方法,该方法包括下述步骤:
步骤1,哈希算法的优化,用Hopscotch hashing构建四张哈希表,并对Hopscotch hashing的哈希数据结构进行改进;
步骤2,页面置换算法的优化,对原有LRU置换机制进行改进优化,将近期最少使用LRU算法基于双向链表的实现替换为双向循环链表,并且添加hand指针指向需要置换的数据;
步骤3,判断Hopscotch哈希算法在并发改进后数据是否存在,若存在,则进入下一步,若不存在,则判断内存空间是否充足;
步骤4,判断内存空间是否充足,根据缓存系统的内存大小判断数据是否能够存储,如果内存空间不足,则进行下一步页面置换机制;如果空间足够,即可存储数据,自此,完成高并发和高空间利用率的分布式缓存。
进一步地,所述步骤1中,对Hopscotch hashing的哈希数据结构进行改进,包括下述步骤:
1a)Hopscotch哈希算法初始化构建四张哈希表,这些哈希表并行排列,通过二位数组来维护这一哈希表数据结构;
1b)添加记录时,从0行开始,该记录通过哈希函数得到其在0行的哈希表位置,如果该位置为空,则直接插入该位置;如果不为空,则继续探测下一行相同位置,以此类推;
1c)如果到达第3行,该位置不为空,故在此行再进行Hopscotch hashing移位过程;
1d)如果第3行的哈希表的位置已满,则移向上一行,在进行1c)的操作。
进一步地,所述步骤1中,仅允许一次只有一个写线程对一个哈希表进行操作;每次只对一个哈希表进行线性探测移位空间。
进一步地,所述步骤2中,对原有LRU置换机制进行改进优化,包括以下步骤:
2a)hand指针在循环链表中指向需要置换的元素;
2b)更新操作update,在缓存中查询一个关键字后,更新该关键字的状态;
2c)删除操作evict,当追加新纪录时缓存空间不足,需要选择移除的关键字。
进一步地,所述步骤3中,判断Hopscotch哈希算法在并发改进后数据,执行过程包括:
3a)从指针所指向的当前位置为起点,对循环队列进行搜索,搜索A=0且M=0的第一类页面,每次将指向的第一类页面作为所选中的淘汰页,不改变访问位A在第一次扫描链表时;
3b)如果步骤3a)失败,即搜索一圈后未遇到一类页面,则开始进行第二轮扫描,搜索A=0且M=1的二类页面,将每次所遇到的第一个这类页面作为淘汰页,将所有扫描过的页面的访问位都清零在第二轮扫描时;
3c)如果第步骤3b)失败,即没有找到二类页面,则将指针指向开始的位置,并将所有的访问位清零;然后重复步骤(3a)~(3b),直至找到被淘汰页。
进一步地,所述步骤4中,判断内存空间是否充足,进行数据存储,包括下述步骤:
4a)Update函数在每次关键字访问时简单地将其设置为1;
4b)Evict依据hand的指向来检查此比特位所处状态,如果为0,我们则选择相应的key/value对象进行替换;若为1,则将此位重置为0并且将hand在双向循环链表中向前移动直到出现比特位为0。
本发明相比于原系统现有技术具有以下优点:
第一,本发明方案的提出,将LRU置换算法造成的所有缓存更新都必须序列化的同步瓶颈问题解决,实现同步更新,减少了锁开销;
第二,本发明在缓存管理上减少了内存空间开销,提升了空间效率;
第三,本发明使用改进后的Hopscotch哈希算法替换开链算法,不仅使得Memcached在空间利用率上有所提升,而且解决了哈希表读写并发访问的障碍。
本发明适用的环境在于:Memcached作为一个高性能分布式缓存系统在Web服务器和云计算中得到了广泛的应用,本发明提出一种高并发和空间利用率的方法,有效地解决了哈希表读写并发访问的障碍、同步更新的瓶颈、并发管理缓存以及减少了内存开销问题,故应用于Memcached中使得云计算环境和web服务器在于缓存管理开销问题很有大改进,提升了并发访问效率并且提高了空间利用率。
附图说明
图1为本发明的整体架构图。
图2为本发明的整体流程图。
图3(A)和图3(B)分别为本发明中哈希机制执行流程图。
图4为本发明中改进页面置换算法流程图。
具体实施方式
下面结合附图及实施例对本发明做进一步详细说明。
参照图1,本发明在原有的架构上改进LRU页面置换算法结构而得出的现在这个架构,主要包含两个模块:页面置换机制模块和快速查找的哈希机制。其中:
哈希机制可以提供快速的插入操作和查找操作,无论表中数据的大小多少,插入查找操作通过哈希算法直接定位到关键字的存储位置,时间复杂度为O(1)。
基于LRU算法提出的高空间效率的页面置换机制,这一模块主要是为了淘汰过期记录,在内存空间足够的情况下,如果没有该记录存在,则直接将该记录存放在该链表中;如果存在了,则更新该记录的状态信息,以便空间不足时作为替换的依据。内存空间不足的时候,就要根据hand所指向的记录,检查其状态信息,如果不满足,则将该记录替换为新追加的记录,如果满足,则hand在链表中向前移动一位,直到出现淘汰页为止。
参照图2,本发明对于改进LRU页面置换算法后的整体流程图。
步骤1,哈希算法的优化,用Hopscotch hashing构建四张哈希表,并对Hopscotch hashing的哈希数据结构进行改进;
对记录进行插入或者查找操作开始启动,这一步骤主要就是提取出记录的关键字,该关键字根据要求得出其目的状态信息。
由于Hopscotch hashing在空间利用率上有着相比于链地址哈希算法明显的优势,但是在并发性上存在局限,这里我们使用Hopscotch hashing替换开链算法,并对Hopscotch hasing的哈希数据结构进行改进,提高空间利用率,解决了哈希表读写并发访问的障碍。
Hopscotch哈希算法在并发上会出现两个问题:一是死锁风险,二是错误丢失。解决方法就是将插入操作分割成一系列的原子交换,而不是把整个哈希路径锁起来,为每个桶添加三个额外的空间作为溢出哈希表来存储,在每行哈希表上就可以进行线性探测移出空位,这样可以避免了这些问题。虽然增加哈希表会产生空间消耗,但是在维持内存空间效率的前提下,允许多个读线程并发访问哈希表,为了避免死锁风险,仅允许一次只有一个写线程对一个哈希表进行操作;为了消除错误丢失,每次只对一个哈希表进行线性探测移位空间。
具体步骤为:
1a)Hopscotch哈希算法初始化构建四张哈希表,这些哈希表并行排列,通过二位数组来维护这一哈希表数据结构;
1b)添加记录时,从0行开始,该记录通过哈希函数得到其在0行的哈希表位置,如果该位置为空,则直接插入该位置;如果不为空,则继续探测下一行相同位置,以此类推;
1c)如果到达第3行,该位置不为空,故在此行再进行Hopscotch hashing移位过程;
1d)如果第3行的哈希表的位置已满,则移向上一行,在进行1c)的操作。
步骤2,页面置换算法的优化,对原有LRU置换机制进行改进优化,将近期最少使用LRU算法基于双向链表的实现替换为双向循环链表,并且添加hand指针指向需要置换的数据;哈希机制定位出该记录的位置。
Memcached缓存系统是以小对象为主的存储,通过这种方法节省的空间允许缓存有效地存储更多记录以增加命中率。同时该方法必须实现与置换策略相关的两个函数;
具体步骤为:
2a)hand指针在循环链表中指向需要置换的元素,方便检查元素的状态,而不用在对元素进行移位操作,对并发管理缓存空间有利;
2b)更新操作update,在缓存中查询一个关键字后,更新该关键字的状态;
2c)删除操作evict,当追加新纪录时缓存空间不足,需要选择移除的关键字。
结合附图3对本发明哈希机制的集体步骤描述如下:
首先白色部分代表着空槽,灰色部分是包含着其他记录,改进Hopscotch hashing机制对于添加v到位置6的时候,可以看到0、1、2和3行该位置6都被占据着,故此时我们没有相应的位置可以添加了,所以我们在第三行进行相应的Hopscotch hashing调整哈希表的位置。在图3(A)中,我们添加记录v到哈希值6出。线性探测查到条目13是空的,因为条目13离条目6超过阈值4,我们需找一个更近的条目来交换条目13。第一个查看的地方是在条目之前3个条目的距离,就是条目10。该条目的hop信息的位图显示在条目11的w可以被移到13.条目11仍然距离条目6比较远,所以我们检查条目8。其hop信息位图显示在条目9的z可以被移动到条目11。最后x被移动到条目9的位置。图3(B)部分显示了仅在添加v之前表的状态。
查找基本过程为:根据记录的关键字来找到其对应的桶,如果该桶不存在这样的关键字,则遍历下一个桶链表,再进行比较;如果存在这样的关键字,则返回其状态信息位置并进行步骤4;如果没有找到,则要进行步骤3。
步骤3,判断Hopscotch哈希算法在并发改进后数据是否存在,若存在,则进入下一步,若不存在,则判断内存空间是否充足;
执行过程包括以下三步:
3a)从指针所指向的当前位置为起点,对循环队列进行搜索,搜索A=0且M=0的第一类页面,每次将指向的第一类页面作为所选中的淘汰页,不改变访问位A在第一次扫描链表时;
3b)如果步骤3a)失败,即搜索一圈后未遇到一类页面,则开始进行第二轮扫描,搜索A=0且M=1的二类页面,将每次所遇到的第一个这类页面作为淘汰页,将所有扫描过的页面的访问位都清零在第二轮扫描时;
3c)如果第步骤3b)失败,即没有找到二类页面,则将指针指向开始的位置,并将所有的访问位清零;然后重复步骤(3a)~(3b),直至找到被淘汰页。
这个时候根据记录在哈希表中的情况,判断出该记录没有在哈希表中存在任何信息,故要进行内存空间的检查,如果内存空间足够容纳该记录,则就可以将该记录存放于Memcached缓存系统中,也就是在哈希表中将该记录插入其中,而且模拟出的LRU循环链表也保存着其状态信息,跳转到步骤5;如果内存空间不足时,也就意味着要进行页面置换了,将过期记录置换出链表中,追加新的记录到链表,并更新其状态信息,这一过程跳转步骤4。
步骤4,页面置换机制模块,根据记录的状态信息和内存空间情况,在内存空间不足够的时候选择要移除出空间的记录;内存空间充足时,根据记录是否包含在链表中进行插入或更新记录状态信息,具体参见图4。
对于这样基于LRU算法的实现提出的方法,在每个slab类中,我们改进双向链表,使它成为一个循环缓冲区,即双向循环链表,和一个hand指针;在缓冲区中的每一比特位代表着不同key/value对象近期状态——1代表近期使用过和0代表没有使用过。
具体包括下述步骤:
4a)Update函数在每次关键字访问时简单地将其设置为1;
4b)Evict依据hand的指向来检查此比特位所处状态。如果为0,我们则选择相应的key/value对象进行替换;若为1,则将此位重置为0并且将hand在双向循环链表中向前移动直到出现比特位为0。
这一步骤主要就是为了对记录的状态信息进行更新以及追加新纪录,通过哈希机制模块进行的操作,改进后的页面置换算法需要如此做。首先根据内存空间是否足够来判断该进行何种操作,如果内存空间充足的话,这可以直接追加新纪录,并且将该记录的访问位设置为1,表示已访问,同时更新其时间戳,并且结束这一操作流程;但是如果内存空间不足够容纳或者说到达指定容量时,这个时候就要选择一个记录移除出内存空间,hand指针指向需要替换的元素,如果根据指向的记录的访问位以及时间戳进行判断,如果这个记录没有访问过且没有超期,则hand指向下一个记录,进行下一次尝试;如果已经访问过但是超期了或者没有访问过但是也已经超期了,则需要将该记录替换为新纪录,从而进行访问位的设置为1以及将时间戳更新为当下,这样就可以去除LRU在读操作锁机制的粒度,最后就跳转到步骤5。
步骤5,就到了整体流程的结束阶段了,对记录的插入、查找以及删除操作就结束了。
Claims (6)
1.一种高并发和高空间利用率的分布式缓存方法,其特征在于,该方法包括下述步骤:
步骤1,哈希算法的优化,用Hopscotch hashing构建四张哈希表,并对Hopscotch hashing的哈希数据结构进行改进;
步骤2,页面置换算法的优化,对原有LRU置换机制进行改进优化,将近期最少使用LRU算法基于双向链表的实现替换为双向循环链表,并且添加hand指针指向需要置换的数据;
步骤3,判断Hopscotch哈希算法在并发改进后数据是否存在,若存在,则进入下一步,若不存在,则判断内存空间是否充足;
步骤4,判断内存空间是否充足,根据缓存系统的内存大小判断数据是否能够存储,如果内存空间不足,则进行下一步页面置换机制;如果空间足够,即可存储数据,自此,完成高并发和高空间利用率的分布式缓存。
2.根据权利要求1所述的分布式缓存方法,其特征在于,所述步骤1中,对Hopscotchhashing的哈希数据结构进行改进,包括下述步骤:
1a)Hopscotch哈希算法初始化构建四张哈希表,这些哈希表并行排列,通过二位数组来维护这一哈希表数据结构;
1b)添加记录时,从0行开始,该记录通过哈希函数得到其在0行的哈希表位置,如果该位置为空,则直接插入该位置;如果不为空,则继续探测下一行相同位置,以此类推;
1c)如果到达第3行,该位置不为空,故在此行再进行Hopscotch hashing移位过程;
1d)如果第3行的哈希表的位置已满,则移向上一行,在进行1c)的操作。
3.根据权利要求1所述的分布式缓存方法,其特征在于,所述步骤1中,仅允许一次只有一个写线程对一个哈希表进行操作;每次只对一个哈希表进行线性探测移位空间。
4.根据权利要求1所述的分布式缓存方法,其特征在于,所述步骤2中,对原有LRU置换机制进行改进优化,包括以下步骤:
2a)hand指针在循环链表中指向需要置换的元素;
2b)更新操作update,在缓存中查询一个关键字后,更新该关键字的状态;
2c)删除操作evict,当追加新纪录时缓存空间不足,需要选择移除的关键字。
5.根据权利要求1所述的分布式缓存方法,其特征在于,所述步骤3中,判断Hopscotch哈希算法在并发改进后数据,执行过程包括:
3a)从指针所指向的当前位置为起点,对循环队列进行搜索,搜索A=0且M=0的第一类页面,每次将指向的第一类页面作为所选中的淘汰页,不改变访问位A在第一次扫描链表时;
3b)如果步骤3a)失败,即搜索一圈后未遇到一类页面,则开始进行第二轮扫描,搜索A=0且M=1的二类页面,将每次所遇到的第一个这类页面作为淘汰页,将所有扫描过的页面的访问位都清零在第二轮扫描时;
3c)如果第步骤3b)失败,即没有找到二类页面,则将指针指向开始的位置,并将所有的访问位清零;然后重复步骤(3a)~(3b),直至找到被淘汰页。
6.根据权利要求1所述的分布式缓存方法,其特征在于,所述步骤4中,判断内存空间是否充足,进行数据存储,包括下述步骤:
4a)Update函数在每次关键字访问时简单地将其设置为1;
4b)Evict依据hand的指向来检查此比特位所处状态,如果为0,我们则选择相应的key/value对象进行替换;若为1,则将此位重置为0并且将hand在双向循环链表中向前移动直到出现比特位为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410811138.XA CN104504076A (zh) | 2014-12-22 | 2014-12-22 | 一种高并发和高空间利用率的分布式缓存方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410811138.XA CN104504076A (zh) | 2014-12-22 | 2014-12-22 | 一种高并发和高空间利用率的分布式缓存方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104504076A true CN104504076A (zh) | 2015-04-08 |
Family
ID=52945474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410811138.XA Pending CN104504076A (zh) | 2014-12-22 | 2014-12-22 | 一种高并发和高空间利用率的分布式缓存方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104504076A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844706A (zh) * | 2017-02-06 | 2017-06-13 | 广东神马搜索科技有限公司 | 更新网页存储的方法、设备、网页存储系统和搜索系统 |
CN107239230A (zh) * | 2016-03-29 | 2017-10-10 | 三星电子株式会社 | 用于高效存储器内嵌去重应用的最优化的跳房子多散列表 |
CN108090058A (zh) * | 2016-11-21 | 2018-05-29 | 广东亿迅科技有限公司 | 一种高并发活动交互方法 |
CN111221647A (zh) * | 2019-12-25 | 2020-06-02 | 天津中科曙光存储科技有限公司 | 一种分布式存储缓存回收的优化算法及装置 |
CN111782613A (zh) * | 2020-06-23 | 2020-10-16 | 南昌航空大学 | 一种优化模型集成平台运行效率的方法 |
CN112468522A (zh) * | 2021-02-02 | 2021-03-09 | 江苏北弓智能科技有限公司 | 基于lru缓存机制的图形流实时增量更新方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050171937A1 (en) * | 2004-02-02 | 2005-08-04 | Hughes Martin W. | Memory efficient hashing algorithm |
CN102314485A (zh) * | 2011-07-27 | 2012-01-11 | 中国科学院计算机网络信息中心 | 哈希表添加、查找和删除方法及装置 |
CN103678172A (zh) * | 2013-12-25 | 2014-03-26 | Tcl集团股份有限公司 | 一种本地数据缓存管理方法及装置 |
-
2014
- 2014-12-22 CN CN201410811138.XA patent/CN104504076A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050171937A1 (en) * | 2004-02-02 | 2005-08-04 | Hughes Martin W. | Memory efficient hashing algorithm |
CN102314485A (zh) * | 2011-07-27 | 2012-01-11 | 中国科学院计算机网络信息中心 | 哈希表添加、查找和删除方法及装置 |
CN103678172A (zh) * | 2013-12-25 | 2014-03-26 | Tcl集团股份有限公司 | 一种本地数据缓存管理方法及装置 |
Non-Patent Citations (2)
Title |
---|
杨娣: ""分布式缓存系统的内存利用率和并发性能优化机制"", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
王珍玲等: ""一种基于局部性原则的时钟置换改进算法"", 《计算机与现代化》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239230A (zh) * | 2016-03-29 | 2017-10-10 | 三星电子株式会社 | 用于高效存储器内嵌去重应用的最优化的跳房子多散列表 |
CN107239230B (zh) * | 2016-03-29 | 2022-04-05 | 三星电子株式会社 | 用于高效存储器内嵌去重应用的最优化的跳房子多散列表 |
CN108090058A (zh) * | 2016-11-21 | 2018-05-29 | 广东亿迅科技有限公司 | 一种高并发活动交互方法 |
CN106844706A (zh) * | 2017-02-06 | 2017-06-13 | 广东神马搜索科技有限公司 | 更新网页存储的方法、设备、网页存储系统和搜索系统 |
CN111221647A (zh) * | 2019-12-25 | 2020-06-02 | 天津中科曙光存储科技有限公司 | 一种分布式存储缓存回收的优化算法及装置 |
CN111221647B (zh) * | 2019-12-25 | 2023-07-07 | 天津中科曙光存储科技有限公司 | 一种分布式存储缓存回收的优化方法及装置 |
CN111782613A (zh) * | 2020-06-23 | 2020-10-16 | 南昌航空大学 | 一种优化模型集成平台运行效率的方法 |
CN111782613B (zh) * | 2020-06-23 | 2023-06-02 | 南昌航空大学 | 一种优化模型集成平台运行效率的方法 |
CN112468522A (zh) * | 2021-02-02 | 2021-03-09 | 江苏北弓智能科技有限公司 | 基于lru缓存机制的图形流实时增量更新方法及装置 |
CN112468522B (zh) * | 2021-02-02 | 2021-04-13 | 江苏北弓智能科技有限公司 | 基于lru缓存机制的图形流实时增量更新方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108009008B (zh) | 数据处理方法和系统、电子设备 | |
US9672235B2 (en) | Method and system for dynamically partitioning very large database indices on write-once tables | |
CN104504076A (zh) | 一种高并发和高空间利用率的分布式缓存方法 | |
CN100541455C (zh) | 使用请求调页技术的系统中减少页替换时间的方法和设备 | |
CN110825748B (zh) | 利用差异化索引机制的高性能和易扩展的键值存储方法 | |
US8868926B2 (en) | Cryptographic hash database | |
CN107168657B (zh) | 一种基于分布式块存储的虚拟磁盘分层缓存设计方法 | |
CN103885728B (zh) | 一种基于固态盘的磁盘缓存系统 | |
CN104115133B (zh) | 用于复合非易失性存储设备的数据迁移的方法、系统和设备 | |
EP2735978A1 (en) | Storage system and management method used for metadata of cluster file system | |
US9158802B2 (en) | Database partition management | |
US20190179752A1 (en) | Multi-level caching method and multi-level caching system for enhancing graph processing performance | |
CN105183839A (zh) | 一种基于Hadoop的小文件分级索引的存储优化方法 | |
US11269772B2 (en) | Persistent memory storage engine device based on log structure and control method thereof | |
US9612975B2 (en) | Page cache device and method for efficient mapping | |
CN108021717B (zh) | 一种轻量级嵌入式文件系统的实现方法 | |
CN103106286A (zh) | 元数据的管理方法和装置 | |
Jin et al. | Read/write-optimized tree indexing for solid-state drives | |
CN101236564A (zh) | 一种海量数据高性能读取显示方法 | |
JP2012168781A (ja) | 分散型データストアシステム及び分散型データストアシステムにおけるレコード管理方法 | |
KR20160121819A (ko) | 이종 메모리 기반 데이터 관리 장치 | |
JP6194875B2 (ja) | キャッシュ装置、キャッシュシステム、キャッシュ方法、及びキャッシュプログラム | |
KR100921683B1 (ko) | 키-값 데이터 모델을 위한 메모리 페이지 내 데이터저장방법 | |
US20180275874A1 (en) | Storage system and processing method | |
CN112148640A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150408 |
|
WD01 | Invention patent application deemed withdrawn after publication |