贮存

管理和保护所有企业数据

Raywoo - Fotolia.

对象存储集成在块和文件世界令人烦恼

对象存储提供了传统存储系统无法比拟的可伸缩性。挑战在于如何让它们在基于块和文件的世界中工作。

在过去的20多年,块和文件一直是两个主要的外部共享存储系统协议。由于驱动它们的网络接口的宽容,这两个协议都成功了。在块设备的情况下,这是光纤通道和以太网(iSCSI);对于文件,它是以太网(CIFS / SMB和NFS)。

然而,块和文件并不适合构建大规模的数据存储库,这主要是由于数据保护、索引和寻址方面的问题。RAID不能充分扩展,基于文件的协议开始在pb大小的数据和数十亿文件的元数据管理方面遇到问题。

对象存储已成为将数据存储在多封PEDBEY级别的答案。但是,许多应用程序期待传统的SAN和NAS接口,所以集成对象存储不像使用基于块和文件的系统那么简单。但今天已经完成了,有一个各种各样的选择可用于使对象存储与组织的密钥应用程序一起工作。

为什么对象存储?

对象存储具有独特的属性,克服了传统存储平台存在的可伸缩性和元数据管理问题。这些特性包括:

分散和地理分散的数据保护。保护机制通常以擦除编码形式实现,也称为前向纠错,这允许从原始内容的子集重新创建丢失或损坏的数据。冗余到主要数据的确切比率由需要应用于该内容所需的服务级别确定。作为一种保护机制,擦除编码比RAID更可扩展和能力效率(尽管额外的CPU开销成本)。擦除编码还通过允许将擦除编码数据的子集放置在地理上的遥远位置来提供业务连续性/灾难恢复(BC / DR)优势。这可以防止这些位置中的一个(或更多个)系统的失败。显然,对象存储系统的具体配置取决于组织的特定数据保护要求。

改进了数据管理。任何存储系统都存在数据丢失或损坏的风险。今天的磁盘和固态存储媒体是可靠的,但并非完全没有错误。对于非常大规模的数据存储库,这可能是个问题。存储介质确实会发生故障,并且可能会发生静默损坏或不可恢复的读错误(UREs),从而使数据处于危险之中。对象存储使用验证和重建可能损坏或丢失的数据的数据清理技术来缓解这些问题。使用擦除编码和对象存储数据的典型写一次特性,允许将失败的数据作为后台任务重新创建,而对生产操作几乎没有影响。

显然,对象存储系统的具体配置取决于组织的特定数据保护要求。

对象存储能够大规模管理设备故障(而且对象存储没有很高的I/O性能要求),这意味着系统可以使用比块或文件对应的更低成本、更高容量的驱动器。在规模上,最大化容量和降低每TB成本的能力成为设计的当务之急。

详细和可扩展的元数据。基于块的存储系统很少收集关于存储在系统中的数据内容的信息。存在的元数据用于将lun或卷等逻辑概念映射到该数据在磁盘上的物理位置。现代块存储系统使用元数据来跟踪诸如精简配置和数据重复数据删除等节省空间特性的应用,这些特性是基础设施,而不是以内容为中心的。基于文件的存储使用了更多的元数据,因为存储文件的性质需要跟踪权限(acl)、访问日期/时间和文件所有者。

对象存储提供更丰富的元数据功能,通常为元数据模型本身提供可扩展性;允许抽象键对(关键字和值)存储在每个对象中。对象存储系统能够快速有效地搜索元数据,从商店中定位和检索对象。

简化的数据访问。对象存储技术的核心是使用大大简化的访问方法来存储和检索数据。基于基于web的协议(如HTTP)的REST api允许通过唯一的URL访问对象。URL是由API命令(如GET和PUT)加上分配给每个对象的唯一引用代码(对象ID)构建的。

就标准而言,事实上的对象API是亚马逊Web服务的S3(简单的存储服务).S3 API格式已经变得如此普遍基于对象的平台必须支持它在当今市场上竞争。S3支持的准确性是供应商及其产品成功的关键因素。许多应用程序使用S3支持作为读写应用程序数据的标准方法。

版本控制。基于rest的api提供了一种与对象存储交互的更简单的方法,因为几乎所有的命令都是在对象级别操作的。此外,在大多数对象存储中,单个对象是不可变的;也就是说,它一旦被创建,就不能被改变。对对象中的数据进行更新需要用户检索数据、更改对象并再次将其存储到对象存储区中。结果是一个新的对象ID或相同对象的新版本。这种版本数据的功能提供了审计跟踪和归档日志,允许检索对象的以前版本。在提供数据重复数据删除的系统上,对象版本控制的开销仅限于数据本身的更改。

基于云的对象存储集成

所有主要的云供应商都提供了某种对象存储技术,并且在许多情况下,它是他们提供的第一台存储平台。

所有主要的云供应商都提供某种对象存储技术并且,在许多情况下,它是他们提供的第一个存储平台。AWS提供S3和冰川,Google Compute Platform.提供云存储和微软Azure提供Blob存储。使用这些服务就是为api编写代码,当然,所有这些api都有细微的不同。这意味着供应商必须使用API开发软件以允许使用对象资源。另一种选择是使用云网关它向最终用户提供一个众所周知的界面,例如块或文件。云提供商已经在某种程度上提供了这些特性。Amazon提供AWS Storage Gateway,这是一个本地安装的软件特性,可以在S3上存储内容时模拟iSCSI存储。微软在2012年收购了StorSimple,现在提供了一个基于该技术的硬件设备,作为在使用标准iSCSI接口的同时在微软Azure中存储数据的入口。

还有一些供应商提供与云提供商集成的硬件和软件产品。这些包括塞尔塔,来自Avere Systems的FXT,数据NetApp的AltaVault(基于从Riverbed收购的技术)、Panzura和TwinStrata(现在是EMC的一部分)。然而,由于这些产品通过熟悉块和文件协议提供了使用基于云的对象存储的能力,因此它们本身并没有提供对象存储的全部好处。那么,希望部署内部对象商店的IT部门又如何呢?当您希望现场部署硬件,而不是将其作为云供应商的服务使用时,情况会发生怎样的变化?

内部对象存储

构建对象商店既有私有平台,也有开源平台。根据IDC的数据,这个市场的领导者是Cleversafe, Scality,DataDirect网络(DDN)、Amplidata和EMC。NetApp卡林诺、Cloudian和HDS.也是主要参与者。有些是作为设备部署的,有些是仅作为软件部署的,由客户选择他们自己的规格的硬件。对于开源平台,有如下选择CephOpenStack迅速。Ceph现在是Red Hat的一部分,Red Hat提供商业支持,SwiftStack提供对Swift的支持。

这些产品提供了云存储的共同特征(保护,数据和元数据管理,API和版本控制)。这些系统之间存在广泛(通常是本机)协议支持。性别支持NFS,SMB,Linux FS,REST,CDMI,S3,OpenStack Swift,Cinder和Glance,使平台易于集成到OpenStack环境中作为所有要求的持久存储层。

当然,对象商店必须具有良好的元数据引擎和丰富的应用程序支持。例如,Cloudian使用Open-Source Cassandra数据库的修改版本,用于元数据和事务日志记录。可以跨多个节点共享和分发数据库,​​为元数据函数提供可伸缩性,因为对象卷增加。Hitachi的HCP是一个具有强大应用支持的平台的一个很好的例子。HDS提供集成的搜索功能(Hitachi Data Discovery Suite),数据摄取(带Hitachi Data IngeStor)以及与通过HCP的安全文件共享的集成。

大多数供应商通过分层优化了它们的性能,支持固态和传统的纺纱媒体。例如,DDN的WOS能够在单个集群中支持高达300万IOPS,可优化小型和大文件性能。Cleversafe,Cloudian和DDN所有使用技术来测量群集中每个节点的延迟,从具有最低延迟分数的节点中检索数据。此功能在地理分散配置中尤为重要。

这些系统中的许多都提供了一些特性,允许在不中断的情况下从存储集群中添加或删除节点,以满足可用性需求。要迁移的节点只需关闭电源、移动并重新添加到集群,使用后台数据管理功能更新和纠正物理移动期间识别的任何更改或损坏的数据。大多数还提供数据加密,以便在驱动器更换频繁的大型环境中增加保护。多租户也很常见,这使得它们适合于服务提供商环境或私有云。

最后,一些对象存储平台提供私有和公共对象存储之间的集成。例如,Cloudian和HCP就提供了这种功能。这使得组织可以利用公共云对某些类型的数据(如不活动的或很少访问的内容)的成本效益,同时保留跨现场和云数据搜索的能力。

第八条第三条

下一个步骤

基于对象的存储适用于云存储

最好的方法使用对象存储

对象技术与存储世界相遇

深入挖掘对象存储

获得更多的存储空间

查阅我们所有的过期杂志 查看全部
搜索灾难复苏
搜索数据备份
搜索聚合基础设施
关闭
Baidu