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
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan AWS SDK for Java dengan Amazon S3 Glacier
ParameterAWS SDK for Javamenyediakan API tingkat tinggi dan tingkat rendah untuk Amazon S3 Glacier (S3 Glacier) seperti yang dijelaskan dalamMenggunakan AWS SDK dengan Amazon S3 Glacier. Untuk informasi tentang mengunduh AWS SDK for Java, lihat Amazon SDK for Java
catatan
AWS SDK for Java menyediakan klien thread aman untuk mengakses S3 Glacier. Sebagai praktik terbaik, aplikasi Anda harus membuat satu klien dan menggunakan kembali klien di antara thread.
Topik
Menggunakan API Tingkat Rendah
Kelas AmazonGlacierClient
tingkat rendah menyediakan semua metode yang memetakan ke operasi REST yang mendasarinya dari 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 objek CreateVaultResult
yang menerima respons S3 Glacier seperti yang ditunjukkan dalam potongan kode Java berikut:
AmazonGlacierClient client = new AmazonGlacierClient(credentials); client.setEndpoint("https://glacier.us-west-2.amazonaws.com/"); CreateVaultRequest request = new CreateVaultRequest() .withAccountId("-") .withVaultName(vaultName); CreateVaultResult result = client.createVault(createVaultRequest);
Semua sampel tingkat rendah dalam panduan menggunakan pola ini.
catatan
Segmen kode sebelumnya menentukan AccountID
ketika membuat permintaan. Namun, ketika menggunakan AWS SDK for Java, 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 Java, 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 Java menyediakan kelas ArchiveTransferManager
yang mengimplementasikan abstraksi tingkat yang lebih tinggi untuk beberapa metode dalam API tingkat rendah. Ini menyediakan metode yang berguna, seperti metode upload
dan download
, untuk operasi arsip.
Sebagai contoh, potongan kode Java berikut menggunakan metode tingkat tinggi upload
untuk mengunggah arsip.
String vaultName = "examplevault"; String archiveToUpload = "c:/folder/exampleArchive.zip"; ArchiveTransferManager atm = new ArchiveTransferManager(client, credentials); String archiveId = atm.upload(vaultName, "Tax 2012 documents", new File(archiveToUpload)).getArchiveId();
Perhatikan bahwa operasi apa pun yang Anda lakukan berlaku untuk Wilayah AWS yang Anda tentukan saat membuat objek ArchiveTransferManager
. Jika Anda tidak menentukan Wilayah AWS, AWS SDK for Java mengatur us-east-1
sebagai Wilayah AWS default.
Semua contoh tingkat tinggi dalam panduan ini menggunakan pola ini.
catatan
Kelas ArchiveTransferManager
tingkat tinggi dapat dibangun dengan instans AmazonGlacierClient
atau instans AWSCredentials
.
Menjalankan Contoh Java untuk Amazon S3 Glacier Menggunakan Eclipse
Cara termudah untuk memulai dengan contoh kode Java adalah dengan menginstal AWS Toolkit for Eclipse terbaru. Untuk informasi tentang menginstal atau memperbarui ke kit alat terbaru, buka http://aws.amazon.com/eclipse
1 |
Buat profil kredensial default untuk kredensial AWS Anda seperti yang dijelaskan dalam topik AWS SDK for Java Menyediakan Kredensial AWS di Amazon SDK for Java. |
2 |
Buat Proyek Java AWS baru di Eclipse. Proyek ini sudah dikonfigurasi sebelumnya dengan AWS SDK for Java. |
3 |
Salin kode dari bagian yang sedang Anda baca ke proyek Anda. |
4 |
Perbarui kode dengan menyediakan data yang diperlukan. Misalnya, jika mengunggah file, berikan alur file dan nama bucket. |
5 |
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 Java menggunakan titik akhir https://glacier.us-east-1.amazonaws.com
. Anda dapat mengatur titik akhir secara eksplisit seperti ditunjukkan dalam potongan kode Java berikut.
Potongan berikut menunjukkan cara mengatur titik akhir ke Wilayah US West (Oregon) (us-west-2
) di API tingkat rendah.
client = new AmazonGlacierClient(credentials); client.setEndpoint("glacier.us-west-2.amazonaws.com");
Potongan berikut menunjukkan cara mengatur titik akhir ke Wilayah US West (Oregon) di API tingkat tinggi.
glacierClient = new AmazonGlacierClient(credentials); sqsClient = new AmazonSQSClient(credentials); snsClient = new AmazonSNSClient(credentials); glacierClient.setEndpoint("glacier.us-west-2.amazonaws.com"); sqsClient.setEndpoint("sqs.us-west-2.amazonaws.com"); snsClient.setEndpoint("sns.us-west-2.amazonaws.com"); ArchiveTransferManager atm = new ArchiveTransferManager(glacierClient, sqsClient, snsClient);
Untuk daftar Wilayah AWS yang didukung dan titik akhir, lihat Mengakses Amazon S3 Glacier.