Blob 存储:云对象存储
将图像、视频和备份等非结构化数据存储在 Blob 容器中,并了解热访问层、冷访问层和存档访问层。
Blob 存储:云对象存储 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。
什么是 Azure Blob Storage
Azure Blob Storage(二进制大型对象)是 Azure 提供的对象存储解决方案,用于存储大量非结构化 Data — 即无法适配关系数据库架构的 Data。示例包括图像、视频、音频文件、PDF 文档、日志文件、备份和应用程序二进制文件。您可以通过 HTTP/HTTPS REST API、Azure SDK 或 Azure CLI 访问 Blob Storage。它是使用最广泛的 Azure 服务之一,也是许多 Data Lake、媒体和备份架构的基础。
Blob Storage 层次结构
Blob Storage 采用三级层次结构:Storage Account → Container → Blob。容器类似于顶层文件夹 — 它将相关 Blob 归类在一起,并定义其中所有内容的访问策略。Blob 是存储在容器中的单个对象(文件)。Blob 名称可以包含正斜杠(/)来模拟文件夹层次结构(例如 images/2024/photo.jpg),但 Blob Storage 从根本上是扁平的 — 这些斜杠是 Blob 名称的一部分,并不代表真实目录。
# Upload a file to a Blob container
az storage blob upload \
--account-name mystorageacct \
--container-name images \
--name 'photos/2024/sunset.jpg' \
--file ./sunset.jpgBlob 类型
Azure Blob Storage 支持三种 Blob 类型:Block blobs — 最常见的类型,非常适合存储文档、图像和视频。Data 会拆分成多个块并行上传;最大大小约为 190 TB。Append blobs — 针对仅追加操作进行优化,例如写入日志文件;新 Data 始终添加到末尾。Page blobs — 由 512 字节页面组成,针对随机读写访问进行了优化;Azure VM 托管磁盘将其用作底层存储机制。如有疑问,请使用 block blobs — 它们是通用对象存储的默认类型。
Blob 访问层
Blob Storage 提供三个访问层,用于平衡存储成本和访问成本:Hot 层 — 存储成本最高、访问成本最低;适用于频繁访问的 Data。Cool 层 — 存储成本较低、访问成本较高,并要求至少存储 30 天;适用于每月报告等不经常访问的 Data。Archive 层 — 存储成本最低(比 Hot 低约 95%),但访问 Data 前需要数小时进行重新水合;适用于很少访问的长期合规存档。您可以在帐户级别设置默认层,也可以针对每个 Blob 覆盖该设置。
# Set blob access tier to Cool
az storage blob set-tier \
--account-name mystorageacct \
--container-name backups \
--name monthly-report.zip \
--tier Cool生命周期管理策略
手动管理数百万个 blob 的访问层级并不现实。生命周期管理策略可以自动完成这一工作:您可以定义规则,根据 blob 的存留时间或最后访问日期,将其移至较低访问频率的层级,或将其删除。例如,连续 30 天未修改后将 blob 移至 Cool,180 天后移至 Archive,365 天后删除。这样,存储就能随着时间推移自动优化成本,无需人工干预。生命周期策略以 JSON 定义,并在存储帐户级别应用,从而影响该帐户中的所有 blob。
Blob 访问控制
默认情况下,容器中的所有 blob 都是专用的,只有经过身份验证且拥有适当权限的用户才能访问。您可以将容器和 blob 设为公开:将容器的访问级别设置为 Blob(可读取单个 blob)或 Container(可列出容器内容并读取其中的所有 blob)。如果需要更细粒度且有时间限制的访问权限,请使用共享访问签名 (SAS)——这是一种包含加密令牌的 URL,可在指定时间段内授予对特定资源的特定权限(读取、写入、删除),而无需共享帐户密钥。
# Generate a SAS token for read-only access to a blob (expiring in 1 hour)
az storage blob generate-sas \
--account-name mystorageacct \
--container-name images \
--name photo.jpg \
--permissions r \
--expiry 2024-12-31T00:00:00Z静态 website 托管
Azure Blob Storage 可以托管静态 website——通过 HTTP/HTTPS 直接从存储帐户提供 HTML、CSS、JavaScript 和图像文件,无需任何服务器端代码。在存储帐户上启用静态 website 托管,指定索引文档(例如 index.html)和错误文档,然后将静态文件上传到特殊的 $web 容器中。存储帐户 URL 会成为您的 website URL。搭配Azure CDN使用,还可以获得自定义域支持、HTTPS 和全球边缘缓存,从而让世界各地的用户都能快速访问网站。
# Enable static website hosting
az storage blob service-properties update \
--account-name mystorageacct \
--static-website \
--index-document index.html \
--404-document 404.html用于备份的 Blob Storage
Blob Storage 是存放应用程序和数据库备份的理想位置:它具有持久性(使用 LRS 时持久性达到 11 个 9,使用 GRS 时更高)、高可用性,并且对于大量数据而言成本非常低,尤其是在 Cool 或 Archive 层级中。许多 Azure 备份服务(例如用于虚拟机的 Azure Backup 和 SQL Database 自动备份)实际上都会在底层将数据存储到 Blob Storage 中。您还可以编写备份脚本,在计划任务中直接使用 Azure CLI 或 SDK 将数据库转储到 blob。
Azure Data Lake Storage Gen2
Azure Data Lake Storage Gen2 (ADLS Gen2) 构建于 Blob Storage 之上,并增加了分层命名空间功能,使目录操作(重命名、删除)能够以原子方式高效执行,这对于大数据分析工作负载至关重要。在存储帐户上启用分层命名空间后,该帐户就会转换为 ADLS Gen2,并可与 Azure Synapse Analytics、Azure Databricks 和 HDInsight 原生集成。它同时支持 Blob Storage API 和 HDFS 协议,因此兼容现有的基于 Hadoop 的工具和框架。
Blob Storage 定价
Blob Storage 的定价由三部分组成:存储成本——按每 GB 每月计费,具体取决于层级(美国东部区域的 Hot 约为 0.018 美元/GB,Cool 约为 0.01 美元/GB,Archive 约为 0.001 美元/GB)。操作成本——每 10,000 次读取和写入操作计费,较低访问频率的层级收费更高。数据传输成本——入站数据(上传)免费,出站数据(下载到互联网)收费。对于大型数据集,层级选择会显著影响总成本:将不常访问的数据从 Hot 移至 Cool,通常可以使存储费用减半,而 Archive 则可以将成本降低 95%。
不可变 Blob Storage
金融和医疗保健等受监管行业必须以一次写入、多次读取 (WORM) 格式存储数据,以遵守 SEC Rule 17a-4 和 HIPAA 等法规。Azure Blob Storage 的不可变性策略允许您锁定 blob,使其在指定的保留期内无法修改或删除。策略有两种类型:基于时间的保留(blob 会一直锁定到指定日期)和法律保留(blob 会无限期锁定,直到移除保留状态)。锁定后,即使是存储帐户管理员,也无法在保留期内删除这些 blob。
快速检查
测试您对本课 Microsoft Azure Fundamentals (AZ-900) 概念的理解。
课程回顾
本课中,您学到了:Blob Storage 是用于存储非结构化数据的对象存储,其组织层次为存储帐户、容器和 blob;三个访问层级——Hot、Cool 和 Archive——针对不同的使用模式,在存储成本与访问成本之间进行平衡;以及生命周期管理策略会根据 blob 的存留时间,自动将其移至成本更低的层级或将其删除。接下来,我们将学习 Azure Files 和 Queue Storage,了解文件共享和消息解耦。
用 AI 导师学习 Cloud & IT Cert Prep — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 150
- 课程
- 600
常见问题解答
「Blob 存储:云对象存储」课时是免费的吗?
是的 — 「Blob 存储:云对象存储」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。
「Blob 存储:云对象存储」这节课中我会学到什么?
将图像、视频和备份等非结构化数据存储在 Blob 容器中,并了解热访问层、冷访问层和存档访问层。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cloud & IT Cert Prep 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cloud & IT Cert Prep 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「Blob 存储:云对象存储」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?
能。每节 Cloud & IT Cert Prep 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- Azure 存储帐户
- Blob 存储:云对象存储
- Azure 文件和队列存储
- 磁盘存储和存储安全