Tidak termasuk kelas penyimpanan Amazon S3 - AWS Glue

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

Tidak termasuk kelas penyimpanan Amazon S3

Jika Anda menjalankan tugas AWS Glue ETL yang membaca file atau partisi dari Amazon Simple Storage Service (Amazon S3), Anda dapat mengecualikan beberapa jenis kelas penyimpanan Amazon S3.

Kelas penyimpanan berikut tersedia di Amazon S3:

  • STANDARD — Untuk penyimpanan data yang sering diakses untuk tujuan umum.

  • INTELLIGENT_TIERING — Untuk data dengan pola akses yang berubah-ubah atau tidak diketahui.

  • STANDARD_IA dan ONEZONE_IA — Untuk data yang tahan lama, namun tidak banyak diakses.

  • GLACIER, DEEP_ARCHIVE, dan REDUCED_REDUNDANCY — Untuk arsip jangka panjang dan pelestarian digital.

Untuk informasi selengkapnya, lihat Kelas Penyimpanan Amazon S3 dalam Panduan Developer Amazon S3.

Contoh dalam bagian ini menunjukkan cara mengecualikan kelas penyimpanan GLACIER dan DEEP_ARCHIVE. Kelas-kelas ini memungkinkan Anda untuk mencantumkan file, tetapi tidak akan membiarkan Anda membaca file kecuali mereka dipulihkan. (Untuk informasi lebih lanjut, lihat Mengembalikan Objek yang Diarsipkan di Panduan Developer Amazon S3.)

Dengan menggunakan pengecualian kelas penyimpanan, Anda dapat memastikan bahwa AWS Glue pekerjaan Anda akan bekerja pada tabel yang memiliki partisi di seluruh tingkatan kelas penyimpanan ini. Tanpa pengecualian, tugas yang membaca data dari tingkatan ini gagal dengan kesalahan berikut: Amazons3Exception: operasi ini tidak berlaku untuk kelas penyimpanan objek.

Ada berbagai cara untuk memfilter kelas penyimpanan Amazon S3. AWS Glue

Tidak termasuk kelas penyimpanan Amazon S3 saat membuat Bingkai Dinamis

Untuk mengecualikan kelas penyimpanan Amazon S3 saat membuat bingkai dinamis, gunakan excludeStorageClasses di. additionalOptions AWS Gluesecara otomatis menggunakan Lister implementasi Amazon S3 sendiri untuk membuat daftar dan mengecualikan file yang sesuai dengan kelas penyimpanan yang ditentukan.

Contoh Python dan Scala berikut menunjukkan bagaimana cara untuk mengecualikan kelas penyimpanan GLACIER dan DEEP_ARCHIVE saat membuat sebuah bingkai dinamis.

Contoh Python:

glueContext.create_dynamic_frame.from_catalog( database = "my_database", tableName = "my_table_name", redshift_tmp_dir = "", transformation_ctx = "my_transformation_context", additional_options = { "excludeStorageClasses" : ["GLACIER", "DEEP_ARCHIVE"] } )

Contoh scala:

val* *df = glueContext.getCatalogSource( nameSpace, tableName, "", "my_transformation_context", additionalOptions = JsonOptions( Map("excludeStorageClasses" -> List("GLACIER", "DEEP_ARCHIVE")) ) ).getDynamicFrame()

Tidak termasuk kelas penyimpanan Amazon S3 pada tabel Katalog Data

Anda dapat menentukan pengecualian kelas penyimpanan yang akan digunakan oleh pekerjaan AWS Glue ETL sebagai parameter tabel di AWS Glue Data Catalog. Anda dapat menyertakan parameter ini di operasi CreateTable dengan menggunakan AWS Command Line Interface (AWS CLI) atau secara pemrograman menggunakan API. Untuk informasi lebih lanjut, lihat Struktur Tabel dan CreateTable.

Anda juga dapat menentukan kelas penyimpanan yang dikecualikan di AWS Glue konsol.

Untuk mengecualikan kelas penyimpanan Amazon S3 (konsol)
  1. Masuk ke AWS Management Console, lalu buka konsol AWS Glue di https://console.aws.amazon.com/glue/.

  2. Pada panel navigasi di sebelah kiri, pilih Tabel.

  3. Pilih nama tabel dalam daftar, kemudian pilih Edit tabel.

  4. Di Properti tabel, tambahkan excludeStorageClasses sebagai kunci dan [\"GLACIER\",\"DEEP_ARCHIVE\"] sebagai nilai.

  5. Pilih Apply (Terapkan).