在一编码系统中,对系统中的输入数据编码。该输入数据可包括在输入数据中重复的或出现在系统中编码的其它输入数据中的符号序列。该编码包括确定一目标段尺寸,确定一窗口尺寸,在输入数据的偏移处标识符号窗口中的指纹,确定是否要将偏移指定成切割点并按该组切割点所指定的对输入数据分段。对这样标识的各段,编码器确定该段是否会是引用的段或未引用的段,必要时,用引用标签替换各引用的段的分段数据并将引用绑定存储在用于各引用的段的连续段存储器中。按等级,可以通过将引用分成组,用分组标签替换分组的引用,存储一个分组的引用和分组标签之间的绑定来重复该过程,如果一个没有呈现,并重复该过程。等级的级数可以预先固定或从编码的内容确定。(*该技术在2023年保护过期,可自由使用*)
【技术实现步骤摘要】
用于存储器中数据压縮的基于内容的分段模式及包括等级分段表示的传输本专利技术专利申请是国际申请号为PCT/US2003/034327,国际申请日为2003 年10月28日,进入中国国家阶段的申请号为200380104909.1,名称为"用于存储器中数据压縮的基于内容的分段模式及包括等级分段表示的传输"的专利技术 专利申请的分案申请。相关申请的交叉引用 美国专利申请号10/285,315,名称"用于客户机一服务器通信系统的处 理加速器"(以下为"McCanneI")和本申请同 日递交,通过参考包括在此。
技术介绍
本专利技术通常涉及数据压縮,特别是涉及用于压縮的分段。数据压縮可用于更有效地存储和传输数据。数据压縮是将输入数据表示成压 縮数据的过程,使压縮数据包括比输入数据更少的位或符号且可以将该压縮数据解 压縮成至少是原始输入数据的合适的近似值。压缩允许更有效的数据传输,因为需 要发送给接收方用来恢复原始的那组位(正好或近似地)的位更少了,且压縮允许更 有效的存储,因为需要存储的位更少了。"压縮比"指原始数据中位或符号数与压縮数据中位或符号数的比。例如 如果IOO字节的数据序列可由5字节的数据表示,则在该例中的压縮比为20:1。如 果不需要确切地恢复输入数据,则可采用所谓的"有损压縮",通常导致比"无损压 縮"更大的压縮比。在压縮会是透明的典型应用中,压縮应为无损的。基于结构和输入内容的统计的压縮数据是常见的。典型的压縮器参考输入中 的符号值、输入中特定符号值的位置、输入中各符号值之间的关系以及输入数据源 的预期属性来接收输入数据流或数据块并生成压縮的数据流或数据块。例如当预 计输入数据为英文文本时,很有可能接着(句点)符号的源的输出为""(空格) 符号。该源的此属性可由压縮器采用。例如空格在压縮数据中可以根本不用符号 来表示,从而将数据减少至一个符号。当然,为了能无损地解压縮已压縮数据,压 縮器必须为后接空格的句点的各情况编码专用符号。然而,鉴于它们经常出现,预计可以比专用符号有更多省略,因为整个结果为净压縮。一种使用可能包括重复的输入字符的序列的源的压縮方法是字典法。釆用此 方法,建立一个符号序列的字典并用对字典的引用代替字典中每次出现的符号序列 之一。当压縮器和解压縮器可以访问同一字典时,解压縮器能通过用相应的条目代 替各字典的引用来对压缩数据解压縮。通常,字典压縮假定可以将输入流分成段, 且所述段将会在输入流中再次出现。当然,为了使字典法工作,解压縮器必须具有压縮器使用的字典的副本。当 压縮是为了减少传输工作时, 一般用传输通路来分隔压縮器和解压縮器,在该传输 通路上的工作减少了,但如果通过该通路发送字典的话,则加在该通路上的负载会 增加。当将压縮用于减少存储时出现类似的问题,因为需要存储字典使解压縮器可 以对其进行访问,而这增加的存储工作。在一些模式中,字典为固定字典,这样就 可以将其分摊至许多压縮中,以将每次压縮字典的成本减少到可忽略的程度。在其 它模式中,字典为自适应的,但,是可以从解压縮器已经可用的数据重建的,但是 是作为预先解压縮的符号。压縮适用于被带宽约束限制了网络通信量的网络。 一个例子是诸如因特网之类的广域网(WAN),它每次使用比诸如专用局域网(LAN)或专用广域网WAN之类 的其它网络更少的空闲带宽。也于成本的原因,许多人愿意使用非专用WAN而不 仅仅依靠LAN或增加专用WAN,但他们受到非专用WAN的性能的限制。压缩 可能可以允许将低带宽链接用于高带宽应用,因为它减少了表示更大输入序列所需 的实际位数。相似地,通过减少表示系统中所有文件所需的位数,压縮能可能提高 文件系统的性能和容量。通常,通过企业体系和网络存储和传送的数据具有高度信息冗余表示。例如 向一公司的大量接收者发送的电子邮件消息和附件在存储系统中生成许多消息数 据的冗余副本并导致要通过网络发送的冗余通信量。同样,在一企业中的许多电子 文件享有极高度的公共性,因为不同的雇员在不同的设置中用类似的共同信息件工 作。如果压缩该数据,就会改善网络性能并增加有效存储容量。传统的压縮模式 可以通过检测在一输入符号流中的统计相关并根据该统计相关在尽量少的位中编 码流的符号来利用这些冗余中的一些。 一些基于字典的压縮模式被称为"通用代码",因为在包括了输入符号符合平稳随机处理的假设在内的各种假设下它们收敛 到最佳压縮模式(香农极限)。这就会暗示仅通过布署一个对网络中的网络通信量或 存储系统中的文件数据执行最佳压縮的通用编码系统就可以实现最佳性能。然而,这一方法不必适用于实践。例如众所周知在路由器的网络接口上使 能压縮会提高性能,但仅仅是少量地(30%是典型的,但这取决于基础通信量)。传 统通信编码模式的一个问题在于如果基础数据输入具有非静态统计则它们不必收 敛于最佳比。另外,如果基础统计是静态的,但它们显示"远程依赖"(LRD),则通 信代码与最优性的收敛比率可以不切实际地慢(可能指数规律地慢)。这具有重要的意义,因为许多研究提供了网络通信量显示LRD的证据,而实际上有关基础数 据处理的最佳模式是否为LRD随机处理或非静态处理还有待商榷。其它研究显示 文件统计(同样大小分布等)也显示LRD。简而言之,这都意味着通信编码的传统方 法不一定是最佳实际解决方法,而利用典型数据源的远程依赖的技术可能会更好。 检测远程相关的一种强力方法是运用基于字典的压縮模式,用大宽度在数据 源(文件、通信流等)中搜索重复的图形,用名称或标签表示那些图形并将相应的 数据存储在与名称或标签相关联的表格或数据库中。使用LRD可以保留一个很大 的数据窗口使系统远溯到输入(或时间)地任意对等,以检测远程依赖图形。该简单 的模式直观地匹配一个企业中的信息结构。即,许多相似的信息源即随时间慢变化 又出现在不同的语境中(电子邮件、文件系统、Web等)。随着基础技术的改进(例 如盘和存储器变得越来越便宜),此方法变得更实用了。然而,强力方法仍有缺 点。一个缺点是在一个位流中搜索匹配数据的任意图形在计算上很贵且在出现的 LRD统计中快速地有效地找到最佳解的通常问题尚未完全解决。另选的方法的放 弃找到最佳解的想法而关注预先形成好的根据LRD并实用且可行的近似解或启发 式解。一个在此结构中证实有用的工具是通过根据输入内容本身而不是一些外部施 加的方框或框架模式分段数据找到数据中重复的图形的建议的启发式解。见,例如, Muthitacharoen, A.etc.,"A Low-Bandwidth Network File System", in Poceedings of the 18th ACM Symposium on Operating Systems Principles(SOSP ' 01), pp.l74-187(Chateau Lake Louise, Banff, Canada, October 2001)(in vol. 35, 5 of ACMSIGOPS Operating Systems Review, ACM Press)。在本文所述的LBFS系统中,散列 取代部分传送的文件,且接收方用该散列重建在文件系统上哪个文件的哪一部分本文档来自技高网...
【技术保护点】
一种用于存储数据的方法,包括: 在服务器处从客户机接收一文件; 将所述文件分段为一个或多个段; 形成一列表,包括: 确定每一段是否存在于段存储器中,其中存在于所述段存储器中的段具有分配的引用标签; 对于存在于所 述段存储器中的每一段,向所述列表中添加所述分配的引用标签;以及 对于不存在于所述段存储器中的每一段,将一引用标签分配给所述段,存储所述段和引用标签,并将所述引用标签添加到所述列表;以及 存储所述文件和所述列表之间的关联。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:S麦克坎尼,MJ德玛,
申请(专利权)人:河床技术股份有限公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。