阿里雲OSS歸檔文件特性

OSS歸檔文件特性:html

1.上傳文件即爲凍結狀態。java

2.阿里雲控制檯手動解凍須要1分鐘左右,其餘調用解凍時長爲1分鐘-4小時不等。運維

3.一次解凍流程能夠持續24小時,24小時內再次調用會自動延長24小時,一次解凍最多能夠有效調用7次接口。ide

4.解凍狀態結束後,狀態會自動凍結。ui



java解凍歸檔文件說明。阿里雲

歸檔類型(Archive)的文件須要解凍(Restore)以後才能讀取。非歸檔類型的文件,不要調用RestoreObject方法。rest


歸檔類型的Object在執行解凍先後的狀態變換過程以下:htm

歸檔類型的Object初始時處於冷凍狀態。接口

提交一次解凍請求後,Object處於解凍中的狀態。完成解凍任務一般須要1分鐘,最長等待任務完成時間爲4小時。文檔

服務端完成解凍任務後,Object進入解凍狀態,此時您能夠讀取Object。解凍狀態默認持續24小時,24小時內再次調用RestoreObject接口則解凍狀態會自動延長24小時。對於同份歸檔文件,一次解凍流程內可有效調用7次RestoreObject接口達到最長7天的解凍持續時間。

解凍狀態結束後,Object再次返回到冷凍狀態。

如下代碼用於解凍歸檔文件:


// Endpoint以杭州爲例,其它Region請按實際狀況填寫。

String endpoint = "http://oss-cn-hangzhou.aliyuncs.com";

// 阿里雲主帳號AccessKey擁有全部API的訪問權限,風險很高。強烈建議您建立並使用RAM帳號進行API訪問或平常運維,請登陸 https://ram.console.aliyun.com 建立RAM帳號。

String accessKeyId = "<yourAccessKeyId>";

String accessKeySecret = "<yourAccessKeySecret>";


String bucketName = "<yourBucketName>";

String objectName = "<yourObjectName>";


// 建立OSSClient實例。

OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);


ObjectMetadata objectMetadata = ossClient.getObjectMetadata(bucketName, objectName);


// 校驗文件是否爲歸檔文件。

StorageClass storageClass = objectMetadata.getObjectStorageClass();

if (storageClass == StorageClass.Archive) {

    // 解凍文件。

    ossClient.restoreObject(bucketName, objectName);


    // 等待解凍完成。

    do {

        Thread.sleep(1000);

        objectMetadata = ossClient.getObjectMetadata(bucketName, objectName);

    } while (!objectMetadata.isRestoreCompleted());

}


// 獲取解凍文件。

OSSObject ossObject = ossClient.getObject(bucketName, objectName);

ossObject.getObjectContent().close();


// 關閉OSSClient。

ossClient.shutdown();


解凍文檔說明連接:https://cn.aliyun.com/ss/5b2S5qGj5a2Y5YKo6Kej5Ya7/1_h

java解凍文件說明連接:https://help.aliyun.com/document_detail/84846.html?spm=5176.11065259.1996646101.searchclickresult.487356934w3in6

相關文章
相關標籤/搜索