什么是对象存储?
对象存储是一种数据存储架构,它将数据作为离散对象进行管理,而不是像传统方式那样以层级结构中的文件或存储卷上的固定大小块进行管理。每个对象都包含数据本身、描述性元数据和一个唯一标识符,从而能够在分布式环境中实现高效的存储、检索和管理。
与专为结构化工作负载设计的传统存储系统不同,对象存储架构专为可扩展性、持久性和丰富的元数据而构建。它常用于云环境、超大规模数据中心和人工智能(AI) 基础设施,这些环境中的数据集规模可达 PB 级甚至 EB 级。其架构消除了分层文件系统的限制,从而实现了近乎无限的可扩展性。
对象存储是现代基础设施的基础架构之一。它为备份和归档系统、云原生应用、人工智能训练流程、媒体库以及大规模分析平台提供支持。随着企业产生的非结构化数据量日益增长,对象存储已成为旨在实现长期增长和提升运营效率的分布式存储策略的核心组成部分。
对象存储的工作原理
对象存储架构将信息组织成称为“对象”的离散单元,并将其存储在分布式存储系统中。与将数据放入文件夹或分割成固定大小的数据块不同,对象存储系统将每个对象存储在扁平的地址空间中,并使用唯一标识符进行检索。这种设计实现了跨多个存储节点和地理区域的水平扩展。
每个存储对象都由三个核心组件构成:
数据
数据指的是实际存储的内容。这可能包括非结构化信息,例如:
- 文件
- 图片和视频文件
- 备份存档
- 日志文件
- 人工智能训练数据集
- 应用程序数据
对象存储针对大量非结构化数据进行了优化,使其非常适合云、媒体、分析和人工智能工作负载。
元数据
元数据描述存储的对象。与仅维护文件大小或时间戳等有限属性的传统文件系统不同,对象存储支持广泛且可自定义的元数据。
元数据可能包括:
- 创建和修改时间戳
- 所有权和访问控制
- 应用特定标签
- 合规性分类
- 内容描述符
丰富的元数据支持跨分布式存储环境的高级索引、搜索、自动化、生命周期策略和智能数据管理。
唯一标识符
每个对象都被分配一个全局唯一标识符 (GUID)。该标识符取代了传统的文件路径,并允许通过 API 直接访问对象。
唯一标识符:
- 在扁平命名空间中查找对象
- 无需遍历目录即可实现可扩展的检索
- 支持跨多个节点或区域的分布式存储
- 简化对 S3 兼容存储系统的数据访问
对象存储系统中的每个对象都是自包含的,它将数据、丰富的元数据和全局唯一标识符组合成一个可寻址的单元。
扁平命名空间与分层文件系统
传统文件存储系统采用目录和子目录的层级结构。每个文件都是通过在该树状结构中导航来查找的。随着数据量的增长,管理和扩展这种层级系统变得越来越复杂。
对象存储采用扁平命名空间。对象并非存储在系统级别的嵌套文件夹中,而是存在于一个单一的逻辑池中,并通过其唯一标识符直接访问。虽然用户界面可能为了方便起见而模拟文件夹结构,但底层架构仍然是扁平的。
这种扁平化设计具有以下特点:
- 几乎无限的可扩展性
- 简化的分布式存储管理
- 大规模高效数据检索
- 提高横向扩展存储环境的弹性
通过消除结构瓶颈,对象存储架构能够满足云服务提供商、超大规模运营商和人工智能驱动型企业的大规模增长需求。
相关产品和解决方案
相关资源
对象存储、块存储和文件存储
企业级存储架构通常分为三种主要模型:对象存储、块存储和文件存储。每种模型都满足不同的工作负载需求和基础架构设计。在为云、人工智能或数据库应用设计横向扩展存储环境时,理解它们的结构差异至关重要。
特征 | 对象存储 | 块存储 | 文件存储 |
结构 | 扁平命名空间 | 原始存储块 | 分层文件系统 |
可扩展性 | 极高 | 缓和 | 缓和 |
元数据 | 功能丰富且可定制 | 极简主义 | 有限的 |
常见用例 | 云平台、备份、人工智能数据、内容存储库 | 数据库、事务系统 | 共享文件系统、用户目录 |
结构差异
对象存储将数据存储在单个逻辑池中,并通过对象标识符进行访问,从而消除了传统的目录层次结构限制,并实现了跨分布式节点的水平扩展。
块存储将数据分割成固定大小的数据块,这些数据块由操作系统管理。它具有低延迟的特点,并针对数据库等事务性工作负载进行了优化,但扩展通常需要更复杂的存储管理。
文件存储以文件夹和子文件夹构成的分层目录结构组织数据。它常用于共享文件系统和网络附加存储环境,但在容量非常大的情况下,高效扩展会变得更加困难。
可扩展性和元数据
对象存储架构专为大规模应用而设计,支持跨地理分布式系统的数十亿个对象。其强大的元数据功能使企业能够大规模地标记、分类、自动化和管理数据。
块存储提供的元数据非常有限,因为管理是在文件系统层进行的。文件存储支持权限和时间戳等基本属性,但缺乏对象系统中那种丰富且可定制的元数据框架。
工作量调整
对象存储最适合存储非结构化数据、云原生应用、AI训练数据集、备份、归档以及分布式内容分发平台,这些场景对可扩展性和元数据灵活性要求极高。块存储针对延迟敏感型工作负载进行了优化,例如关系数据库和事务系统,这些工作负载需要在操作系统层面实现可预测的性能。文件存储通常部署在协作环境、共享用户目录以及依赖于分层文件系统中传统文件访问协议的应用场景中。
对象存储的主要优势
对象存储架构在结构和运维方面具有优势,能够支持大规模、数据密集型的企业环境。与传统的存储区域网络 (SAN) 或纵向扩展网络附加存储(NAS) 架构相比,对象存储通过消除严格的卷管理和分层扩展限制,降低了运维复杂性。
- 横向扩展增长——对象存储系统通过向集群添加节点来扩展容量,无需重新设计架构即可提升容量。这使其适用于PB级存储库、超大规模云平台和AI数据湖。
- 规模化成本效益——通过支持大容量驱动器、高密度存储服务器和软件定义存储框架,对象存储降低了长期保留非结构化数据(如备份、媒体存档和分析数据集)的每TB成本。
- 高持久性和数据保护——现代对象存储平台采用纠删码和复制技术来维护跨磁盘、节点或站点的数据完整性。许多平台还支持对象不可变策略,有助于保护备份数据免受勒索软件攻击和未经授权的修改。
- 地理分布和弹性 - 对象存储系统可以将数据分布在数据中心或区域之间,从而支持灾难恢复、业务连续性策略和全球分布式应用程序访问。
- 丰富的元数据和自动化功能 - 广泛的元数据支持可实现智能数据生命周期管理、基于策略的分层、合规用例的不可变性以及对 AI 和分析数据集的高效索引。
- API 驱动的云集成 - S3 兼容的存储接口可与云原生应用程序、DevOps 工作流、容器平台和混合云架构无缝集成。
这些特性使对象存储成为大规模分布式存储环境中的核心架构组件。
常见用例
对象存储部署于需要高效存储、访问和管理大量非结构化数据的分布式系统中。其架构支持各种企业级和超大规模工作负载,而无需传统文件系统的限制。
云原生应用程序
现代云原生应用依赖于可通过 API 访问的存储,该存储能够与容器编排平台和微服务架构集成。对象存储为无状态应用层提供持久数据服务,并支持云生态系统中广泛采用的 S3 兼容接口。
备份和归档
企业使用对象存储作为备份存储库和长期数据保留。其分布式设计能够可靠地存储大型数据集,同时支持基于策略的生命周期管理,以满足归档和合规性要求。
媒体存储
媒体库、流媒体平台和内容制作环境会生成大量二进制对象,这些对象需要集中存储。对象存储能够高效管理视频、图像和音频资源,同时支持跨制作和分发系统的分布式访问。
人工智能训练数据集
人工智能和机器学习工作流程依赖于对大量训练数据集的访问。对象存储充当集中式数据存储库,可在模型开发和重新训练周期中为分布式计算集群提供数据。
大数据分析
分析框架能够摄取和处理大量结构化和非结构化信息。对象存储通常作为企业数据湖架构的基础存储层,将结构化和非结构化数据集整合到一个可扩展的存储库中。
内容分发
对象存储通常作为内容分发架构的源层。存储在对象存储库中的数据可以通过内容分发网络进行分发,以支持全球应用程序和媒体访问。
人工智能和高性能环境中的对象存储
人工智能和高性能计算环境对人工智能存储基础设施提出了与传统企业工作负载截然不同的要求。大规模模型训练流程通常依赖于包含数十亿个对象的数据集,包括图像、视频帧、日志文件、嵌入向量和中间检查点。这些数据集的规模通常达到数PB,并且必须保持可访问性,以支持迭代的训练、验证和重新训练工作流程。
数据访问和吞吐量要求
与优先考虑单个操作低延迟的事务处理系统不同,人工智能训练工作负载主要以吞吐量为驱动。分布式训练框架持续向图形处理器 (GPU) 加速器传输数据,而存储吞吐量不足会导致计算资源利用率低下。采用横向扩展配置的对象存储系统可以聚合多个存储节点的带宽,从而提供持续的高读取吞吐量,以满足 GPU 集群的数据消耗速率。
并行性是人工智能基础设施的一个显著特征。训练任务通常运行在数十台甚至数百台配备GPU的服务器上,每台服务器都使用并行数据加载器并发检索对象。对象存储支持这种访问模型,允许独立检索对象,而无需文件锁定限制或层级目录遍历。这种基于API的访问模型实现了高并发性,与跨多个计算节点运行的分布式训练框架相契合。
人工智能工作负载的基础设施调整
高性能人工智能环境需要存储层、计算集群和网络架构之间的精心协调。高容量存储服务器为大型训练语料库提供密集存储库,而基于NVMe的存储层可以加速频繁访问的对象、元数据操作或活动数据集的暂存区域。在某些架构中,对象存储网关与高速本地网络接口。 NVMe 使用缓冲区优化摄取和检索性能。
网络架构在维持人工智能数据管道的稳定运行中起着至关重要的作用。高带宽网络架构,例如 100GbE、200GbE、400GbE 等,或InfiniBand 将存储集群和 GPU 服务器互连,以处理分布式训练期间产生的大量东西向流量。即使存储介质性能充足,网络容量不足也可能造成瓶颈。
数据保护策略也应纳入考虑。纠删码虽然能大规模提高存储效率,但在重建或恢复操作期间会增加计算开销。在持续吞吐量至关重要的人工智能环境中,存储架构师必须权衡持久性模型和性能要求。
当采用适当的服务器密度进行设计时, NVMe 随着加速和高带宽网络的发展,对象存储已成为人工智能和高性能环境的基础数据层。在大规模部署中,专为人工智能基础设施设计的百亿亿次级存储架构可以进一步提升性能效率和数据局部性。
对象存储的基础架构考量
企业级或超大规模对象存储的设计需要周密的架构规划。容量增长、性能特征、持久性模型以及数据中心的物理限制都会影响架构决策。与小型存储部署不同,大规模对象存储系统必须经过精心设计,以实现持续扩展和可预测的运行行为。
能力规划
对象存储环境通常从大规模开始,并随着数据量的增长而不断扩展。基础设施必须支持这种渐进式增长,同时避免出现破坏性的重新配置或性能下降。
- PB级增长——架构应支持横向扩展,允许随着容量需求从数百TB增加到数PB甚至更大而无缝添加存储节点。
- 数据生命周期管理 - 存储设计应考虑分层策略、保留策略和归档工作流程,以便随着时间的推移有效地管理活跃数据和不经常访问的数据。
容量规划必须考虑驱动器密度, chassis 扩展能力和长期的机架空间可用性,可防止代价高昂的重新设计。
性能
对象存储环境的性能主要取决于总吞吐量和并发性,而非单次操作的延迟。基础设施的规模必须与工作负载的行为相匹配。
- 吞吐量与延迟 - AI、分析和备份工作负载通常需要跨多个节点持续的读写吞吐量,而元数据密集型或小对象工作负载可能会引入延迟敏感性,需要进行调整。
- 网络带宽——高带宽网络对于防止存储节点和计算集群之间出现瓶颈至关重要。横向扩展对象存储通常依赖于 100GbE、200GbE 或更高带宽的互连,以维持东西向流量和客户端访问。
性能规划应使存储介质、控制器功能和数据中心网络架构与预期的工作负载模式保持一致。
可靠性
耐用性和可用性是分布式对象存储系统的核心设计要求,尤其是在企业和云服务提供商环境中。
- 纠删码——纠删码在保持强大持久性保证的同时,提高了存储效率。但是,架构师必须考虑计算开销以及节点或硬盘故障期间的重建行为。
- 复制 - 在多站点或地理分布的部署中,复制策略可以防止站点级故障并支持业务连续性要求。
可靠性模型应平衡存储效率和重建能力windows以及服务水平目标。
功率和密度
高容量对象存储系统,特别是采用顶部加载存储配置的系统,会占用大量的物理基础设施。数据中心的限制条件必须与逻辑架构一并考虑。
- 高容量硬盘——现代大尺寸硬盘可实现高密度存储节点,从而降低大规模部署的每TB成本和机架占用空间。
- 机架密度——数据中心存储服务器密度会影响数据中心环境中的电源分配、布线复杂性和长期可扩展性。
- 散热需求——高密度存储配置会产生大量的热量。充足的气流设计和散热能力,包括部署液冷系统,对于维持运行稳定性和延长硬件寿命至关重要。
功率和密度因素直接影响总拥有成本和基础设施的长期可持续性。
云和混合环境中的对象存储
对象存储已成为公有云、私有云和混合基础设施战略的基础组成部分。其 API 驱动的访问模型和分布式架构使企业能够跨本地数据中心和云服务提供商一致地管理非结构化数据。随着企业采用多云运营模式,对象存储提供了一个标准化的数据层,支持可移植性、自动化和长期可扩展性。
S3 兼容性
Amazon S3 API 已成为对象存储访问的行业标准。许多对象存储平台都实现了与 S3 兼容的接口,允许应用程序通过广泛采用的 RESTful API 与存储进行交互。这种兼容性实现了应用程序在不同环境间的可移植性,并减少了在本地基础架构和公有云平台之间扩展工作负载时的阻力。
在混合架构中,部署在私有数据中心内的 S3 兼容存储可以与公有云对象存储服务协同工作,并使用一致的访问方式。这种方法简化了数据复制、工作负载迁移以及与依赖于基于 S3 通信的分析或备份平台的集成。
软件定义存储
现代对象存储平台通常以软件定义存储系统 (SDS) 的形式交付。在这种模式下,数据放置、元数据管理和持久性机制都与底层服务器硬件隔离开来。这种隔离使得系统能够跨集群式、符合行业标准的服务器平台进行部署,同时允许通过基于节点的扩展来提升容量。
控制功能和数据功能的分离也支持云环境中常用的自动化和编排框架。基础架构团队可以以编程方式配置、监控和管理存储资源,使存储操作与云原生和 DevOps 方法保持一致。
与超大规模环境的集成
超大规模数据中心需要能够以可预测的方式扩展并保持运行一致性的存储架构。对象存储通过将数据分布在多个节点和故障域中,实现了跨机架或可用区的增量扩展,从而符合超大规模原则。
在大规模部署中,对象存储系统通常与容器平台、分析集群和分布式计算框架集成。混合扩展进一步支持私有基础设施和公有云区域之间的数据同步,从而支持策略驱动的复制和多站点可用性策略。
通过标准化的 API、软件定义的部署模型和分布式系统设计,对象存储为云和混合数据架构提供了一致的基础。
为什么基础设施设计对对象存储至关重要
大规模对象存储系统依赖于可扩展的服务器平台、高容量存储配置以及为持续数据吞吐量和长期增长而设计的优化网络架构。对象存储软件为数据的分发和管理提供了逻辑框架,而底层基础设施最终决定了性能的稳定性、扩展能力和运行弹性。
随着对象存储库规模增长至 PB 级甚至多 PB 级,基础设施决策将直接影响效率和可管理性。服务器密度、硬盘选择和节点配置都会影响每个机架的容量、重建时间和每 TB 的总体成本。系统必须经过精心设计,以支持节点的逐步扩展,同时确保不会中断正在运行的工作负载,从而保证存储增长与数据增长保持一致。
Networking 架构同样至关重要。分布式对象存储集群在数据跨节点进行重新平衡、复制或重建时,会产生大量的双向流量。与此同时,来自分析平台、AI训练集群和云原生应用的面向客户端的流量也需要持续的带宽。即使存储介质性能充足,网络设计不足也可能导致瓶颈。
可靠性和耐久性模型也取决于基础设施的选择。纠删码和复制策略必须得到充足的计算资源和均衡的存储配置的支持,才能在硬盘或节点故障期间保持可预测的恢复行为。在密集部署中,电源分配和散热设计还会进一步影响系统稳定性和长期运行效率。
因此,高效的对象存储部署不仅仅是选择软件那么简单。它需要对服务器架构、存储介质、网络架构和数据中心设施进行协调规划。当基础设施与工作负载需求和预期增长相匹配时,对象存储就能在保持性能、持久性和运行控制的同时,实现可预测的扩展。
常见问题
- 为什么S3兼容存储对企业基础架构至关重要?
S3 兼容存储使企业能够使用一致的 API 标准在私有云和公有云环境中运行应用程序。这降低了供应商锁定风险,简化了混合部署,并实现了数据可移植性,而无需对应用程序进行大量重新配置。 - 横向扩展存储与传统存储架构有何不同?
横向扩展存储通过向集群系统中添加节点来提升容量和性能,而不是升级单个控制器。与传统的纵向扩展存储平台相比,这种分布式模型能够实现增量式扩展、可预测的性能扩展以及简化的管理。 - 对象存储是否支持多租户环境?
对象存储架构通过逻辑隔离、访问控制和命名空间分段来支持多租户部署。这使得服务提供商和大型企业能够在共享基础设施上安全地托管多个用户或部门,同时保持治理和运营隔离。 - 对象存储如何满足治理和合规性要求?
对象存储平台通过元数据驱动的策略、保留控制、审计日志和不可变性功能来强化治理。这些功能有助于组织满足监管要求、应用法律保留,并在分布式存储环境中保持一致的数据管理。 - 对象存储与 NAS 存储相比有何不同?
对象存储与 NAS 的区别在于,对象存储使用扁平命名空间和基于 API 的访问方式,而不是分层文件系统和文件协议。NAS 针对共享文件访问进行了优化,而对象存储则专为大规模分布式数据环境而设计。 - 对象存储和 Blob 存储有什么区别?
Blob 存储是云服务提供商常用的一个术语,用来描述对象存储服务。两者都将非结构化数据存储为带有元数据和唯一标识符的对象,尽管不同供应商和平台的具体实现和 API 可能有所不同。