

 **此頁面僅適用於使用 Vaults 和 2012 年原始 REST API 的 Amazon Glacier 服務的現有客戶。**

如果您要尋找封存儲存解決方案，建議您在 Amazon Glacier Instant Retrieval、S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 中使用 Amazon Glacier 儲存類別。 Amazon S3 若要進一步了解這些儲存選項，請參閱 [Amazon Glacier 儲存類別](https://aws.amazon.com/s3/storage-classes/glacier/)。

Amazon Glacier （原始獨立保存庫型服務） 不再接受新客戶。Amazon Glacier 是一項獨立服務，具有自己的 APIs，可將資料存放在保存庫中，並與 Amazon S3 和 Amazon S3 Glacier 儲存類別不同。您現有的資料將在 Amazon Glacier 中無限期保持安全且可存取。不需要遷移。對於低成本、長期的封存儲存， AWS 建議使用 [Amazon S3 Glacier 儲存類別](https://aws.amazon.com/s3/storage-classes/glacier/)，透過 S3 儲存貯體型 APIs、完整 AWS 區域 可用性、降低成本 AWS 和服務整合，提供卓越的客戶體驗。如果您想要增強功能，請考慮使用我們的解決方案指南，將資料從 Amazon S3 Glacier 保存庫傳輸至 Amazon S3 Glacier 儲存類別，以遷移至 Amazon S3 Glacier 儲存類別。 [AWS Amazon Glacier Amazon S3 ](https://aws.amazon.com/solutions/guidance/data-transfer-from-amazon-s3-glacier-vaults-to-amazon-s3/)

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 搭配 Amazon Glacier 使用 AWS SDKs
<a name="using-aws-sdk"></a>

AWS 為您提供SDKs，以開發 Amazon Glacier 的應用程式。開發套件程式庫包裝基礎 Amazon Glacier API，簡化您的程式設計任務。例如，對於傳送至 Amazon Glacier 的每個請求，您必須包含簽章以驗證您的請求。使用 SDK 程式庫時，您只需在程式碼中提供 AWS 安全登入資料，程式庫會計算必要的簽章，並將其包含在傳送至 Amazon Glacier 的請求中。 AWS SDKs 提供對應至基礎 REST API 的程式庫，並提供可用來輕鬆建構請求和處理回應的物件。

**Topics**
+ [AWS 適用於 Java 和 .NET 的 SDK 程式庫](#java-.net-sdk-libraries)
+ [搭配 AWS SDK 使用 Amazon Glacier](sdk-general-information-section.md)
+ [適用於 Java 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-java.md)
+ [適用於 .NET 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-dot-net.md)

 AWS Command Line Interface (AWS CLI) 是管理 的統一工具 AWS 服務，包括 Amazon Glacier。如需下載 的資訊 AWS CLI，請參閱 [AWS Command Line Interface](https://aws.amazon.com/cli/)。如需 Amazon Glacier CLI 命令的清單，請參閱 [AWS CLI 命令參考](https://docs.aws.amazon.com/cli/latest/reference/glacier/index.html)。

## AWS 適用於 Java 和 .NET 的 SDK 程式庫
<a name="java-.net-sdk-libraries"></a>

適用於 Java 和 .NET AWS SDKs 提供高階和低階包裝函式程式庫。

您可以使用本開發人員指南 適用於 .NET 的 AWS SDK 中的 適用於 Java 的 AWS SDK 和 ，找到使用 Amazon Glacier 的範例。

### 什麼是低階 API？
<a name="what-is-low-level-api"></a>

低階包裝函式程式庫緊密對應 Amazon Glacier 支援的基礎 REST API ([Amazon Glacier 的 API 參考](amazon-glacier-api.md))。對於每個 Amazon Glacier REST 操作，低階 API 會提供對應的方法、請求物件，讓您提供請求資訊和回應物件，讓您處理 Amazon Glacier 回應。低階包裝函式程式庫是基礎 Amazon Glacier 操作最完整的實作。

如需開發套件程式庫的詳細資訊，請參閱 [適用於 Java 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-java.md) 和 [適用於 .NET 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-dot-net.md)。

### 什麼是高階 API？
<a name="what-is-high-level-api"></a>

為了進一步簡化應用程式的開發，這些程式庫為某些操作提供較高階抽象概念。例如：
+ 上傳封存 - 使用低階 API 上傳封存，除了要儲存封存的檔案名稱和保存庫名稱外，您需要提供承載的檢查總和 (SHA-256 樹雜湊)。但是，高階 API 會為您計算檢查總和。
+ 下載封存或保存庫庫存 - 使用低階 API 下載封存，您首先要啟動工作，等待工作完成，然後取得工作輸出。您需要撰寫其他程式碼來設定 Amazon Glacier 的 Amazon Simple Notification Service (Amazon SNS) 主題，以便在任務完成時通知您。您還需要一些輪詢機制來檢查是否已將作業完成訊息發佈到主題。高階 API 提供一種方法，可下載處理所有這些步驟的封存。您只能指定要儲存下載資料的封存 ID 和資料夾路徑。

如需開發套件程式庫的詳細資訊，請參閱 [適用於 Java 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-java.md) 和 [適用於 .NET 的 AWS SDK 搭配 Amazon Glacier 使用](using-aws-sdk-for-dot-net.md)。

### 何時使用高階和低階 API
<a name="when-to-use-high-low-api"></a>

一般而言，如果高階 API 提供了執行操作所需的方法，則應使用高階 API ，因為它本身提供簡易性。但是，如果高階 API 不提供此功能，則可以使用低階 API。此外，低階 API 允許在發生故障時對操作進行精細控制，例如重試邏輯。例如，在上傳封存時，高階 API 會利用檔案大小來判斷是在單一操作上傳封存，還是使用分段上傳 API。API 還具有內建的重試邏輯，以防上傳失敗。但是，您的應用程式可能需要對這些決策進行精細控制，在這種情況下，您可以使用低階 API。