内容可寻址存储
编辑内容可寻址存储,也称为内容寻址存储或缩写为CAS,是一种存储信息的方式,因此可以根据其内容而不是其位置来检索信息。它已被用于高速存储和检索的固定内容,如存储,符合政府规定的文件。内容可寻址存储类似于内容可寻址内存。
CAS和FCS
编辑内容可寻址存储(CAS)和固定内容存储(FCS)是同一技术类型的不同缩写。两者都旨在存储在固定时间段内不变的数据。CAS通常使用加密哈希函数从文档生成的摘要,以标识存储系统中的该文档。如果散列函数很弱,这意味着散列算法的不同输入可能导致创建相同的摘要,则可能存在不同文档保留相同摘要用于识别它们的情况。这暴露了依赖散列来区分数据的潜在弱点。当使用不可思议的大型数据存储库或放入此类系统的数据可能被恶意创建以利用此弱点时,原始哈希算法的固有弱点就成为一个问题。
内容寻址与位置寻址
编辑与内容寻址存储形成对比时,典型的本地或网络存储设备称为位置寻址。在位置寻址的存储设备中,每个数据元素都存储在物理介质上,并记录其位置以供以后使用。存储设备通常会保留这些位置的列表或目录。当将来对特定项目提出请求时,该请求仅包含数据的位置(例如,路径和文件名)。然后,存储设备可以使用此信息在物理介质上定位数据并进行检索。将新信息写入位置寻址设备时,它仅存储在一些可用的空闲空间中,而与内容无关。给定位置的信息通常可以更改或完全覆盖,而无需对存储设备进行任何特殊操作。
在此讨论的范围内,考虑上述内容的一种好方法是使用容器寻址的存储。
相反,当信息存储到CAS系统中时,系统将记录内容地址,该地址是xxx且xxx链接到信息内容本身的标识符。从CAS系统检索信息的请求必须提供内容标识符,系统可以从该标识符中确定数据的物理位置并进行检索。因为标识符是基于内容的,所以对数据元素的任何更改都必然会更改其内容地址。在几乎所有情况下,CAS设备在存储信息后都将不允许编辑信息。它是否可以删除通常由策略控制。
CAS历史
编辑1970年代和1980年代推出了一种称为“ 内容可寻址文件存储”(CAFS)的硬件设备,该设备提供具有内置搜索功能的位置寻址磁盘存储。搜索逻辑已合并到磁盘控制器中,因此可以将以高级查询语言表示的查询编译为搜索规范,然后将其发送到磁盘控制器以执行。在搜索谓词与内容标识符匹配的特定情况下(如上所述),这表示内容寻址的早期实现。但是,也可以通过常规的位置寻址机制访问文件,从而允许CAFS支持IDMS CODASYL数据库。
尽管内容寻址存储的想法并不是什么新鲜事,但直到2003年左右才可以使用生产质量的系统。在2004年中期,SNIA行业组织开始与许多CAS提供者合作以创建标准的行为和互操作性CAS系统指南。
CAS效率
编辑CAS存储最有效地处理不经常更改的数据。对于必须遵守文档保留法律的大型组织(例如Sarbanes-Oxley)特别感兴趣。在这些公司中,大量文档将被存储长达十年之久,并且没有任何更改且不经常访问。CAS旨在使搜索给定文档内容的速度非常快,并确保检索到的文档与原始存储的文档相同。(如果文档不同,则它们的内容地址也将不同。)此外,由于数据是按其包含的内容存储到CAS系统中的,因此永远不会存在同一文档的一个以上副本存在的情况。根据定义,两个相同的文档具有相同的内容地址,因此指向相同的存储位置。
对于经常变化的数据,CAS的效率不如基于位置的寻址。在这些情况下,CAS设备将需要在更改数据时不断重新计算数据地址,并且客户端系统将被迫不断更新有关给定文档存在位置的信息。对于随机访问系统,CAS还需要处理两个初始相同的文档分叉的可能性,要求根据需要创建一个文档的副本。
开源实现
编辑其中的xxx个内容寻址存储服务器,大杯的最初开发由贝尔实验室的Plan 9,现在也可用于Unix类系统的一部分从用户空间的Plan 9。
走向开源CAS +实施的xxx步是Twisted Storage。
Tahoe最低权限文件存储是CAS的开源实现。
Git是一个用户空间 CAS文件系统。Git主要用作源代码控制系统。
git-annex是一个分布式文件同步系统,它对其管理的文件使用内容可寻址存储。它依靠Git和符号链接来索引其文件系统位置。
Project Honeycomb是CAS系统的开源API。
在存储网络行业协会的主持下开发的XAM接口是一种尝试创建用于归档CAS(和类似CAS的)产品和项目的标准接口的尝试。
Perkeep是一个新项目,旨在将“内容可寻址的存储”优势带给“大众”。它打算用于各种用例,包括分布式备份;默认快照的版本控制的文件系统;以及分散的,权限控制的文件共享。
Irmin是OCaml “具有内置快照,分支和还原机制的持久性存储库”;与Git相同的设计原则。
盒式磁带是C#/。NET的开源CAS实现。
Arvados Keep是一个开源的内容可寻址分布式存储系统。它设计用于大规模的计算密集型数据科学工作,例如存储和处理基因组数据。
Infinit是由Docker Inc. 收购的一种内容可寻址,去中心化(点对点)存储平台。
行星际文件系统(IPFS)是一种内容可寻址的对等超媒体分发协议。
casync是Lennart Poettering的Linux软件实用程序,用于通过Internet分发经常更新的文件系统映像。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/106979/