Menggunakan AWS SDK for .NET dengan Amazon S3 Glacier - Amazon S3 Glacier

Halaman ini hanya untuk pelanggan lama layanan S3 Glacier menggunakan Vaults dan REST API asli dari tahun 2012.

Jika Anda mencari solusi penyimpanan arsip, kami sarankan untuk menggunakan kelas penyimpanan S3 Glacier di Amazon S3, Pengambilan Instan Gletser S3, Pengambilan Fleksibel Gletser S3, dan S3 Glacier Deep Archive. Untuk mempelajari lebih lanjut tentang opsi penyimpanan ini, lihat Kelas penyimpanan S3 Glacier dan Penyimpanan data jangka panjang menggunakan kelas penyimpanan S3 Glacier di Panduan Pengguna Amazon S3. Kelas penyimpanan ini menggunakan Amazon S3 API, tersedia di semua wilayah, dan dapat dikelola dalam konsol Amazon S3. Mereka menawarkan fitur seperti Analisis Biaya Penyimpanan, Lensa Penyimpanan, fitur keamanan termasuk beberapa opsi enkripsi, dan banyak lagi.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan AWS SDK for .NET dengan Amazon S3 Glacier

API AWS SDK for .NET tersedia di AWSSDK.dll. Untuk informasi tentang mengunduh AWS SDK for .NET, buka Pustaka Kode Sampel. Seperti yang dijelaskan di Menggunakan AWS SDK dengan Amazon S3 Glacier, AWS SDK for .NET menyediakan API tingkat tinggi dan tingkat rendah.

catatan

API tingkat rendah dan API tingkat tinggi menyediakan klien thread aman untuk mengakses S3 Glacier. Sebagai praktik terbaik, aplikasi Anda harus membuat satu klien dan menggunakan kembali klien di antara thread.

Menggunakan API Tingkat Rendah

Kelas AmazonGlacierClient tingkat rendah menyediakan semua metode yang memetakan ke operasi REST yang mendasarinya dari Amazon S3 Glacier (S3 Glacier) (Referensi API untuk Amazon S3 Glacier). Ketika memanggil salah satu metode ini, Anda harus membuat objek permintaan yang sesuai dan memberikan objek respons tempat metode ini dapat mengembalikan respons S3 Glacier ke operasi.

Misalnya, kelas AmazonGlacierClient menyediakan metode CreateVault untuk membuat vault. Metode ini memetakan ke operasi Buat REST Vault yang mendasarinya (lihat Membuat Vault (PUT vault)). Untuk menggunakan metode ini, Anda harus membuat instans CreateVaultRequest dan kelas CreateVaultResponse untuk memberikan informasi permintaan dan menerima respons S3 Glacier seperti yang ditunjukkan dalam potongan kode C# berikut:

AmazonGlacierClient client; client = new AmazonGlacierClient(Amazon.RegionEndpoint.USEast1); CreateVaultRequest request = new CreateVaultRequest() { AccountId = "-", VaultName = "*** Provide vault name ***" }; CreateVaultResponse response = client.CreateVault(request);

Semua sampel tingkat rendah dalam panduan menggunakan pola ini.

catatan

Segmen kode sebelumnya menentukan AccountId ketika membuat permintaan. Namun, ketika menggunakan AWS SDK for .NET, AccountId dalam permintaan bersifat opsional, dan karena itu semua contoh tingkat rendah dalam panduan ini tidak menetapkan nilai ini. AccountId adalah ID Akun AWS. Nilai ini harus sesuai dengan ID Akun AWS yang terkait dengan kredensial yang digunakan untuk menandatangani permintaan. Anda dapat menentukan ID Akun AWS atau '-' secara opsional, dalam hal ini, S3 Glacier menggunakan ID Akun AWS yang terkait dengan kredensial yang digunakan untuk menandatangani permintaan. Jika Anda menentukan ID Akun, jangan sertakan tanda hubung di dalamnya. Saat menggunakan AWS SDK for .NET, jika Anda tidak memberikan ID akun, pustaka akan menetapkan ID akun ke '-'.

Menggunakan API Tingkat Tinggi

Untuk lebih menyederhanakan pengembangan aplikasi Anda, AWS SDK for .NET menyediakan kelas ArchiveTransferManageryang mengimplementasikan abstraksi tingkat yang lebih tinggi untuk beberapa metode dalam API tingkat rendah. Ini menyediakan metode yang berguna, seperti Upload dan Download, untuk operasi arsip.

Sebagai contoh, potongan kode C# berikut menggunakan metode tingkat tinggi Upload untuk mengunggah arsip.

string vaultName = "examplevault"; string archiveToUpload = "c:\folder\exampleArchive.zip"; var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USEast1); string archiveId = manager.Upload(vaultName, "archive description", archiveToUpload).ArchiveId;

Perhatikan bahwa operasi apa pun yang Anda lakukan berlaku untuk Wilayah AWS yang Anda tentukan saat membuat objek ArchiveTransferManager. Semua contoh tingkat tinggi dalam panduan ini menggunakan pola ini.

catatan

Kelas ArchiveTransferManager tingkat tinggi masih memerlukan klien AmazonGlacierClient tingkat rendah, yang Anda dapat teruskan secara eksplisit atau ArchiveTransferManager membuat klien.

Menjalankan Contoh Kode

Cara termudah untuk memulai dengan contoh kode .NET adalah dengan menginstal AWS SDK for .NET. Untuk informasi selengkapnya, buka Amazon SDK for .NET.

Prosedur berikut menguraikan langkah-langkah bagi Anda untuk menguji contoh kode yang diberikan dalam panduan ini.

1

Buat profil kredensial untuk kredensial AWS Anda seperti yang dijelaskan dalam topik Amazon SDK for .NET Mengonfigurasi Kredensial AWS.

2

Buat proyek Visual Studio baru menggunakan templat Proyek Kosong AWS.

3

Ganti kode dalam file proyek, Program.cs, dengan kode di bagian yang sedang Anda baca.

4

Jalankan kode. Verifikasi bahwa objek dibuat menggunakan AWS Management Console. Untuk informasi selengkapnya tentang AWS Management Console, buka http://aws.amazon.com/console/.

Mengatur Titik Akhir

Secara default, AWS SDK for .NET menetapkan titik akhir ke Wilayah US West (Oregon) (https://glacier.us-west-2.amazonaws.com). Anda dapat mengatur titik akhir ke Wilayah AWS lainnya seperti yang ditunjukkan dalam potongan C# berikut.

Potongan berikut menunjukkan cara mengatur titik akhir ke Wilayah US West (Oregon) (us-west-2) di API tingkat rendah.

AmazonGlacierClient client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);

Potongan berikut menunjukkan cara mengatur titik akhir ke Wilayah US West (Oregon) di API tingkat tinggi.

var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2);

Untuk daftar Wilayah AWS yang didukung dan titik akhir saat ini, lihat Mengakses Amazon S3 Glacier.