You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Azure Java SDK上传块Blob时如何设置冷存储层?

在Azure Java SDK中为块Blob设置Cool存储层的正确方式

当然可以实现!你提到的BlobProperties.setStandardBlobTier()是SDK内部的受保护方法,确实不应该直接调用——Azure Java SDK已经提供了更友好的公开API来完成这个需求,不管是上传Blob时直接设置,还是上传完成后修改存储层都很方便。

方法一:上传Blob时直接设置Cool层

在上传前,通过对应的上传选项类(比如BlobUploadFromFileOptions、BlobParallelUploadOptions)的setTier()方法指定存储层即可。举个具体的代码示例:

// 先获取到BlockBlobClient实例(省略初始化client的步骤,比如通过BlobServiceClient创建)
BlockBlobClient blockBlobClient = blobContainerClient.getBlobClient("你的blob名称").getBlockBlobClient();

// 创建上传选项并设置存储层为COOL
BlobUploadFromFileOptions uploadOptions = new BlobUploadFromFileOptions("本地文件的路径");
uploadOptions.setTier(AccessTier.COOL);

// 执行上传操作,此时Blob会直接以Cool层存储
blockBlobClient.uploadFromFile(uploadOptions);

方法二:上传完成后修改为Cool层

如果已经上传了Blob,也可以随时通过BlockBlobClient的setAccessTier()方法修改存储层:

// 针对已存在的Blob修改存储层
blockBlobClient.setAccessTier(AccessTier.COOL);

补充说明

  • AccessTier是SDK提供的枚举类,包含COOL、HOT、ARCHIVE等常用存储层选项,直接引用即可。
  • 确保你的Azure存储账户支持Cool层(标准通用v2存储账户或Blob存储账户都支持),否则会返回错误。

内容的提问来源于stack exchange,提问作者Anonymous1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:11:59