CN103491124A - 一种对彩信数据进行处理的方法及分布式缓存系统 - Google Patents

一种对彩信数据进行处理的方法及分布式缓存系统 Download PDF

Info

Publication number
CN103491124A
CN103491124A CN201210195876.7A CN201210195876A CN103491124A CN 103491124 A CN103491124 A CN 103491124A CN 201210195876 A CN201210195876 A CN 201210195876A CN 103491124 A CN103491124 A CN 103491124A
Authority
CN
China
Prior art keywords
multimedia message
message data
keynode
data
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.)
Granted
Application number
CN201210195876.7A
Other languages
English (en)
Other versions
CN103491124B (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201210195876.7A priority Critical patent/CN103491124B/zh
Publication of CN103491124A publication Critical patent/CN103491124A/zh
Application granted granted Critical
Publication of CN103491124B publication Critical patent/CN103491124B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

本发明公开了一种对彩信数据进行处理的方法及分布式缓存系统,所述方法应用于包含彩信系统及分布式缓存系统的网络结构中,包括:所述分布式缓存系统采用全索引扫描(IFS)存储方式对所述彩信系统发来的彩信数据进行存储。所述分布式缓存系统,包括:接收模块,用于接收彩信系统发来的彩信数据;处理模块,用于采用全索引扫描(IFS)存储方式将所述接收模块接收到的彩信数据写入到存储模块中;所述存储模块,用于保存所述处理模块写入到本模块中的彩信数据。本发明使用了分布式缓存系统读写效率较高的IFS存储模式,存储效率与NAS设备相当,但成本更加低廉。

Description

一种对彩信数据进行处理的方法及分布式缓存系统
技术领域
本发明涉及分布式数据存储技术领域,尤其涉及一种对彩信数据进行处理的方法及分布式缓存系统。
背景技术
云计算(Cloud Computing)是网格计算(Grid Computing)、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(UtilityComputing)网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机技术和网络技术发展融合的产物。它旨在通过网络把多个成本相对较低的计算实体整合成一个具有强大计算能力的系统。分布式缓存是云计算范畴中的一个领域,其作用是提供海量数据的分布式存储服务以及高速读写访问的能力,具有很强的可扩展性,且对于服务器硬件要求非常低,可以大大降低硬件成本。
现有的彩信系统中,底层的存储使用的是传统的NAS(Network-AttachedStorage,网络附加存储)设备,但传统的NAS设备面临着硬件成本和许可证昂贵的问题。
发明内容
本发明所要解决的技术问题是提供一种对彩信数据进行处理的方法及分布式缓存系统,以克服现有彩信系统中硬件使用成本过高的缺陷。
为解决上述问题,本发明提供了一种对彩信数据进行处理的方法,应用于包含彩信系统及分布式缓存系统的网络结构中,所述方法包括:
所述分布式缓存系统采用全索引扫描(IFS)存储方式对所述彩信系统发来的彩信数据进行存储。
进一步地,所述方法具体包括:
在接收到所述彩信系统发来的携带有待写入的彩信数据及所述彩信数据对应的关键字(key)值的写数据命令时,所述分布式缓存系统先根据所述key值的哈希值在哈希表中查找对应的Keynode的存储地址信息;其中,每一条Keynode为包含所述分布式缓存系统中保存的一条彩信数据的key值、key的长度信息、该彩信数据的长度及该彩信数据在数据文件中的存储位置信息的记录;
如果未找到,则将所述待写入的彩信数据存储到当前活动的数据文件中,并在内存中相应地增加一条Keynode,将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中。
进一步地,所述方法还包括:
如果所述分布式缓存系统根据所述key值的哈希值在哈希表中查找到对应的Keynode的存储地址信息,则根据查找的Keynode的存储地址信息找到相应的Keynode,在判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同时,根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,使用所述待写入的彩信数据对该存储位置存储的数据进行更新,并相应的更新该Keynode中的信息。
进一步地,
当待新增的Keynode中的key值超过预配置的key值最大字节数时,所述将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中,具体包括:
先对该key值经过md5处理后,将所述Keynode的存储地址信息与经过md5处理的所述彩信数据对应的key值的对应关系写入所述哈希表中。
进一步地,
当待新增的Keynode中的key值超过预配置的key值最大字节数字节时,所述判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同,具体包括:
判断出经过md5处理的所述待写入的彩信数据对应的key值与查找到的Keynode中包含的key值不同。
进一步地,所述方法还包括:
在收到删除数据命令时,所述分布式缓存系统根据所述删除数据命令中携带的待删除数据对应的key值在内存中查询包含该key值的Keynode;如果查找到,则根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,将该条彩信数据在该相应的数据文件中标记为删除,并将该条Keynode放到空闲的Keynode的链表中。
进一步地,
所述写数据命令中还携带有待写入的彩信数据的有效时间信息;
所述分布式缓存系统在将所述待写入的彩信数据存储到当前活动的数据文件中时,还将所述待写入的彩信数据的有效时间信息一同进行存储;
所述分布式缓存系统中预配置有开始清理时间信息;
所述方法还包括:在所述开始清理时间到来时,所述分布式缓存系统开始进行数据整理,对每个数据文件进行轮询;
对于每一个数据文件中保存的每一条彩信数据,当判断出该条彩信数据的有效时间已过期且未被标记为删除时,将该条彩信数据标记为删除;
对于每一个数据文件,当判断出整个数据文件中的所有彩信数据都已被标记为删除后,将整个数据文件删除。
相应地,本发明还提供了一种分布式缓存系统,包括:
接收模块,用于接收彩信系统发来的彩信数据;
处理模块,用于采用全索引扫描(IFS)存储方式将所述接收模块接收到的彩信数据写入到存储模块中;
所述存储模块,用于保存所述处理模块写入到本模块中的彩信数据。
进一步地,
所述处理模块用于在所述接收模块接收到所述彩信系统发来的携带有待写入的彩信数据及所述彩信数据对应的关键字(key)值的写数据命令时,根据所述key值的哈希值在哈希表中查找对应的Keynode的存储地址信息;其中,每一条Keynode为包含所述分布式缓存系统中保存的一条彩信数据的key值、key的长度信息、该彩信数据的长度及该彩信数据在数据文件中的存储位置信息的记录;
所述处理模块还用于在未找到对应的Keynode的存储地址信息时,将所述待写入的彩信数据存储到所述存储模块中的当前活动的数据文件中,并在内存中相应地增加一条Keynode,将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中。
进一步地,
所述处理模块还用于在根据所述key值的哈希值在哈希表中查找到对应的Keynode的存储地址信息时,根据查找的Keynode的存储地址信息找到相应的Keynode,在判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同时,根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,使用所述待写入的彩信数据对该存储位置存储的数据进行更新,并相应的更新该Keynode中的信息。
进一步地,
所述处理模块在判断出待新增的Keynode中的key值超过预配置的key值最大字节数时,所述将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中,具体包括:
所述处理模块用于先对该key值经过md5处理后,将所述Keynode的存储地址信息与经过md5处理的所述彩信数据对应的key值的对应关系写入所述哈希表中。
进一步地,
所述处理模块还用于在判断出待新增的Keynode中的key值超过预配置的key值最大字节数时,所述判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同,具体包括:
所述处理模块用于判断出经过md5处理的所述待写入的彩信数据对应的key值与查找到的Keynode中包含的key值不同。
进一步地,
所述接收模块还用于接收删除数据命令;
所述处理模块还用于在所述接收模块收到所述删除数据命令时,根据所述删除数据命令中携带的待删除数据对应的key值在内存中查询包含该key值的Keynode;如果查找到,则根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,将该条彩信数据在该相应的数据文件中标记为删除,并将该条Keynode放到空闲的Keynode的链表中。
进一步地,
所述写数据命令中还携带有待写入的彩信数据的有效时间信息;所述存储模块中还预配置有开始清理时间信息;
所述处理模块还用于在将所述待写入的彩信数据存储到当前活动的数据文件中时,将所述待写入的彩信数据的有效时间信息一同进行存储;所述处理模块还用于在所述开始清理时间到来时,开始进行数据整理,对每个数据文件进行轮询;对于每一个数据文件中保存的每一条彩信数据,当判断出该条彩信数据的有效时间已过期且未被标记为删除时,将该条彩信数据标记为删除;对于每一个数据文件,当判断出整个数据文件中的所有彩信数据都已被标记为删除后,将整个数据文件删除。
本发明使用了分布式缓存系统读写效率较高的IFS存储模式,存储效率与NAS设备相当,但成本更加低廉。
附图说明
图1是本发明实施例中基于分布式缓存系统进行彩信数据存取的系统的网元结构图;
图2是本发明实施例中分布式缓存系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
由于分布式缓存可以部署在廉价的PC Server(服务器)上,并且配合着自身的一些特性(如数据整理,即将过期数据定时进行清理),可以很好的支持彩信系统的应用。
鉴于现有的彩信系统使用NAS设备面临高昂的硬件和维护费用,本实施例提出了一种使用分布式缓存代替传统NAS设备作为彩信系统的数据存储服务器的方法,使彩信系统的相关数据存储于部署在廉价的PC Server上的分布式缓存系统中,结合分布式缓存自身的特性,如:IFS(Index Full Scan,全索引扫描)持久化存储模式、定时整理过期数据的功能,使彩信系统的使用成本大大降低,并且存储性能与之前的NAS设备相当。
传统的持久化存储方案其索引都建立在磁盘文件中,查询索引、更新、读取数据都会产生随机访问磁盘,响应一次应用读或写请求,持久化存储系统要发生若干次磁盘随机IO(Input/Output,输入/输出)访问,因此很容易产生IO瓶颈。IFS存储方案的主要技术特点是使磁盘随机IO访问变成顺序IO访问,并尽可能减少磁盘访问,从而能大大提高持久化存储的效率。
在本实施例中,基于分布式缓存系统进行彩信数据存取的系统结构,如图1所示,包括:彩信系统、客户端及分布式缓存系统。
其中,分布式缓存系统被安装布置在多个数据存储服务器上,使之成为一个集群,对外可视作是一个存储设备,即相当于多个数据存储服务器共同构成了分布式缓存系统,数据更加安全,且系统存储容量也方便动态扩展;通过本系统中提供客户端接口,可将彩信系统的相关数据存入分布式缓存系统中。
在上述系统中,由分布式缓存系统对彩信数据进行处理的方法,包括:
一、将接收到的写请求、更新请求和删除请求转换为顺序写操作,提高了写数据的效率,存取效率与NAS设备基本相当。具体包括:
A、写数据;
在分布式缓存系统中采用IFS存储方式来存储彩信数据;即在写彩信数据时,直接将该彩信数据写入当前活动的数据文件。其中,在任意时刻,活动的数据文件只有一个。
在接收到待写入的彩信数据及该彩信数据对应的key(关键字)值时,分布式缓存系统先会根据该key值的hash(哈希)值在HASH TABLE(哈希表)中查找对应的Keynode的存储地址信息;其中,每一条Keynode即为包含分布式缓存系统中保存的一条彩信数据的key值、key的长度信息、该彩信数据的长度及该彩信数据在数据文件中的存储位置信息的记录。
如果未找到,则将上述待写入的彩信数据存储到当前活动的数据文件中,并在内存中相应地增加一条Keynode,将该Keynode的存储地址信息与该彩信数据对应的key值的对应关系写入HASH TABLE中;
如果找到,则根据查找的Keynode的存储地址信息找到相应的Keynode,比较该条Keynode中包含的key值与待写入的彩信数据对应的key值是否相同,若相同,则不进行更新操作;若不同,则根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,使用上述待写入的彩信数据对该存储位置存储的数据进行更新,并相应的更新该Keynode中的信息(如key值、key的长度信息、该彩信数据的长度中的任意一种或任意组合,需视具体情况而定)。
由于采用IFS存储模式时,一般要求Keynode中存储的key值的长度不能超过预配置的key值最大字节数(现有通常配置为70个字节)。因此,当待新增的Keynode中的key值超过70个字节时,可先对该key值经过md5处理后再进行保存。相应地,在将待写入的彩信数据对应的key值与查找到的Keynode中包含的key值进行比较时,如该待写入的彩信数据对应的key值的长度超过了70个字节,则先对该key值进行md5处理后,再进行比较。
B、删除数据;
在收到删除数据命令时,分布式缓存系统根据该删除数据命令中携带的待删除数据对应的key值在内存中查询包含该key值的Keynode;如未查找到,则返回删除失败提示;如果查找到,则根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,将该条彩信数据在该相应的数据文件中标记为删除,并将该条Keynode放到freelisthead(空闲的Keynode的链表,用于回收重用Keynode)中。同时检查内存缓存中是否有该条彩信数据,如有则一并删除。
二、过期数据的定期整理,定期批量删除过期数据,回收无效数据占用的磁盘空间。具体包括:
步骤A:用户可通过客户端开启分布式缓存系统的过期数据定时清理的功能,并设定清理的时间段,该时间段包括:开始清理时间和结束清理时间,也就是说,清理操作只是在这个时间段内进行,超出该时间段,不进行任何清理操作;
步骤B:由于在向分布式缓存系统中写入彩信数据时,会将该彩信数据的有效时间一同写入数据文件。因此,在开始清理时间到来时,分布式缓存系统开始进行数据整理,对每个数据文件进行轮询;
对于每一个数据文件中保存的每一条彩信数据,当判断出该条彩信数据的有效时间已过期且未被标记为删除时,将该条彩信数据标记为删除;
对于每一个数据文件,当判断出整个数据文件中的所有彩信数据都已被标记为删除后,将整个数据文件删除。
从上述说明可以看出,上述方法将磁盘的随机IO访问变成顺序IO访问,并尽可能减少磁盘访问,同时使用基于内存的存储的索引技术,从而能大大提高持久化存储的效率,在同等磁盘数量下,存取效率与NAS设备基本相当。根据每条数据自身的有效时间,每天定时的将过期的彩信数据进行清理。本发明解决了彩信系统使用传统NAS存储设备价格昂贵的问题。使用分布式缓存作为存储设备以后,硬件可由高成本的NAS变成低成本的PC Server。并且,分布式缓存IFS存储数据和定时清理过期数据的特性,也非常符合彩信系统的需求。
相应地,在本实例中,一种分布式缓存系统,如图2所示,包括:
接收模块,用于接收彩信系统发来的彩信数据;
处理模块,用于采用全索引扫描(IFS)存储方式将所述接收模块接收到的彩信数据写入到存储模块中;
所述存储模块,用于保存所述处理模块写入到本模块中的彩信数据。
较佳地,
所述处理模块用于在所述接收模块接收到所述彩信系统发来的携带有待写入的彩信数据及所述彩信数据对应的关键字(key)值的写数据命令时,根据所述key值的哈希值在哈希表中查找对应的Keynode的存储地址信息;其中,每一条Keynode为包含所述分布式缓存系统中保存的一条彩信数据的key值、key的长度信息、该彩信数据的长度及该彩信数据在数据文件中的存储位置信息的记录;
所述处理模块还用于在未找到对应的Keynode的存储地址信息时,将所述待写入的彩信数据存储到所述存储模块中的当前活动的数据文件中,并在内存中相应地增加一条Keynode,将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中。
较佳地,
所述处理模块还用于在根据所述key值的哈希值在哈希表中查找到对应的Keynode的存储地址信息时,根据查找的Keynode的存储地址信息找到相应的Keynode,在判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同时,根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,使用所述待写入的彩信数据对该存储位置存储的数据进行更新,并相应的更新该Keynode中的信息。
较佳地,
所述处理模块在判断出待新增的Keynode中的key值超过预配置的key值最大字节数时,所述将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中,具体包括:
所述处理模块用于先对该key值经过md5处理后,将所述Keynode的存储地址信息与经过md5处理的所述彩信数据对应的key值的对应关系写入所述哈希表中。
较佳地,
所述处理模块还用于在判断出待新增的Keynode中的key值超过预配置的key值最大字节数时,所述判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同,具体包括:
所述处理模块用于判断出经过md5处理的所述待写入的彩信数据对应的key值与查找到的Keynode中包含的key值不同。
较佳地,
所述接收模块还用于接收删除数据命令;
所述处理模块还用于在所述接收模块收到所述删除数据命令时,根据所述删除数据命令中携带的待删除数据对应的key值在内存中查询包含该key值的Keynode;如果查找到,则根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,将该条彩信数据在该相应的数据文件中标记为删除,并将该条Keynode放到空闲的Keynode的链表中。
较佳地,
所述写数据命令中还携带有待写入的彩信数据的有效时间信息;所述存储模块中还预配置有开始清理时间信息;
所述处理模块还用于在将所述待写入的彩信数据存储到当前活动的数据文件中时,将所述待写入的彩信数据的有效时间信息一同进行存储;所述处理模块还用于在所述开始清理时间到来时,开始进行数据整理,对每个数据文件进行轮询;对于每一个数据文件中保存的每一条彩信数据,当判断出该条彩信数据的有效时间已过期且未被标记为删除时,将该条彩信数据标记为删除;对于每一个数据文件,当判断出整个数据文件中的所有彩信数据都已被标记为删除后,将整个数据文件删除。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上所述仅为本发明的优选实施例而已,并非用于限定本发明的保护范围。根据本发明的发明内容,还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种对彩信数据进行处理的方法,应用于包含彩信系统及分布式缓存系统的网络结构中,所述方法包括:
所述分布式缓存系统采用全索引扫描(IFS)存储方式对所述彩信系统发来的彩信数据进行存储。
2.如权利要求1所述的方法,其特征在于,具体包括:
在接收到所述彩信系统发来的携带有待写入的彩信数据及所述彩信数据对应的关键字(key)值的写数据命令时,所述分布式缓存系统先根据所述key值的哈希值在哈希表中查找对应的Keynode的存储地址信息;其中,每一条Keynode为包含所述分布式缓存系统中保存的一条彩信数据的key值、key的长度信息、该彩信数据的长度及该彩信数据在数据文件中的存储位置信息的记录;
如果未找到,则将所述待写入的彩信数据存储到当前活动的数据文件中,并在内存中相应地增加一条Keynode,将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中。
3.如权利要求2所述的方法,其特征在于,还包括:
如果所述分布式缓存系统根据所述key值的哈希值在哈希表中查找到对应的Keynode的存储地址信息,则根据查找的Keynode的存储地址信息找到相应的Keynode,在判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同时,根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,使用所述待写入的彩信数据对该存储位置存储的数据进行更新,并相应的更新该Keynode中的信息。
4.如权利要求2所述的方法,其特征在于:
当待新增的Keynode中的key值超过预配置的key值最大字节数时,所述将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中,具体包括:
先对该key值经过md5处理后,将所述Keynode的存储地址信息与经过md5处理的所述彩信数据对应的key值的对应关系写入所述哈希表中。
5.如权利要求3所述的方法,其特征在于:
当待新增的Keynode中的key值超过预配置的key值最大字节数字节时,所述判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同,具体包括:
判断出经过md5处理的所述待写入的彩信数据对应的key值与查找到的Keynode中包含的key值不同。
6.如权利要求2所述的方法,其特征在于,还包括:
在收到删除数据命令时,所述分布式缓存系统根据所述删除数据命令中携带的待删除数据对应的key值在内存中查询包含该key值的Keynode;如果查找到,则根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,将该条彩信数据在该相应的数据文件中标记为删除,并将该条Keynode放到空闲的Keynode的链表中。
7.如权利要求2或6所述的方法,其特征在于:
所述写数据命令中还携带有待写入的彩信数据的有效时间信息;
所述分布式缓存系统在将所述待写入的彩信数据存储到当前活动的数据文件中时,还将所述待写入的彩信数据的有效时间信息一同进行存储;
所述分布式缓存系统中预配置有开始清理时间信息;
所述方法还包括:在所述开始清理时间到来时,所述分布式缓存系统开始进行数据整理,对每个数据文件进行轮询;
对于每一个数据文件中保存的每一条彩信数据,当判断出该条彩信数据的有效时间已过期且未被标记为删除时,将该条彩信数据标记为删除;
对于每一个数据文件,当判断出整个数据文件中的所有彩信数据都已被标记为删除后,将整个数据文件删除。
8.一种分布式缓存系统,包括:
接收模块,用于接收彩信系统发来的彩信数据;
处理模块,用于采用全索引扫描(IFS)存储方式将所述接收模块接收到的彩信数据写入到存储模块中;
所述存储模块,用于保存所述处理模块写入到本模块中的彩信数据。
9.如权利要求8所述的分布式缓存系统,其特征在于:
所述处理模块用于在所述接收模块接收到所述彩信系统发来的携带有待写入的彩信数据及所述彩信数据对应的关键字(key)值的写数据命令时,根据所述key值的哈希值在哈希表中查找对应的Keynode的存储地址信息;其中,每一条Keynode为包含所述分布式缓存系统中保存的一条彩信数据的key值、key的长度信息、该彩信数据的长度及该彩信数据在数据文件中的存储位置信息的记录;
所述处理模块还用于在未找到对应的Keynode的存储地址信息时,将所述待写入的彩信数据存储到所述存储模块中的当前活动的数据文件中,并在内存中相应地增加一条Keynode,将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中。
10.如权利要求9所述的分布式缓存系统,其特征在于:
所述处理模块还用于在根据所述key值的哈希值在哈希表中查找到对应的Keynode的存储地址信息时,根据查找的Keynode的存储地址信息找到相应的Keynode,在判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同时,根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,使用所述待写入的彩信数据对该存储位置存储的数据进行更新,并相应的更新该Keynode中的信息。
11.如权利要求9所述的分布式缓存系统,其特征在于:
所述处理模块在判断出待新增的Keynode中的key值超过预配置的key值最大字节数时,所述将所述Keynode的存储地址信息与所述彩信数据对应的key值的对应关系写入所述哈希表中,具体包括:
所述处理模块用于先对该key值经过md5处理后,将所述Keynode的存储地址信息与经过md5处理的所述彩信数据对应的key值的对应关系写入所述哈希表中。
12.如权利要求10所述的分布式缓存系统,其特征在于:
所述处理模块还用于在判断出待新增的Keynode中的key值超过预配置的key值最大字节数时,所述判断出该条Keynode中包含的key值与所述待写入的彩信数据对应的key值不同,具体包括:
所述处理模块用于判断出经过md5处理的所述待写入的彩信数据对应的key值与查找到的Keynode中包含的key值不同。
13.如权利要求9所述的分布式缓存系统,其特征在于:
所述接收模块还用于接收删除数据命令;
所述处理模块还用于在所述接收模块收到所述删除数据命令时,根据所述删除数据命令中携带的待删除数据对应的key值在内存中查询包含该key值的Keynode;如果查找到,则根据该条Keynode中包含的彩信数据在数据文件中的存储位置信息,将该条彩信数据在该相应的数据文件中标记为删除,并将该条Keynode放到空闲的Keynode的链表中。
14.如权利要求9或13所述的分布式缓存系统,其特征在于:
所述写数据命令中还携带有待写入的彩信数据的有效时间信息;所述存储模块中还预配置有开始清理时间信息;
所述处理模块还用于在将所述待写入的彩信数据存储到当前活动的数据文件中时,将所述待写入的彩信数据的有效时间信息一同进行存储;所述处理模块还用于在所述开始清理时间到来时,开始进行数据整理,对每个数据文件进行轮询;对于每一个数据文件中保存的每一条彩信数据,当判断出该条彩信数据的有效时间已过期且未被标记为删除时,将该条彩信数据标记为删除;对于每一个数据文件,当判断出整个数据文件中的所有彩信数据都已被标记为删除后,将整个数据文件删除。
CN201210195876.7A 2012-06-14 2012-06-14 一种对彩信数据进行处理的方法及分布式缓存系统 Active CN103491124B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210195876.7A CN103491124B (zh) 2012-06-14 2012-06-14 一种对彩信数据进行处理的方法及分布式缓存系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210195876.7A CN103491124B (zh) 2012-06-14 2012-06-14 一种对彩信数据进行处理的方法及分布式缓存系统

Publications (2)

Publication Number Publication Date
CN103491124A true CN103491124A (zh) 2014-01-01
CN103491124B CN103491124B (zh) 2018-08-14

Family

ID=49831081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210195876.7A Active CN103491124B (zh) 2012-06-14 2012-06-14 一种对彩信数据进行处理的方法及分布式缓存系统

Country Status (1)

Country Link
CN (1) CN103491124B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104113830A (zh) * 2014-07-29 2014-10-22 广东能龙教育股份有限公司 一种基于md5和分布式缓存的大规模短信防重发方法
CN105653198A (zh) * 2014-11-13 2016-06-08 杭州迪普科技有限公司 数据处理方法及装置
WO2018145227A1 (en) * 2017-02-13 2018-08-16 Pivotal Software, Inc. Managing data records in object-based cloud storage systems

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163265A (zh) * 2007-11-20 2008-04-16 中兴通讯股份有限公司 基于分布式数据库的彩信日志查询方法与系统
US20100268902A1 (en) * 2009-04-21 2010-10-21 Google Inc. Asynchronous distributed object uploading for replicated content addressable storage clusters
CN101997911A (zh) * 2010-10-21 2011-03-30 中兴通讯股份有限公司 一种数据迁移的方法及系统
CN102317938A (zh) * 2008-12-22 2012-01-11 谷歌公司 用于复制内容可寻址存储集群的异步分布式去重
CN102387169A (zh) * 2010-08-26 2012-03-21 阿里巴巴集团控股有限公司 分布式缓存的对象删除方法、系统及删除服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163265A (zh) * 2007-11-20 2008-04-16 中兴通讯股份有限公司 基于分布式数据库的彩信日志查询方法与系统
CN102317938A (zh) * 2008-12-22 2012-01-11 谷歌公司 用于复制内容可寻址存储集群的异步分布式去重
US20100268902A1 (en) * 2009-04-21 2010-10-21 Google Inc. Asynchronous distributed object uploading for replicated content addressable storage clusters
CN102387169A (zh) * 2010-08-26 2012-03-21 阿里巴巴集团控股有限公司 分布式缓存的对象删除方法、系统及删除服务器
CN101997911A (zh) * 2010-10-21 2011-03-30 中兴通讯股份有限公司 一种数据迁移的方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
董惟: "基于分布式结构的数据业务管理系统", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104113830A (zh) * 2014-07-29 2014-10-22 广东能龙教育股份有限公司 一种基于md5和分布式缓存的大规模短信防重发方法
CN105653198A (zh) * 2014-11-13 2016-06-08 杭州迪普科技有限公司 数据处理方法及装置
WO2018145227A1 (en) * 2017-02-13 2018-08-16 Pivotal Software, Inc. Managing data records in object-based cloud storage systems

Also Published As

Publication number Publication date
CN103491124B (zh) 2018-08-14

Similar Documents

Publication Publication Date Title
US8799601B1 (en) Techniques for managing deduplication based on recently written extents
CN102694828B (zh) 一种分布式缓存系统数据存取的方法及装置
CN107179878B (zh) 基于应用优化的数据存储的方法和装置
US10585611B2 (en) Inline deduplication
CN105549905A (zh) 一种多虚拟机访问分布式对象存储系统的方法
CN105183839A (zh) 一种基于Hadoop的小文件分级索引的存储优化方法
CN102467572B (zh) 支持重复数据删除程序的数据区块查询方法
CN105094695B (zh) 一种存储方法和系统
CN105027069A (zh) 卷区域的重复数据删除
CN102662992A (zh) 一种海量小文件的存储、访问方法及装置
CN103501319A (zh) 一种低延迟的面向小文件的分布式存储系统
CN103034684A (zh) 一种基于内容寻址存储的虚拟机镜像存储优化方法
CN103246616A (zh) 一种长短周期访问频度的全局共享缓存替换方法
US20130297969A1 (en) File management method and apparatus for hybrid storage system
CN110908589B (zh) 数据文件的处理方法、装置、系统和存储介质
WO2013107029A1 (zh) 一种基于块存储的数据处理方法、装置及系统
CN107368608A (zh) 基于arc替换算法的hdfs小文件缓存管理方法
CN105159845A (zh) 存储器读取方法
CN113626431A (zh) 一种基于lsm树的延迟垃圾回收的键值分离存储方法及系统
WO2016041127A1 (zh) 重复数据删除方法和存储阵列
CN108089825B (zh) 一种基于分布式集群的存储系统
CN103970875A (zh) 一种并行重复数据删除方法
CN104184812A (zh) 一种基于私有云的多点数据传输方法
CN109522283A (zh) 一种重复数据删除方法及系统
US10877848B2 (en) Processing I/O operations in parallel while maintaining read/write consistency using range and priority queues in a data protection 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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180517

Address after: 210012 No. 68, Bauhinia Road, Ningnan street, Yuhuatai District, Nanjing, Jiangsu

Applicant after: Nanjing Zhongxing Software Co., Ltd.

Address before: 518057 Nanshan District high tech Industrial Park, Shenzhen, Guangdong, Ministry of justice, Zhongxing Road, South China road.

Applicant before: ZTE Corporation

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20191107

Address after: 518057 Nanshan District science and Technology Industrial Park, Guangdong high tech Industrial Park, ZTE building

Patentee after: ZTE Communications Co., Ltd.

Address before: 210012 Nanjing, Yuhuatai District, South Street, Bauhinia Road, No. 68

Patentee before: Nanjing Zhongxing Software Co., Ltd.