你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
查看存储选项
存储功能对于支持在云中托管的工作负荷和服务至关重要。 准备云采用时,请查看此信息来规划你的存储需求。
选择支持工作负荷的存储工具和服务
Azure 存储是 Azure 平台的托管服务,用于提供云存储。 Azure 存储由多个核心服务和支持功能组成。 Azure 中的存储高度可用、安全、持久、可扩展且冗余。 运用这些方案和注意事项来选择 Azure 服务和体系结构。 有关详细信息,请参阅 Azure 存储文档。
主要问题
回答以下有关工作负载的问题,以帮助就存储需求做出决策:
你的工作负载是否需要磁盘存储来支持部署基础结构即服务 (IaaS) 虚拟机? Azure 托管磁盘为 IaaS 虚拟机提供虚拟磁盘功能。
是否需要提供可下载的图像、文档或其他媒体作为工作负载的一部分? Azure Blob 存储托管静态文件,你随后可通过 Internet 下载这些文件。 有关更多信息,请参阅 Azure 存储中的静态网站承载。
是否需要存储虚拟机日志、应用程序日志和分析数据的位置? Azure Monitor 具有 用于指标、日志和分布式跟踪的本机存储。
- Azure Monitor 中的指标存储在时序数据库中,该数据库经过优化,可用于分析带时间戳的数据。
- 跟踪数据与 Application Insights 收集的其他应用程序日志数据存储在一起。
- Azure Monitor 中的日志存储在基于 Azure 数据资源管理器的 Log Analytics 工作区中,Azure 数据资源管理器可提供强大的分析引擎和丰富查询语言。
是否需要为备份、灾难恢复或与工作负荷相关的数据存档提供位置? Blob 存储提供备份和灾难恢复功能。 有关详细信息,请参阅 Azure IaaS 磁盘的备份和灾难恢复。
也可使用 Blob 存储来备份其他资源,例如本地或 IaaS 虚拟机托管的 SQL Server 数据。 请参阅 SQL Server 备份和还原。
是否需要支持大数据分析工作负载? Azure Data Lake Storage Gen2 是在 Azure Blob 存储上构建的。 Data Lake Storage Gen2 支持大型企业数据湖功能。 它还可以处理存储 PB 量级的信息,同时保持数百千兆的吞吐量。
是否需要提供云原生文件共享? Azure 有两个提供云托管文件共享的服务:
- Azure NetApp 文件提供高性能 NFS 和 SMB 共享以及快照和克隆等高级数据管理功能,非常适合 SAP 等常见企业工作负载。
- Azure 文件存储提供可通过 SMB 3.1.1、NFS 4.1 和 HTTPS 访问的文件共享。
是否需要支持高性能计算(HPC)工作负荷?
是否需要执行本地数据的大规模存档和同步? Azure Data Box 产品旨在帮助你将大量数据从本地环境移动到云。
- Azure Data Box Gateway 是一种位于本地的虚拟设备。 Data Box Gateway 可帮助你管理将数据大规模迁移到云中。
- 通过 Azure Stack Edge,可更快地处理数据并将其安全传输到 Azure。 如果在将数据移动到云之前需要对其进行分析、转换或筛选,可使用 Azure Data Box。
是否想要展开现有的本地文件共享来使用云存储?通过 Azure 文件同步,可将 Azure 文件同步服务用作本地 Windows Server 计算机上托管的文件共享的扩展。 同步服务将 Windows Server 转换为 Azure 文件共享的快速缓存。 借助它,访问文件共享的本地计算机可使用 Windows Server 上可用的任何协议。
常见存储方案
Azure 针对不同的存储功能提供了多种产品和服务。 下表描述了可能的存储方案和推荐的 Azure 服务。
块存储方案
场景 | 建议的 Azure 服务 | 建议服务的注意事项 |
---|---|---|
我有裸机服务器或虚拟机(Hyper-v 或 VMware),它们使用运行业务线应用程序的直接连接存储。 | Azure 高级 SSD | 对于生产服务,高级 SSD 选项提供一致的低延迟,外加较高的每秒输入/输出操作 (IOPS) 和吞吐量。 |
我有将托管 Web 应用和移动应用的服务器。 | Azure 标准 SSD | 对于生产环境中的 CPU 密集型 Web 和应用程序服务器,标准 SSD IOPS 和吞吐量可能已经够用(成本低于高级 SSD)。 |
我有企业 SAN 或全闪存阵列。 | 高级 SSD 或 Azure 超级磁盘存储或者 Azure NetApp 文件 | 超级磁盘存储基于 NVMe,它提供亚毫秒级延迟、高 IOPS 和高带宽。 超级磁盘存储最多可缩放 64 TiB。 选择高级 SSD 还是超级磁盘存储由最大延迟、IOPS 和可伸缩性需求决定。 |
我有高可用性群集服务器,例如 SQL Server FCI 或 Windows Server 故障转移群集。 | Azure 文件存储或者高级 SSD 或超级磁盘存储 | 群集工作负载需要多个节点来装载相同的基础共享存储,以实现故障转移或高可用性。 高级文件共享提供可使用 SMB 装载的共享存储。 也可使用合作伙伴解决方案,在高级 SSD 或超级磁盘存储上配置共享块存储。 请参阅 SIOS DataKeeper Cluster Edition。 |
我拥有关系数据库或数据仓库工作负载(如 SQL Server 或 Oracle)。 | 高级 SSD 或超级磁盘存储 | 选择高级 SSD 还是超级磁盘存储由最大延迟、IOPS 和可伸缩性需求决定。 使用超级磁盘存储,无需为了实现可伸缩性而使用存储池配置,这样就降低了复杂性。 请参阅任务关键性能。 |
我有 NoSQL 群集(如 Cassandra 或 MongoDB)。 | 高级·SSD | Azure 磁盘存储高级 SSD 提供一致的低延迟、高 IOPS 和高吞吐量。 |
我具有具有需要块存储的永久性卷的容器。 | 标准 SSD、高级 SSD 或超级磁盘存储 或 Azure 容器存储 | 块(ReadWriteOnce)卷驱动程序选项可用于Azure Kubernetes 服务和自定义 Kubernetes 部署。 对于与Azure Kubernetes 服务无缝工作的完全托管解决方案,请考虑使用 Azure 容器存储。 |
我有数据湖,例如用于 HDFS 数据的 Hadoop 群集。 | Data Lake Storage Gen2 或者标准 SSD 或高级 SSD | Blob 存储的 Data Lake Storage Gen2 功能提供服务器端 HDFS 兼容性和 PB 量级,可实现并行分析。 它还提供高可用性和可靠性。 Cloudera 等软件可根据需要在控制器/工作器节点上使用高级 SSD 或标准 SSD。 |
我有 SAP 或 SAP HANA 部署。 | 高级 SSD 或超级磁盘存储 | 超级磁盘存储经过了优化,为第 1 层 SAP 工作负载提供亚毫秒级延迟。 高级 SSD 与 M 系列虚拟机一起提供了正式发布版选项。 要在低延迟下实现最高吞吐量,可将 Azure NetApp 文件用于 SAP 和 SAP HANA 部署。 |
我有灾难恢复站点,其中包含从我的主服务器同步的严格 RPO/RTO。 | Azure 页 blob | 复制软件使用页 blob 来启用到 Azure 的低成本复制,在故障转移发生前不需要使用计算虚拟机。 有关详细信息,请参阅 Azure IaaS 磁盘的备份和灾难恢复。 注意: 页 Blob 最多支持 8 TiB。 |
文件和对象存储方案
场景 | 建议的 Azure 服务 | 建议服务的注意事项 |
---|---|---|
我使用 Windows 文件服务器。 | 带或不带Azure 文件同步的Azure 文件存储 | 使用Azure 文件同步,可以在本地缓存最常用的文件时,在 Azure 文件共享上存储很少使用的数据。 还可使文件在多个服务器之间保持同步。 对于对高吞吐量和低延迟有严格要求的大型部署,请考虑使用Azure NetApp 文档。 |
我有企业网络附加存储(如 NetApp 或 Dell-EMC Isilon)。 | Azure NetApp 文件或 Azure 文件存储(高级) | 如果你有 NetApp 本地部署,建议使用 Azure NetApp 文件将部署迁移到 Azure 中。 若要使用或迁移到 Windows 或 Linux 服务器,请考虑使用 Azure 文件存储。 若要继续访问本地,请使用Azure 文件同步通过云分层机制将 SMB 文件共享与本地文件共享同步。 云分层使用本地 Windows 服务器作为经常访问的文件的缓存,同时将较冷的数据保存在 Azure 文件共享中。 |
我具有 SMB 或 NFS 文件共享。 | Azure 文件存储或 Azure NetApp 文件 | 选择高级还是标准 Azure 文件存储层由 IOPS、吞吐量和延迟一致性需求决定。 如果你有 NetApp 本地部署,建议使用 Azure NetApp 文件。 如果需要将访问控制列表和时间戳迁移到云,Azure 文件同步可以将这些设置引入 SMB Azure 文件共享。 |
我有适用于 PB 量级数据的本地对象存储系统(如 Dell-EMC ECS)。 | Blob 存储 | Azure Blob 存储提供高级存储层、热存储层、冷存储层和存档存储层,以满足工作负载性能和成本需求。 |
我有分布式文件系统复制部署或其他分支机构处理方式。 | Azure 文件存储或 Azure 文件同步 | Azure 文件同步为多个服务器和本机 Azure 文件共享提供多站点同步。 使用云分层迁移到本地固定存储占用。 |
我有适用于备份和灾难恢复或长期数据保留的磁带库。 | Blob 存储 | Blob 存储存档层的成本最低。 它可能需要几个小时才能将脱机数据复制到冷存储层、热存储层或高存储层以允许访问。 冷存储层以低成本提供即时访问。 |
我配置了文件或对象存储来接收备份。 | Blob 存储或 Azure 文件同步 | 若要使用最低成本存储来备份数据以供长期保留,请将数据迁移到 Blob 存储,并使用冷存储层和存档存储层。 若要为服务器上的文件数据启用快速灾难恢复,请使用 Azure 文件同步将共享同步到各个 Azure 文件共享。通过 Azure 文件共享快照,可还原较早的版本。 将它们同步回已连接的服务器,或在 Azure 文件共享中以本机方式访问这些服务器。 |
我将数据复制到灾难恢复站点。 | Azure 文件存储、Azure NetApp 文件 或 Azure 文件同步 | 使用 Azure 文件同步,无需使用灾难恢复服务器,即可将文件存储在本机 Azure SMB 共享中。 快速灾难恢复在出现故障的本地服务器上快速重新生成任意数据。 你甚至可以让多个服务器位置保持同步,或使用云分层仅将相关数据存储在本地。 Azure NetApp 文件提供了一项名为跨区域复制的基于存储的功能,可用于将数据复制到不使用任何 VM 或应用程序服务器资源,并经过高度优化以仅在更新之间复制更改数据块的其他 Azure 区域。 |
我在已断开连接的情况下管理数据传输。 | Azure Stack Edge 或 Data Box Gateway | 使用 Data Stack Edge 或 Data Box Gateway,可在已断开连接的情况下复制数据。 当网关处于脱机状态时,它会保存你在缓存中复制的所有文件,然后在你连接后上传这些文件。 |
我管理连接到云的持续数据管道。 | Azure Stack Edge 或 Data Box Gateway | 让从不断生成数据的系统将数据直接复制到存储网关,将该数据从该系统迁移到云中。 |
我有大量的数据同时到达。 | Azure Stack Edge 或 Data Box Gateway | 管理同时到达的大量数据。 一些示例包括当一辆自动驾驶汽车驶入车库,或者基因测序仪完成分析时。 将所有这些数据在本地快速复制到 Data Box Gateway。 然后,让网关在网络允许时将它上传。 |
我具有具有需要文件存储的永久性卷的容器。 | Azure 文件 | 文件(ReadWriteMany)卷驱动程序选项可用于Azure Kubernetes 服务和自定义 Kubernetes 部署。 |
根据数据工作负荷进行计划
场景 | 建议的 Azure 服务 | 建议服务的注意事项 |
---|---|---|
我要开发新的云原生应用程序,它需要暂留非结构化数据。 | Blob 存储 | |
我需要将数据从本地 NetApp 实例迁移到 Azure 中。 | Azure NetApp 文件 | |
我需要将数据从本地 Windows 或 Linux 文件服务器实例迁移到 Azure。 | Azure 文件 | |
我需要将文件数据迁移到云中,但继续主要从本地访问数据。 | Azure 文件存储或 Azure 文件同步 | |
我需要迁移使用本地磁盘或 iSCSI 的本地应用程序。 | Azure 磁盘存储 | |
我需要迁移包含永久卷且基于容器的应用程序。 | Azure 磁盘存储或 Azure 文件存储 | |
我需要将未在 Windows Server 或 NetApp 上的文件共享迁移到云中。 | Azure 文件存储或 Azure NetApp 文件 | 协议支持区域可用性性能需求快照和克隆功能价格敏感度。 |
对于 Azure Kubernetes 服务 (AKS) 群集,我需要完全托管的云原生块存储(ReadWriteOnce)。 | Azure 容器存储 | |
我需要将 TB 量级到 PB 量级的数据从本地传输到 Azure。 | Azure Stack Edge | |
我需要先处理数据,再将数据传输到 Azure。 | Azure Stack Edge | |
我需要使用本地缓存自动支持持续数据引入。 | Data Box Gateway |
详细了解 Azure 存储服务
确定最符合要求的 Azure 工具后,请使用本文档详细了解这些服务:
服务 | 说明 |
---|---|
Azure Blob 存储 | Blob 存储是适用于云的对象存储解决方案。 Blob 存储最适合存储巨量的非结构化数据。 非结构化数据是不遵循特定数据模型或定义的数据,如文本或二进制数据。 要对以下内容使用 Blob 存储,需要: - 直接向浏览器提供图像或文档。 - 存储文件以供分布式访问。 - 流式处理视频和音频。 - 写入日志文件。 - 存储用于备份和还原、灾难恢复及存档的数据。 - 存储数据以供本地或 Azure 托管服务执行分析。 |
Data Lake Storage Gen2 | Blob 存储支持 Data Lake storage Gen2,它是 Microsoft 适用于云的企业大数据分析解决方案。 Data Lake Storage Gen2 提供了分层文件系统,并具备 Blob 存储的优势。 它还包括低成本分层存储、高可用性、强一致性和灾难恢复功能。 |
Azure 磁盘存储 | Azure 磁盘存储提供永久性高性能块存储,为 Azure 虚拟机提供支持。 Azure 磁盘非常耐用和安全,并且为使用 Azure 高级 SSD 或超级磁盘存储的虚拟机提供行业唯一的单一实例服务级别协议 (SLA)。 Azure 磁盘通过面向 Azure 虚拟机容错域的可用性集和可用性区域提供高可用性。 Azure 将磁盘作为顶级资源进行管理。 提供有 Azure 资源管理器功能,例如 Azure 基于角色的访问控制 (RBAC)、策略和和默认标记。 |
Azure 文件 | Azure 文件存储提供完全托管的本机 SMB 和 NFS 文件共享,而无需运行虚拟机。 可以将 Azure 文件共享作为网络驱动器装载到任何 Azure 虚拟机或本地计算机。 |
Azure 文件同步 | 使用 Azure 文件同步将文件共享集中到 Azure 文件存储中。 Azure 文件同步提供本地文件服务器的灵活性、性能和兼容性。 |
Azure NetApp 文件 | Azure NetApp 文件服务是一种企业级高性能计量式文件存储服务。 Azure NetApp 文件支持任何工作负荷类型,并且默认具有高可用性。 你可以选择服务和性能级别,并通过该服务设置快照。 |
Azure 容器存储 | Azure 容器存储是专为容器本机生成的完全托管的基于云的卷管理、部署和业务流程服务。 它与 Kubernetes 集成,允许动态并自动地预配永久性卷,为运行在 Kubernetes 群集上的有状态应用程序存储数据。 |
Azure Stack Edge | Azure Stack Edge 是本地网络设备,用于将数据移入和移出 Azure。 Data Stack Edge 包含已启用 AI 的边缘计算,可在上传过程中预处理数据。 Data Box Gateway 是此设备的虚拟版本,但仍有相同的数据传输功能。 |
Data Box Gateway | Data Box Gateway 是一种可将数据无缝地发送到 Azure 的存储解决方案。 它是一种虚拟设备,基于在虚拟化环境或虚拟机监控程序中预配的虚拟机。 此虚拟设备位于地,可使用 NFS 和 SMB 协议将数据写入其中。 然后,设备会将你的数据传输到 Azure 块 blob、页 blob 或 Azure 文件存储。 |
数据冗余和可用性
Azure 存储具有各种冗余选项,可帮助根据需求确保持久性和高可用性。
- 本地冗余存储
- 区域冗余存储
- 异地冗余存储 (GRS)
- 异地区域冗余存储 (GZRS)
- 读取访问 GRS (RA-GRS)*
- 读取访问 GZRS (RA-GZRS)*
* 不适用于Azure 文件存储。
若要详细了解这些功能以及如何确定用例的最佳冗余选项,请参阅Azure 存储冗余和Azure 文件存储冗余。
存储服务的 SLA 提供了财务支持的保证。 有关详细信息,请参阅托管磁盘 SLA、虚拟机 SLA 和存储帐户 SLA。
若要在为 Azure 磁盘规划合适的解决方案时需要帮助,请参阅适用于 Azure 磁盘存储的备份和灾难恢复。
安全性
为了帮助保护云中的数据,Azure 为数据安全和加密提供了几种最佳做法:
- 使用 Azure RBAC 和 Microsoft Entra ID 来保护存储帐户。
- 使用客户端加密、HTTPS 或 SMB 3.1.1 保护应用程序与 Azure 之间传输的数据。
- 使用 Azure 存储加密将数据写入 Azure 存储时,需要加密此数据。
- 使用共享访问签名授予对 Azure 存储中数据对象的委派访问权限。
- 使用分析来跟踪某人在访问 Azure 存储时使用的身份验证方法。
这些安全功能适用于 Azure Blob 存储(块和页)和 Azure 文件存储。 有关详细信息,请参阅适用于 Blob 存储的安全建议。
Azure 存储提供静态加密并会保护数据。 默认情况下,所有 Azure 区域中的托管磁盘、快照和图像都启用了 Azure 存储加密。 所有写入现有托管磁盘的新托管磁盘、快照、图像和新数据都会通过 Microsoft 管理的密钥进行静态加密。 有关详细信息,请参阅 Azure 存储加密以及托管磁盘和存储服务加密。
通过 Azure 磁盘加密,可对附加到 IaaS 虚拟机的托管磁盘进行静态加密和传输中加密。 Azure Key Vault 会存储你的密钥。 对于 Windows,将通过使用行业标准 BitLocker 加密技术来加密驱动器。 对于 Linux,将通过使用 dm-crypt 子系统来加密磁盘。 加密过程与 Azure Key Vault 集成,因此你可以控制和管理磁盘加密密钥。 有关详细信息,请参阅适用于虚拟机和虚拟机规模集的 Azure 磁盘加密。
区域可用性
可以使用 Azure 交付缩放的服务,以覆盖客户和合作伙伴(无论他们位于何处)。 事先检查服务的区域可用性可有助于根据工作负荷和客户需求做出正确的决策。 若要检查可用性,请参阅按区域提供的托管磁盘和按区域提供的 Azure 存储。
托管磁盘适用于提供 Azure 高级 SSD 和标准 SSD 产品/服务的所有 Azure 区域。 Azure 超级磁盘存储在多个可用性区域中提供。 请在计划需要超级磁盘存储的任务关键型顶层工作负载时验证区域可用性。
热和冷 Blob 存储、Data Lake Storage Gen2 和 Azure 文件存储在所有 Azure 区域中都可用。 存档 Blob 存储、高级文件共享和高级块 Blob 存储仅限于某些区域。
若要详细了解 Azure 全球基础结构,请参阅 Azure 地理区域。 查看按区域提供的产品,了解每个 Azure 区域中提供的存储选项。
数据驻留和合规性要求
工作负载通常需要遵守与数据存储相关的法律和合同要求。 这些要求因组织位置、托管数据存储的物理资产的管辖权以及业务部门而异。 请考虑责任共担模型下数据分类、数据位置和各自的数据保护责任。 有关详细信息,请参阅在 Microsoft Azure 区域启用数据驻留和数据保护。
合规性工作的一部分可能包括控制数据库资源的物理位置。 Azure 区域分为多个组,称为地理位置。 Azure 地理位置可确保在地理和政治边界内遵守数据驻留、主权、合规性和复原能力要求。 如果你的工作负载需要遵守数据主权或其他合规性要求,请将存储资源部署到合规的 Azure 地理区域中的区域。 有关详细信息,请参阅Azure 地域。