CN101917396A - 一种网络文件系统中数据的实时去重和传输方法 - Google Patents

一种网络文件系统中数据的实时去重和传输方法 Download PDF

Info

Publication number
CN101917396A
CN101917396A CN2010102103396A CN201010210339A CN101917396A CN 101917396 A CN101917396 A CN 101917396A CN 2010102103396 A CN2010102103396 A CN 2010102103396A CN 201010210339 A CN201010210339 A CN 201010210339A CN 101917396 A CN101917396 A CN 101917396A
Authority
CN
China
Prior art keywords
data block
file
client
data
mentioned
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
CN2010102103396A
Other languages
English (en)
Other versions
CN101917396B (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN 201010210339 priority Critical patent/CN101917396B/zh
Publication of CN101917396A publication Critical patent/CN101917396A/zh
Application granted granted Critical
Publication of CN101917396B publication Critical patent/CN101917396B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

本发明涉及一种网络文件系统中数据的实时去重和传输方法,属于计算机数据存储技术领域。首先在客户端和服务器端各设置文件元数据表、数据块索引表和文件组成表,客户端设置一个待发送消息队列,用于存储数据更新消息;客户端通过文件系统驱动接收和响应客户端应用程序对网络文件系统发起的操作命令,包括创建新文件、向已有文件写入数据、从已有文件读取数据和删除已有文件;在服务器端设置的网络服务接口,用于上传和下载数据块内容,接收和应答客户端消息。本发明方法,可删除重复数据,节省存储空间,避免在客户端与服务器端之间传输对方已有的数据,降低了网络带宽的开销;同时支持定长和不定长的文件分块方法,提高存储空间的利用效率。

Description

一种网络文件系统中数据的实时去重和传输方法
技术领域
本发明涉及一种网络文件系统中数据的实时去重和传输方法,属于计算机数据存储技术领域。
背景技术
长期以来,如何用尽可能少的空间储存尽可能多的数据以及如何以尽可能低的网络带宽开销传输尽可能多的信息一直是网络存储领域最核心问题。减少对文件中重复数据的存储和传输是解决上述问题的关键技术所在。
数据去重技术又称为重复数据删除技术,兴起于本世纪初期,近年来得到普及。数据去重的思想并不复杂:首先发掘在不同文件、同一文件不同版本、甚至同一版本的不同位置出现的相同数据单元,然后对内容互不相同的数据单元建立索引,这样就能够对每种内容的数据单元只存储一份内容,而在数据单元出现的位置仅记录该数据单元的索引。尽管数据去重技术炙手可热,但目前主要应用于数据同步、备份或归档阶段,如Sun公司提出的网络文件系统ZFS和同步备份工具Dropbox等。
Muthitacharoen等人在2001年的第18届ACM SOSP大会论文集中发表了“A Low-Bandwidth Network File System”,其中利用上述思想减少网络带宽开销。但是,在其方法中,只有当文件被关闭以后,才对整个文件进行分块和向服务器端同步,其方法至少存在下述若干显著缺点:一、数据切块和去重不是实时进行,客户端的新数据不能被及时传输到服务器端;二、切块效率低下,即使只修改文件中极小一部分内容,也需要对整个文件都重新进行切块;三、新打开一个文件时,需要先将该文件的所有数据块拼接成一个临时文件,才能对该文件进行操作,因而需等候相当长时间。
现有的其它网络系统,如网络文件系统(NFS)和服务器消息块(SMB)等,则没有采用数据去重技术,也无法提供减少存储空间占用和网络数据传输的功能。
发明内容
本发明的目的是提出一种网络文件系统中数据的实时去重和传输方法,通过文件系统驱动截获客户端的应用程序创建文件及向文件中写入的操作命令,实时进行数据的分块和去重,并只将新产生的数据块传输到服务器端,从而在根本上实现以数据块为基本存储单元的网络文件系统及其存储和组织结构,达到节省本地存储空间和网络传输带宽的目的。
本发明提出的网络文件系统中数据的实时去重和传输方法,包括以下步骤:
(1)在网络文件系统的客户端和服务器端各设置文件元数据表、数据块索引表和文件组成表;所述的文件元数据表记录网络文件系统中每个文件的元数据,该元数据包括文件标识、文件名、文件所在文件夹的标识、文件大小、文件类型、访问权限以及文件的创建、修改和访问时间;所述的数据块索引表记录网络文件系统中文件的数据块的标识以及与标识相对应的数据块的引用次数,其中数据块的标识为该数据块内容的哈希值;所述的文件组成表记录组成网络文件系统中的文件的数据块的信息,包括文件标识、起始位置、数据块大小和数据块标识,由其中的起始位置和数据块大小决定数据区域;
在网络文件系统的客户端设置一个待发送消息队列,用于存储客户端待发送给服务器端的数据更新消息;
(2)客户端通过文件系统驱动接收和响应客户端应用程序对网络文件系统发起的操作命令,该操作命令包括创建新文件、向已有文件写入数据、从已有文件读取数据和删除已有文件;
(2-1)当客户端的文件系统驱动接收到创建新文件的操作命令时,在客户端的上述文件元数据表中记录被创建文件的元数据,并将该元数据封装成一个文件元数据更新消息,再将该消息添加到客户端的上述待发送消息队列的队尾;
(2-2)当客户端的文件系统驱动接收到向已有文件写入数据的操作命令时,进行以下操作:
(2-2-1)根据操作命令中被写文件的文件标识、写入位置和写入数据大小,从客户端的上述文件组成表中检索属于该被写文件的两个数据块标识,且与该两个数据块标识相对应的两个数据块为与被写入数据区域相互重叠的首、尾两个数据块;
(2-2-2)根据检索到的数据块标识,从客户端存储的文件中读取与该数据块标识相对应的数据块内容;
(2-2-3)将读出的数据块内容中与被写入数据区域相不重叠的数据拼接到被写入数据的两侧,得到拼接后的数据及数据区域;
(2-2-4)从客户端的上述文件组成表中检索与属于该被写文件、且起始位置位于上述步骤(2-2-3)数据区域之内的数据块相对应的数据块标识;
(2-2-5)将与从客户端的上述数据块索引表中检索到的数据块标识相对应的数据块的引用次数减1,当引用次数成为0时,从客户端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块引用次数,并从客户端的存储设备上删除该数据块内容;
(2-2-6)将上述步骤(2-2-3)拼接后的数据切分成一组新数据块;
(2-2-7)从客户端的上述数据块索引表中分别搜索与上述一组新数据块相对应的每个数据块标识:若该新数据块标识已存在,则在客户端的数据块索引表中将与该新数据块标识相对应的数据块的引用次数加1,若该数据块标识为新标识,则在客户端的数据块索引表中添加该新数据块的标识,并将与该新数据块标识相对应的数据块的引用次数设置为1;在客户端存储该新数据块的内容;在客户端的上述文件组成表中记录被写文件的标识、写入位置、该新数据块的大小以及该新数据块的标识;
(2-2-8)在客户端将上述被写文件的文件标识、每个新数据块的起始位置、每个新数据块大小和每个新数据块标识封装成一个文件组成更新消息,并将该更新消息添加到客户端的上述待发送消息队列的队尾;
(2-2-9)更新客户端的上述文件元数据表中被写文件的元数据,并将该更新后的元数据封装成文件元数据更新消息,并将该更新消息添加到客户端的上述待发送消息队列的队尾;
(2-3)当客户端的文件系统驱动接收到从已有文件读取数据的操作命令时,进行以下操作:
(2-3-1)根据操作命令,在客户端的内存中分配与待读取数据的大小相等的内存空间,并将该内存空间初始化为空白;
(2-3-2)根据操作命令中的被读文件的文件标识和读取位置,从客户端的上述文件组成表中检索属于该被读文件的数据块标识,且与该数据块标识相对应的数据块是起始位置处于读取位置之前的最后一个数据块,若该数据块标识存在,且该数据块区域与待读取数据区域存在重叠,则从客户端读取该数据块内容,并将该读取的内容与待读取数据区域的重叠部分写入上述步骤(2-3-1)的内存空间的头部;
(2-3-3)根据该操作命令,从客户端的上述文件组成表中检索属于该被读文件的数据块标识,且与该数据块标识相对应的数据块的起始位置处于待读取数据区域内,遍历检索到的所有数据块标识,对每个数据块标识进行以下操作:
(2-3-3-1)判断客户端是否存有与该数据块标识相对应的数据块内容,若该内容存在,则读取该数据块内容,若该内容不存在,则从网络文件系统的服务器端下载该数据块内容,并在客户端存储该数据块内容;
(2-3-3-2)将上述数据块内容中与待读取数据区域的重叠部分写入上述步骤(2-3-1)的内存空间中;
(2-3-4)更新客户端的上述文件元数据表中被读文件的元数据,将该元数据封装成一个文件元数据更新消息,并将该消息添加到客户端的上述待发送消息队列的队尾;
(2-3-5)将上述步骤(2-3-1)的内存空间中的数据通过客户端的文件系统驱动返回给客户端的应用程序;
(2-4)当客户端的文件系统驱动接收到删除已有文件的操作命令时,进行以下操作:
(2-4-1)从客户端的上述文件组成表中检索属于被删除文件的数据块标识;
(2-4-2)在客户端的上述数据块索引表中将与检索到的每个数据块标识相对应的数据块的引用次数减1,当引用次数变为0时,从客户端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块引用次数,从客户端删除该数据块内容;
(2-4-3)从客户端的上述文件组成表中删除被删除文件的所有记录;
(2-4-4)从客户端的上述文件元数据表中删除被删除文件的元数据;
(2-4-5)在客户端将被删除文件的文件标识封装成一个文件删除消息,并将该消息添加到客户端的上述待发送消息队列的队尾;
(3)在网络文件系统的服务器端设置的网络服务接口,用于上传和下载数据块内容,以及用于接收和应答客户端消息,具体过程如下:
(3-1)当网络文件系统服务器端接收到来自网络文件系统客户端待发送消息队列中的文件元数据更新消息时,进行以下操作:
(3-1-1)从接收到的文件元数据更新消息中解析出文件的标识及该文件的元数据;
(3-1-2)判断服务器端的上述文件元数据表中是否存在该文件标识,若已存在,则将与该文件标识相对应的元数据更新为上述步骤(3-1-1)中的元数据;若该文件标识为新标识,则在服务器端的上述文件元数据表中添加该文件标识及上述步骤(3-1-1)中的元数据;
(3-2)当服务器端接收到客户端待发送消息队列中的文件组成更新消息时,进行以下操作:
(3-2-1)从接收到的文件组成更新消息中解析出文件的标识以及每个数据块的起始位置、数据块大小和数据块的标识;
(3-2-2)在服务器端的上述文件组成表中检索属于该文件的数据块标识,且与该数据块标识相对应的数据块的起始位置处于新生成数据块区域之内;
(3-2-3)在服务器端的上述数据块索引表中分别将与检索到的每个数据块标识相对应的数据块的引用次数减1,若引用次数变为0,则从服务器端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块的引用次数,从服务器端上删除该数据块内容;
(3-2-4)在服务器端的上述数据块索引表中检索上述步骤(3-2-1)的数据块标识,若该数据块标识已存在,则将与该数据块标识相对应的数据块的引用次数加1,若该数据块标识为新标识,则通知客户端上传与该数据块标识相对应的数据块内容,接收客户端上传的数据块的内容,在服务器端存储该数据块的内容,在服务器端的数据块索引表中添加该数据块的标识,并将与该数据块标识相对应的数据块的引用次数设置为1;
(3-3)当服务器端接收到客户端待发送消息队列中的文件删除消息时,进行以下操作:
(3-3-1)从接收到的文件组成更新消息中解析出被删除文件的标识;
(3-3-2)在服务器端的上述文件组成表中检索属于被删除文件的所有数据块标识;
(3-3-3)在服务器端的上述数据块索引表中将与检索到的每个数据块标识相对应的数据块的引用次数减1,若引用次数变为0,则从服务器端的数据块索引表中删除与该数据块标识相对应的数据块的引用次数,从服务器端删除该数据块内容;
(3-3-4)从服务器端的文件组成表中删除属于该被删除文件的数据块记录;
(3-3-5)从服务器端的文件元数据表中删除该被删除文件的元数据。
本发明提出的网络文件系统中数据的实时去重和传输方法,其优点是:
1、利用本发明的方法,可以删除网络文件系统中的重复数据,因此节省了客户端和服务器端的存储空间。
2、利用本发明的方法对网络文件系统中的数据进行实时去重和传输,保证了客户端产生的新数据能够被及时的传输和存储到服务器端,提高了网络文件系统中数据存储的可靠性。
3、利用本发明的方法进行网络文件的读取、写入的同时,对被修改的文件数据进行切块与拼接操作,无须处理未被修改的数据,因此极大提高了文件处理的效率。
4、本发明方法同时支持定长和不定长的文件分块方法,能够显著改善重复数据的去除效果,提高网络文件系统中客户端和服务器端的存储空间的利用效率。
5、与已有技术相比,本发明方法对新打开的文件可立即实现随机读、写操作,无须等候拼接临时文件,因此缩短了打开文件的时间。
6、本发明方法避免了在客户端与服务器端之间传输对方已有的数据,降低了网络带宽的开销。
7、与已有网络文件系统相比,本发明方法尤其适用于具有客户端移动存储设备容量小、客户端与服务器端之间经过广域网而导致带宽受限的特点的云存储环境。
附图说明
图1是本发明方法中向已有文件写入数据的过程示意图。
图2是本发明方法中计算待读取数据区域及计算向内存空间的起始写入位置示意图。
图3是本发明方法中从已有文件读取数据的过程示意图。
具体实施方式
下面结合附图,详细介绍本发明提出的网络文件系统中数据的实时去重和传输方法:
(1)在网络文件系统的客户端和服务器端各设置文件元数据表、数据块索引表和文件组成表;所述的文件元数据表记录网络文件系统中每个文件的元数据,该元数据包括文件标识、文件名、文件所在文件夹的标识、文件大小、文件类型、访问权限以及文件的创建、修改和访问时间;所述的数据块索引表记录网络文件系统中文件的数据块的标识以及与标识相对应的数据块的引用次数,其中数据块的标识为该数据块内容的哈希值;所述的文件组成表记录组成网络文件系统中的文件的数据块的信息,包括文件标识、起始位置、数据块大小和数据块标识,由其中的起始位置和数据块大小决定数据区域。
在网络文件系统的客户端设置一个待发送消息队列,用于存储客户端待发送给服务器端的数据更新消息。
(2)客户端通过文件系统驱动接收和响应客户端应用程序对网络文件系统发起的操作命令,该操作命令包括创建新文件、向已有文件写入数据、从已有文件读取数据和删除已有文件:
(2-1)当客户端的文件系统驱动接收到创建新文件的操作命令时,在客户端的上述文件元数据表中记录被创建文件的元数据,并将该元数据封装成一个文件元数据更新消息,再将该消息添加到客户端的上述待发送消息队列的队尾。
(2-2)当客户端的文件系统驱动接收到向已有文件写入数据的操作命令时,进行以下操作。
(2-2-1)根据操作命令中被写文件的文件标识、写入位置和写入数据大小,从客户端的上述文件组成表中检索属于该被写文件的两个数据块标识,且与该两个数据块标识相对应的两个数据块为与被写入数据区域相互重叠的首、尾两个数据块,具体过程可参见图1。从图1中,可以看出,网络文件系统中存在文件标识分别为1和2的两个文件,文件标识为1的文件由5个数据块组成,该5个数据块对应的数据块标识分别为A、B、C、D、E,文件标识为2的文件由3个数据块组成,该3个数据块对应的数据块标识分贝为A、D、F,客户端的文件组成表中记录了文件的组成信息。上述两个文件存在重复数据,导致该两个文件都含有数据块标识分别为A和D的两个数据块,由于这两个数据块的内容只被存储一次,因此实现了数据去重的目的。如图1所示,操作命令中被写文件的文件标识为1,根据该文件标识,同时根据操作命令中的写入位置和写入数据大小可计算出被写入数据区域,在客户端的文件组成表中检索属于该被写文件的两个数据块标识,且与该两个数据块标识相对应的两个数据块为与被写入数据区域相互重叠的首、尾两个数据块,就会得到数据块标识B和数据块标识D。
(2-2-2)根据检索到的数据块标识,从客户端存储的文件中读取与该数据块标识相对应的数据块内容;对应图1,就是读出数据块标识分别为B和D的两个数据块的内容。
(2-2-3)将读出的数据块内容中与被写入数据区域相不重叠的数据拼接到被写入数据的两侧,得到拼接后的数据及拼接后的数据区域;拼接过程、拼接后的数据及拼接后的数据区域,如图1所示。
(2-2-4)从客户端的上述文件组成表中检索与属于该被写文件、且起始位置位于上述步骤(2-2-3)拼接后的数据区域之内的数据块相对应的数据块标识;在如图1所示例中,该检索将得到的3个数据块标识,分别为B、C和D。
(2-2-5)将与从客户端的上述数据块索引表中检索到的数据块标识相对应的数据块的引用次数减1,当引用次数成为0时,从客户端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块引用次数,并从客户端的存储设备上删除该数据块内容。
(2-2-6)将上述步骤(2-2-3)拼接后的数据切分成一组新数据块;数据切分的方法可以使用基于用户或系统设定的数据块大小的定长切分和基于内容指纹的不定长切分,本发明的一个实施例中,使用了Muthitacharoen等人在一种低带宽网络文件系统一文中提出的基于Rabin指纹的可变长切分方法;如图1所示,拼接后的数据被切分成两个新的数据块,根据数据块内容的哈希值,该两个数据块的数据块标识分别为G和H。
(2-2-7)从客户端的上述数据块索引表中分别搜索与上述一组新数据块相对应的每个数据块标识:若该新数据块标识已存在,则在客户端的数据块索引表中将与该新数据块标识相对应的数据块的引用次数加1,若该数据块标识为新标识,则在客户端的数据块索引表中添加该新数据块的标识,并将与该新数据块标识相对应的数据块的引用次数设置为1;在客户端存储该新数据块的内容;在客户端的上述文件组成表中记录被写文件的标识、写入位置、该新数据块的大小以及该新数据块的标识。
(2-2-8)在客户端将上述被写文件的文件标识、每个新数据块的起始位置、每个新数据块大小和每个新数据块标识封装成一个文件组成更新消息,并将该更新消息添加到客户端的上述待发送消息队列的队尾。
(2-2-9)更新客户端的上述文件元数据表中被写文件的元数据,并将该更新后的元数据封装成文件元数据更新消息,并将该更新消息添加到客户端的上述待发送消息队列的队尾。
(2-3)当客户端的文件系统驱动接收到从已有文件读取数据的操作命令时,进行以下操作。
(2-3-1)根据操作命令中的被读文件标识、读取位置和待读取数据大小,计算出待读取数据区域,并在客户端的内存中分配与待读取数据的大小相等的内存空间,并将该内存空间初始化为空白;如图2所示。
(2-3-2)根据操作命令中的被读文件的文件标识和读取位置,从客户端的上述文件组成表中检索属于该被读文件的数据块标识,且与该数据块标识相对应的数据块是起始位置处于读取位置之前的最后一个数据块,若该数据块标识存在,且与该数据块标识相对应的数据块区域与待读取数据区域存在重叠,则从客户端读取该数据块内容,并将该读取的内容与待读取数据区域的重叠部分写入上述步骤(2-3-1)的内存空间的头部;具体过程可参见图3。从图3中,可以看出,网络文件系统中存在文件标识分别为1和2的两个文件,文件标识为1的文件由5个数据块组成,该5个数据块对应的数据块标识分别为A、B、C、D、E,文件标识为2的文件由3个数据块组成,该3个数据块对应的数据块标识分贝为A、D、F,客户端的文件组成表中记录了文件的组成信息。在图3中,操作命令中被读文件的文件标识为1,根据该文件标识,同时根据操作命令中的读取位置,从客户端的文件组成表中检索属于该被读文件的数据块标识,且与该数据块标识相对应的数据块是起始位置处于读取位置之前的最后一个数据块,就会得到数据块标识B,而且与数据块标识B相对应的数据块区域与与待读取数据区域存在重叠,因此,就要从客户端读取与B相对应的数据块的内容,并将该读取的内容与待读取数据区域的重叠部分写入图3中所示的内存空间的头部。
(2-3-3)根据该操作命令,从客户端的上述文件组成表中检索属于该被读文件的数据块标识,且与该数据块标识相对应的数据块的起始位置处于待读取数据区域内;在图2和图3所示例中,将会检索得到数据块标识C和D;遍历检索到的所有数据块标识,对每个数据块标识进行以下操作。
(2-3-3-1)判断客户端是否存有与该数据块标识相对应的数据块内容,若该内容存在,则读取该数据块内容,若该内容不存在,则从网络文件系统的服务器端下载该数据块内容,并在客户端存储该数据块内容。
(2-3-3-2)将上述数据块内容中与待读取数据区域的重叠部分写入上述步骤(2-3-1)的内存空间中;在该内存空间的中的起始写入位置等于该数据块的起始位置减去读取位置等到的差,以图2中将数据块标识为C的数据块内容写入该内存空间为例,由于读取位置为r,与C相对应的数据块的起始位置为b,因此,与C相对应的数据块内容将以b-r为起始写入位置被写入该内存空间中。
(2-3-4)更新客户端的上述文件元数据表中被读文件的元数据,将该元数据封装成一个文件元数据更新消息,并将该消息添加到客户端的上述待发送消息队列的队尾。
(2-3-5)将上述步骤(2-3-1)的内存空间中的数据通过客户端的文件系统驱动返回给客户端的应用程序。
(2-4)当客户端的文件系统驱动接收到删除已有文件的操作命令时,进行以下操作。
(2-4-1)从客户端的上述文件组成表中检索属于被删除文件的数据块标识。
(2-4-2)在客户端的上述数据块索引表中将与检索到的每个数据块标识相对应的数据块的引用次数减1,当引用次数变为0时,从客户端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块引用次数,从客户端删除该数据块内容。
(2-4-3)从客户端的上述文件组成表中删除被删除文件的所有记录。
(2-4-4)从客户端的上述文件元数据表中删除被删除文件的元数据。
(2-4-5)在客户端将被删除文件的文件标识封装成一个文件删除消息,并将该消息添加到客户端的上述待发送消息队列的队尾。
(3)在网络文件系统的服务器端设置的网络服务接口,用于上传和下载数据块内容,以及用于接收和应答客户端消息,具体过程如下:
(3-1)当网络文件系统服务器端接收到来自网络文件系统客户端待发送消息队列中的文件元数据更新消息时,进行以下操作。
(3-1-1)从接收到的文件元数据更新消息中解析出文件的标识及该文件的元数据;
(3-1-2)判断服务器端的上述文件元数据表中是否存在该文件标识,若已存在,则将与该文件标识相对应的元数据更新为上述步骤(3-1-1)中的元数据;若该文件标识为新标识,则在服务器端的上述文件元数据表中添加该文件标识及上述步骤(3-1-1)中的元数据。
(3-2)当服务器端接收到客户端待发送消息队列中的文件组成更新消息时,进行以下操作。
(3-2-1)从接收到的文件组成更新消息中解析出文件的标识以及每个数据块的起始位置、数据块大小和数据块的标识。
(3-2-2)在服务器端的上述文件组成表中检索属于该文件的数据块标识,且与该数据块标识相对应的数据块的起始位置处于新生成数据块区域之内。
(3-2-3)在服务器端的上述数据块索引表中分别将与检索到的每个数据块标识相对应的数据块的引用次数减1,若引用次数变为0,则从服务器端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块的引用次数,从服务器端上删除该数据块内容。
(3-2-4)在服务器端的上述数据块索引表中检索上述步骤(3-2-1)的数据块标识,若该数据块标识已存在,则将与该数据块标识相对应的数据块的引用次数加1,若该数据块标识为新标识,则通知客户端上传与该数据块标识相对应的数据块内容,接收客户端上传的数据块的内容,在服务器端存储该数据块的内容,在服务器端的数据块索引表中添加该数据块的标识,并将与该数据块标识相对应的数据块的引用次数设置为1;由于避免了传输与服务器端已有的数据块标识相对应的数据块的内容,因此能够有效节省网络传输带宽。
(3-3)当服务器端接收到客户端待发送消息队列中的文件删除消息时,进行以下操作:
(3-3-1)从接收到的文件组成更新消息中解析出被删除文件的标识。
(3-3-2)在服务器端的上述文件组成表中检索属于被删除文件的所有数据块标识。
(3-3-3)在服务器端的上述数据块索引表中将与检索到的每个数据块标识相对应的数据块的引用次数减1,若引用次数变为0,则从服务器端的数据块索引表中删除与该数据块标识相对应的数据块的引用次数,从服务器端删除该数据块内容。
(3-3-4)从服务器端的文件组成表中删除属于该被删除文件的数据块记录。
(3-3-5)从服务器端的文件元数据表中删除该被删除文件的元数据。

Claims (1)

1.一种网络文件系统中数据的实时去重和传输方法,其特征在于该方法包括以下步骤:
(1)在网络文件系统的客户端和服务器端各设置文件元数据表、数据块索引表和文件组成表;所述的文件元数据表记录网络文件系统中每个文件的元数据,该元数据包括文件标识、文件名、文件所在文件夹的标识、文件大小、文件类型、访问权限以及文件的创建、修改和访问时间;所述的数据块索引表记录网络文件系统中文件的数据块的标识以及与标识相对应的数据块的引用次数,其中数据块的标识为该数据块内容的哈希值;所述的文件组成表记录组成网络文件系统中的文件的数据块的信息,包括文件标识、起始位置、数据块大小和数据块标识,由其中的起始位置和数据块大小决定数据区域;
在网络文件系统的客户端设置一个待发送消息队列,用于存储客户端待发送给服务器端的数据更新消息;
(2)客户端通过文件系统驱动接收和响应客户端应用程序对网络文件系统发起的操作命令,该操作命令包括创建新文件、向已有文件写入数据、从已有文件读取数据和删除已有文件;
(2-1)当客户端的文件系统驱动接收到创建新文件的操作命令时,在客户端的上述文件元数据表中记录被创建文件的元数据,并将该元数据封装成一个文件元数据更新消息,再将该消息添加到客户端的上述待发送消息队列的队尾;
(2-2)当客户端的文件系统驱动接收到向已有文件写入数据的操作命令时,进行以下操作:
(2-2-1)根据操作命令中被写文件的文件标识、写入位置和写入数据大小,从客户端的上述文件组成表中检索属于该被写文件的两个数据块标识,且与该两个数据块标识相对应的两个数据块为与被写入数据区域相互重叠的首、尾两个数据块;
(2-2-2)根据检索到的数据块标识,从客户端存储的文件中读取与该数据块标识相对应的数据块内容;
(2-2-3)将读出的数据块内容中与被写入数据区域相不重叠的数据拼接到被写入数据的两侧,得到拼接后的数据及数据区域;
(2-2-4)从客户端的上述文件组成表中检索与属于该被写文件、且起始位置位于上述步骤(2-2-3)数据区域之内的数据块相对应的数据块标识;
(2-2-5)将与从客户端的上述数据块索引表中检索到的数据块标识相对应的数据块的引用次数减1,当引用次数成为0时,从客户端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块引用次数,并从客户端的存储设备上删除该数据块内容;
(2-2-6)将上述步骤(2-2-3)拼接后的数据切分成一组新数据块;
(2-2-7)从客户端的上述数据块索引表中分别搜索与上述一组新数据块相对应的每个数据块标识:若该新数据块标识已存在,则在客户端的数据块索引表中将与该新数据块标识相对应的数据块的引用次数加1,若该数据块标识为新标识,则在客户端的数据块索引表中添加该新数据块的标识,并将与该新数据块标识相对应的数据块的引用次数设置为1;在客户端存储该新数据块的内容;在客户端的上述文件组成表中记录被写文件的标识、写入位置、该新数据块的大小以及该新数据块的标识;
(2-2-8)在客户端将上述被写文件的文件标识、每个新数据块的起始位置、每个新数据块大小和每个新数据块标识封装成一个文件组成更新消息,并将该更新消息添加到客户端的上述待发送消息队列的队尾;
(2-2-9)更新客户端的上述文件元数据表中被写文件的元数据,并将该更新后的元数据封装成文件元数据更新消息,并将该更新消息添加到客户端的上述待发送消息队列的队尾;
(2-3)当客户端的文件系统驱动接收到从已有文件读取数据的操作命令时,进行以下操作:
(2-3-1)根据操作命令,在客户端的内存中分配与待读取数据的大小相等的内存空间,并将该内存空间初始化为空白;
(2-3-2)根据操作命令中的被读文件的文件标识和读取位置,从客户端的上述文件组成表中检索属于该被读文件的数据块标识,且与该数据块标识相对应的数据块是起始位置处于读取位置之前的最后一个数据块,若该数据块标识存在,且该数据块区域与待读取数据区域存在重叠,则从客户端读取该数据块内容,并将该读取的内容与待读取数据区域的重叠部分写入上述步骤(2-3-1)的内存空间的头部;
(2-3-3)根据该操作命令,从客户端的上述文件组成表中检索属于该被读文件的数据块标识,且与该数据块标识相对应的数据块的起始位置处于待读取数据区域内,遍历检索到的所有数据块标识,对每个数据块标识进行以下操作:
(2-3-3-1)判断客户端是否存有与该数据块标识相对应的数据块内容,若该内容存在,则读取该数据块内容,若该内容不存在,则从网络文件系统的服务器端下载该数据块内容,并在客户端存储该数据块内容;
(2-3-3-2)将上述数据块内容中与待读取数据区域的重叠部分写入上述步骤(2-3-1)的内存空间中;
(2-3-4)更新客户端的上述文件元数据表中被读文件的元数据,将该元数据封装成一个文件元数据更新消息,并将该消息添加到客户端的上述待发送消息队列的队尾;
(2-3-5)将上述步骤(2-3-1)的内存空间中的数据通过客户端的文件系统驱动返回给客户端的应用程序;
(2-4)当客户端的文件系统驱动接收到删除已有文件的操作命令时,进行以下操作:
(2-4-1)从客户端的上述文件组成表中检索属于被删除文件的数据块标识;
(2-4-2)在客户端的上述数据块索引表中将与检索到的每个数据块标识相对应的数据块的引用次数减1,当引用次数变为0时,从客户端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块引用次数,从客户端删除该数据块内容;
(2-4-3)从客户端的上述文件组成表中删除被删除文件的所有记录;
(2-4-4)从客户端的上述文件元数据表中删除被删除文件的元数据;
(2-4-5)在客户端将被删除文件的文件标识封装成一个文件删除消息,并将该消息添加到客户端的上述待发送消息队列的队尾;
(3)在网络文件系统的服务器端设置的网络服务接口,用于上传和下载数据块内容,以及用于接收和应答客户端消息,具体过程如下:
(3-1)当网络文件系统服务器端接收到来自网络文件系统客户端待发送消息队列中的文件元数据更新消息时,进行以下操作:
(3-1-1)从接收到的文件元数据更新消息中解析出文件的标识及该文件的元数据;
(3-1-2)判断服务器端的上述文件元数据表中是否存在该文件标识,若已存在,则将与该文件标识相对应的元数据更新为上述步骤(3-1-1)中的元数据;若该文件标识为新标识,则在服务器端的上述文件元数据表中添加该文件标识及上述步骤(3-1-1)中的元数据;
(3-2)当服务器端接收到客户端待发送消息队列中的文件组成更新消息时,进行以下操作:
(3-2-1)从接收到的文件组成更新消息中解析出文件的标识以及每个数据块的起始位置、数据块大小和数据块的标识;
(3-2-2)在服务器端的上述文件组成表中检索属于该文件的数据块标识,且与该数据块标识相对应的数据块的起始位置处于新生成数据块区域之内;
(3-2-3)在服务器端的上述数据块索引表中分别将与检索到的每个数据块标识相对应的数据块的引用次数减1,若引用次数变为0,则从服务器端的数据块索引表中删除该数据块标识及与该数据块标识相对应的数据块的引用次数,从服务器端上删除该数据块内容;
(3-2-4)在服务器端的上述数据块索引表中检索上述步骤(3-2-1)的数据块标识,若该数据块标识已存在,则将与该数据块标识相对应的数据块的引用次数加1,若该数据块标识为新标识,则通知客户端上传与该数据块标识相对应的数据块内容,接收客户端上传的数据块的内容,在服务器端存储该数据块的内容,在服务器端的数据块索引表中添加该数据块的标识,并将与该数据块标识相对应的数据块的引用次数设置为1;
(3-3)当服务器端接收到客户端待发送消息队列中的文件删除消息时,进行以下操作:
(3-3-1)从接收到的文件组成更新消息中解析出被删除文件的标识;
(3-3-2)在服务器端的上述文件组成表中检索属于被删除文件的所有数据块标识;
(3-3-3)在服务器端的上述数据块索引表中将与检索到的每个数据块标识相对应的数据块的引用次数减1,若引用次数变为0,则从服务器端的数据块索引表中删除与该数据块标识相对应的数据块的引用次数,从服务器端删除该数据块内容;
(3-3-4)从服务器端的文件组成表中删除属于该被删除文件的数据块记录;
(3-3-5)从服务器端的文件元数据表中删除该被删除文件的元数据。
CN 201010210339 2010-06-25 2010-06-25 一种网络文件系统中数据的实时去重和传输方法 Expired - Fee Related CN101917396B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010210339 CN101917396B (zh) 2010-06-25 2010-06-25 一种网络文件系统中数据的实时去重和传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010210339 CN101917396B (zh) 2010-06-25 2010-06-25 一种网络文件系统中数据的实时去重和传输方法

Publications (2)

Publication Number Publication Date
CN101917396A true CN101917396A (zh) 2010-12-15
CN101917396B CN101917396B (zh) 2013-06-19

Family

ID=43324782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010210339 Expired - Fee Related CN101917396B (zh) 2010-06-25 2010-06-25 一种网络文件系统中数据的实时去重和传输方法

Country Status (1)

Country Link
CN (1) CN101917396B (zh)

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169491A (zh) * 2011-03-25 2011-08-31 暨南大学 一种多数据集中重复记录动态检测方法
CN102184180A (zh) * 2011-01-30 2011-09-14 北京开心人信息技术有限公司 一种文件排重的方法与系统
CN102438004A (zh) * 2011-09-05 2012-05-02 深圳创维数字技术股份有限公司 获取媒体文件的元数据信息的方法、系统及多媒体播放器
CN102467528A (zh) * 2010-11-02 2012-05-23 英业达股份有限公司 重复数据删除操作系统
CN102497424A (zh) * 2011-12-12 2012-06-13 创新科存储技术(深圳)有限公司 一种通过移动存储设备实现云存储的方法
CN102571952A (zh) * 2011-12-31 2012-07-11 珠海金山办公软件有限公司 一种传输文件的系统及方法
CN102594888A (zh) * 2012-02-16 2012-07-18 西北工业大学 一种网络文件系统实时化的方法
CN102810108A (zh) * 2011-06-02 2012-12-05 英业达股份有限公司 重复数据的处理方法
CN102819535A (zh) * 2011-06-10 2012-12-12 戴尔产品有限公司 数据块迁移
CN102932277A (zh) * 2012-10-12 2013-02-13 深信服网络科技(深圳)有限公司 数据缓存方法及系统
CN103036697A (zh) * 2011-10-08 2013-04-10 阿里巴巴集团控股有限公司 一种多维度数据去重方法及系统
CN103207866A (zh) * 2012-01-16 2013-07-17 中国科学院声学研究所 一种基于分块策略的文件存储方法及系统
CN103294957A (zh) * 2013-05-06 2013-09-11 北京赛思信安技术有限公司 支持重复数据删除文件系统中数据更新时的数据保护方法
CN103309898A (zh) * 2012-03-15 2013-09-18 苏州市国贸电子系统工程有限公司 一种离散文件记录索引搜索更新方法
CN103561056A (zh) * 2013-10-12 2014-02-05 北京奇虎科技有限公司 文件传输方法、设备及系统
CN103873503A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据块备份系统及方法
CN103873507A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据分块上传与存储系统及方法
CN103942208A (zh) * 2013-01-18 2014-07-23 联想(北京)有限公司 文件处理方法及装置
TWI477981B (zh) * 2012-12-12 2015-03-21 Hon Hai Prec Ind Co Ltd 儲存集群中的資料塊去重系統及方法
CN105069139A (zh) * 2015-08-19 2015-11-18 北京金山安全软件有限公司 文件访问方法和文件访问装置以及服务器
CN105302912A (zh) * 2015-11-11 2016-02-03 中国联合网络通信集团有限公司 一种数据存储方法及设备
CN105353987A (zh) * 2015-11-13 2016-02-24 曙光信息产业股份有限公司 一种文件处理方法及装置
CN106446077A (zh) * 2016-09-07 2017-02-22 乐视控股(北京)有限公司 一种对象上传方法和电子设备
CN107220005A (zh) * 2017-05-27 2017-09-29 郑州云海信息技术有限公司 一种数据操作方法及系统
CN107229420A (zh) * 2017-05-27 2017-10-03 郑州云海信息技术有限公司 数据存储方法、读取方法、删除方法和数据操作系统
CN107329702A (zh) * 2017-06-30 2017-11-07 郑州云海信息技术有限公司 一种自精简元数据管理方法及装置
CN107465676A (zh) * 2017-07-31 2017-12-12 广州视源电子科技股份有限公司 一种向海量数据文件存储系统中上传文件的方法及其装置
CN107766179A (zh) * 2017-11-06 2018-03-06 郑州云海信息技术有限公司 一种基于源数据重删的备份方法、装置、及存储介质
CN110399348A (zh) * 2019-07-19 2019-11-01 苏州浪潮智能科技有限公司 文件重删方法、装置、系统及计算机可读存储介质
CN114443744A (zh) * 2020-11-06 2022-05-06 亚信科技(中国)有限公司 内存数据库及其数据处理方法、服务器平台
CN114629894A (zh) * 2022-03-19 2022-06-14 苏州知微安全科技有限公司 一种物联网数据的传输方法及装置
CN114691616A (zh) * 2022-03-25 2022-07-01 阿里巴巴(中国)有限公司 一种文件组创建方法、系统、介质及计算设备
CN115442317A (zh) * 2021-12-17 2022-12-06 北京罗克维尔斯科技有限公司 报文处理方法、装置、系统、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020099806A1 (en) * 2000-11-30 2002-07-25 Phillip Balsamo Processing node for eliminating duplicate network usage data
CN101266660A (zh) * 2008-04-18 2008-09-17 清华大学 基于描述逻辑的本体不一致性分析方法
CN101645082A (zh) * 2009-04-17 2010-02-10 华中科技大学 基于并行编程模式的相似网页去重系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020099806A1 (en) * 2000-11-30 2002-07-25 Phillip Balsamo Processing node for eliminating duplicate network usage data
CN101266660A (zh) * 2008-04-18 2008-09-17 清华大学 基于描述逻辑的本体不一致性分析方法
CN101645082A (zh) * 2009-04-17 2010-02-10 华中科技大学 基于并行编程模式的相似网页去重系统

Cited By (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467528A (zh) * 2010-11-02 2012-05-23 英业达股份有限公司 重复数据删除操作系统
CN102184180A (zh) * 2011-01-30 2011-09-14 北京开心人信息技术有限公司 一种文件排重的方法与系统
CN102169491A (zh) * 2011-03-25 2011-08-31 暨南大学 一种多数据集中重复记录动态检测方法
CN102169491B (zh) * 2011-03-25 2012-11-21 暨南大学 一种多数据集中重复记录动态检测方法
CN102810108A (zh) * 2011-06-02 2012-12-05 英业达股份有限公司 重复数据的处理方法
CN102819535A (zh) * 2011-06-10 2012-12-12 戴尔产品有限公司 数据块迁移
CN102438004A (zh) * 2011-09-05 2012-05-02 深圳创维数字技术股份有限公司 获取媒体文件的元数据信息的方法、系统及多媒体播放器
CN103036697B (zh) * 2011-10-08 2015-07-15 阿里巴巴集团控股有限公司 一种多维度数据去重方法及系统
CN103036697A (zh) * 2011-10-08 2013-04-10 阿里巴巴集团控股有限公司 一种多维度数据去重方法及系统
CN102497424A (zh) * 2011-12-12 2012-06-13 创新科存储技术(深圳)有限公司 一种通过移动存储设备实现云存储的方法
CN102571952B (zh) * 2011-12-31 2015-11-25 北京金山软件有限公司 一种传输文件的系统及方法
CN102571952A (zh) * 2011-12-31 2012-07-11 珠海金山办公软件有限公司 一种传输文件的系统及方法
CN103207866A (zh) * 2012-01-16 2013-07-17 中国科学院声学研究所 一种基于分块策略的文件存储方法及系统
CN103207866B (zh) * 2012-01-16 2016-06-22 中国科学院声学研究所 一种基于分块策略的文件存储方法及系统
CN102594888A (zh) * 2012-02-16 2012-07-18 西北工业大学 一种网络文件系统实时化的方法
CN102594888B (zh) * 2012-02-16 2014-07-02 西北工业大学 一种网络文件系统实时化的方法
CN103309898A (zh) * 2012-03-15 2013-09-18 苏州市国贸电子系统工程有限公司 一种离散文件记录索引搜索更新方法
CN102932277B (zh) * 2012-10-12 2015-05-13 深信服网络科技(深圳)有限公司 数据缓存方法及系统
CN102932277A (zh) * 2012-10-12 2013-02-13 深信服网络科技(深圳)有限公司 数据缓存方法及系统
CN103873507A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据分块上传与存储系统及方法
CN103873503A (zh) * 2012-12-12 2014-06-18 鸿富锦精密工业(深圳)有限公司 数据块备份系统及方法
TWI477981B (zh) * 2012-12-12 2015-03-21 Hon Hai Prec Ind Co Ltd 儲存集群中的資料塊去重系統及方法
US9552161B2 (en) 2012-12-12 2017-01-24 Shenzhen Airdrawing Technology Service Co., Ltd Repetitive data block deleting system and method
CN103942208A (zh) * 2013-01-18 2014-07-23 联想(北京)有限公司 文件处理方法及装置
CN103942208B (zh) * 2013-01-18 2018-07-06 联想(北京)有限公司 文件处理方法及装置
CN103294957B (zh) * 2013-05-06 2015-10-28 北京赛思信安技术有限公司 支持重复数据删除文件系统中数据更新时的数据保护方法
CN103294957A (zh) * 2013-05-06 2013-09-11 北京赛思信安技术有限公司 支持重复数据删除文件系统中数据更新时的数据保护方法
CN103561056A (zh) * 2013-10-12 2014-02-05 北京奇虎科技有限公司 文件传输方法、设备及系统
CN105069139A (zh) * 2015-08-19 2015-11-18 北京金山安全软件有限公司 文件访问方法和文件访问装置以及服务器
CN105069139B (zh) * 2015-08-19 2018-09-14 北京金山安全软件有限公司 文件访问方法和文件访问装置以及服务器
CN105302912A (zh) * 2015-11-11 2016-02-03 中国联合网络通信集团有限公司 一种数据存储方法及设备
CN105302912B (zh) * 2015-11-11 2018-06-29 中国联合网络通信集团有限公司 一种数据存储方法及设备
CN105353987A (zh) * 2015-11-13 2016-02-24 曙光信息产业股份有限公司 一种文件处理方法及装置
CN106446077A (zh) * 2016-09-07 2017-02-22 乐视控股(北京)有限公司 一种对象上传方法和电子设备
CN107220005A (zh) * 2017-05-27 2017-09-29 郑州云海信息技术有限公司 一种数据操作方法及系统
CN107229420A (zh) * 2017-05-27 2017-10-03 郑州云海信息技术有限公司 数据存储方法、读取方法、删除方法和数据操作系统
CN107229420B (zh) * 2017-05-27 2020-05-26 苏州浪潮智能科技有限公司 数据存储方法、读取方法、删除方法和数据操作系统
CN107329702A (zh) * 2017-06-30 2017-11-07 郑州云海信息技术有限公司 一种自精简元数据管理方法及装置
CN107329702B (zh) * 2017-06-30 2020-08-21 苏州浪潮智能科技有限公司 一种自精简元数据管理方法及装置
CN107465676A (zh) * 2017-07-31 2017-12-12 广州视源电子科技股份有限公司 一种向海量数据文件存储系统中上传文件的方法及其装置
CN107766179A (zh) * 2017-11-06 2018-03-06 郑州云海信息技术有限公司 一种基于源数据重删的备份方法、装置、及存储介质
CN110399348A (zh) * 2019-07-19 2019-11-01 苏州浪潮智能科技有限公司 文件重删方法、装置、系统及计算机可读存储介质
CN114443744A (zh) * 2020-11-06 2022-05-06 亚信科技(中国)有限公司 内存数据库及其数据处理方法、服务器平台
CN115442317A (zh) * 2021-12-17 2022-12-06 北京罗克维尔斯科技有限公司 报文处理方法、装置、系统、设备及介质
CN115442317B (zh) * 2021-12-17 2023-10-10 北京罗克维尔斯科技有限公司 报文处理方法、装置、系统、设备及介质
CN114629894A (zh) * 2022-03-19 2022-06-14 苏州知微安全科技有限公司 一种物联网数据的传输方法及装置
CN114629894B (zh) * 2022-03-19 2024-03-19 敦和万物信息技术(苏州)有限公司 一种用于电子数据取证的物联网数据的传输方法及装置
CN114691616A (zh) * 2022-03-25 2022-07-01 阿里巴巴(中国)有限公司 一种文件组创建方法、系统、介质及计算设备

Also Published As

Publication number Publication date
CN101917396B (zh) 2013-06-19

Similar Documents

Publication Publication Date Title
CN101917396B (zh) 一种网络文件系统中数据的实时去重和传输方法
CN101957836B (zh) 一种文件系统中可配置的实时透明压缩方法
US10509701B2 (en) Performing data backups using snapshots
US20150006797A1 (en) Interface for extending functionality of memory cards
US9773059B2 (en) Tape data management
US20100114843A1 (en) Index Compression In Databases
CN103282899A (zh) 文件系统中数据的存储方法、访问方法及装置
CN103595797B (zh) 一种分布式存储系统中的缓存方法
CN102857570A (zh) 文件的云同步方法及云存储服务器
CN102662992A (zh) 一种海量小文件的存储、访问方法及装置
CN101945131B (zh) 一种基于存储虚拟化的数据迁移方法
CN102915278A (zh) 重复数据删除方法
CN103914522A (zh) 一种应用于云存储重复数据删除的数据块合并方法
CN104537050A (zh) 一种批量快速创建文件系统元数据和数据的方法
CN105868286A (zh) 基于分布式文件系统小文件合并的并行追加方法及系统
CN101076031B (zh) 一种应用网络硬盘的方法
CN103064637A (zh) 一种网盘的缓存同步方法及系统
CN103841180B (zh) 一种基于操作指令的网络数据同步方法、装置、终端设备和服务器
CN103049574B (zh) 实现文件动态副本的键值文件系统及方法
CN108037937A (zh) 一种动态更新资源的方法
CN103019891A (zh) 一种还原被删除文件的方法及系统
CN103473258A (zh) 云存储文件系统
US8190834B2 (en) Process for contiguously streaming data from a content addressed storage system
CN102104581A (zh) 一种网络卡拉ok的点歌系统及其方法
CN102467523A (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130619

Termination date: 20210625

CF01 Termination of patent right due to non-payment of annual fee