Mengaktifkan pengoptimal pemadatan - AWS Glue

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

Mengaktifkan pengoptimal pemadatan

Anda dapat menggunakan AWS Glue konsol, AWS CLI, atau AWS API untuk mengaktifkan pemadatan untuk tabel Apache Iceberg di Katalog Data. AWS Glue Untuk tabel baru, Anda dapat memilih Apache Iceberg sebagai format tabel dan mengaktifkan pemadatan saat Anda membuat tabel. Pemadatan dinonaktifkan secara default untuk tabel baru.

Console
Untuk mengaktifkan pemadatan
  1. Buka AWS Glue konsol di https://console.aws.amazon.com/glue/dan masuk sebagai administrator data lake, pembuat tabel, atau pengguna yang telah diberikan lakeformation:GetDataAccess izin glue:UpdateTable dan di atas tabel.

  2. Di panel navigasi, di bawah Katalog Data, pilih Tabel.

  3. Pada halaman Tabel, pilih tabel dalam format tabel terbuka yang ingin Anda aktifkan pemadatan, lalu di bawah menu Tindakan, pilih Optimasi, lalu pilih Aktifkan.

    Anda juga dapat mengaktifkan pemadatan dengan memilih tab Pengoptimalan tabel pada halaman Detail tabel. Pilih tab Pengoptimalan tabel di bagian bawah halaman, dan pilih Aktifkan pemadatan.

    Opsi Aktifkan optimasi juga tersedia saat Anda membuat tabel Gunung Es baru di Katalog Data.

  4. Pada halaman Aktifkan pengoptimalan, pilih Pemadatan di bawah opsi Optimasi.

    Halaman detail tabel Apache Iceberg dengan opsi Aktifkan pemadatan.
  5. Selanjutnya, pilih peran IAM dari drop-down dengan izin yang ditunjukkan di bagian. Prasyarat pengoptimalan tabel

    Anda juga dapat memilih Buat opsi peran IAM baru untuk membuat peran kustom dengan izin yang diperlukan untuk menjalankan pemadatan.

    Ikuti langkah-langkah di bawah ini untuk memperbarui peran IAM yang ada:

    1. Untuk memperbarui kebijakan izin untuk peran IAM, di konsol IAM, buka peran IAM yang digunakan untuk menjalankan pemadatan.

    2. Di bagian Tambahkan izin, pilih Buat kebijakan. Di jendela browser yang baru dibuka, buat kebijakan baru untuk digunakan dengan peran Anda.

    3. Pada halaman Buat kebijakan, pilih JSON tab. Salin kode JSON yang ditampilkan di Prasyarat ke bidang editor kebijakan.

  6. Jika Anda memiliki konfigurasi kebijakan keamanan di mana pengoptimal tabel Iceberg perlu mengakses bucket Amazon S3 dari Virtual Private Cloud (VPC) tertentu, buat koneksi jaringan atau gunakan yang sudah ada. AWS Glue

    Jika Anda belum menyiapkan koneksi AWS Glue VPC, buat yang baru dengan mengikuti langkah-langkah di bagian Membuat koneksi untuk konektor menggunakan AWS Glue konsol atau /SDK. AWS CLI

  7. Pilih strategi pemadatan. Opsi yang tersedia adalah:

    • Binpack — Binpack adalah strategi pemadatan default di Apache Iceberg. Ini menggabungkan file data yang lebih kecil menjadi yang lebih besar untuk kinerja yang optimal.

    • Sortir - Penyortiran di Apache Iceberg adalah teknik organisasi data yang mengelompokkan informasi dalam file berdasarkan kolom tertentu, secara signifikan meningkatkan kinerja kueri dengan mengurangi jumlah file yang perlu diproses. Anda menentukan urutan pengurutan dalam metadata Iceberg menggunakan bidang urutan-urutan, dan ketika beberapa kolom ditentukan, data diurutkan dalam urutan kolom muncul dalam urutan pengurutan, memastikan catatan dengan nilai yang sama disimpan bersama dalam file. Strategi pemadatan penyortiran mengambil pengoptimalan lebih lanjut dengan menyortir data di semua file dalam partisi.

    • Z-order - Z-ordering adalah cara untuk mengatur data ketika Anda perlu mengurutkan berdasarkan beberapa kolom dengan kepentingan yang sama. Tidak seperti penyortiran tradisional yang memprioritaskan satu kolom di atas yang lain, pemesanan Z memberikan bobot seimbang untuk setiap kolom, membantu mesin kueri Anda membaca lebih sedikit file saat mencari data.

      Teknik ini bekerja dengan menyatukan digit biner nilai dari kolom yang berbeda. Misalnya, jika Anda memiliki angka 3 dan 4 dari dua kolom, urutan Z pertama-tama mengubahnya menjadi biner (3 menjadi 011 dan 4 menjadi 100), kemudian memasukkan digit ini untuk membuat nilai baru: 011010. Interleaving ini menciptakan pola yang membuat data terkait tetap berdekatan secara fisik.

      Z-pemesanan sangat efektif untuk kueri multi-dimensi. Misalnya, tabel pelanggan yang diurutkan Z berdasarkan pendapatan, status, dan kode pos dapat memberikan kinerja yang unggul dibandingkan dengan penyortiran hierarkis saat melakukan kueri di beberapa dimensi. Organisasi ini memungkinkan kueri yang menargetkan kombinasi tertentu dari pendapatan dan lokasi geografis untuk dengan cepat menemukan data yang relevan sambil meminimalkan pemindaian file yang tidak perlu.

  8. Pilih Aktifkan pengoptimalan.

AWS CLI

Contoh berikut menunjukkan cara mengaktifkan pemadatan. Ganti ID akun dengan ID AWS akun yang valid. Ganti nama database dan nama tabel dengan nama tabel Iceberg yang sebenarnya dan nama database. Ganti roleArn dengan Nama AWS Sumber Daya (ARN) peran IAM dan nama peran IAM yang memiliki izin yang diperlukan untuk menjalankan pemadatan. Anda dapat mengganti strategi pemadatan sort dengan strategi lain yang didukung seperti z-order ataubinpack.

order” tergantung pada kebutuhan Anda.

aws glue create-table-optimizer \ --catalog-id 123456789012 \ --database-name iceberg_db \ --table-name iceberg_table \ --table-optimizer-configuration '{ "roleArn": "arn:aws:iam::123456789012:role/optimizer_role", "enabled": true, "vpcConfiguration": {"glueConnectionName": "glue_connection_name"}, "compactionConfiguration": { "icebergConfiguration": {"strategy": "sort"} } }'\ --type compaction
AWS API

Panggilan CreateTableOptimizeroperasi untuk mengaktifkan pemadatan untuk tabel.

Setelah Anda mengaktifkan pemadatan, tab pengoptimalan tabel menunjukkan detail pemadatan berikut setelah proses pemadatan selesai:

Waktu mulai

Waktu di mana proses pemadatan dimulai dalam Katalog Data. Nilainya adalah stempel waktu dalam waktu UTC.

Waktu akhir

Waktu di mana proses pemadatan berakhir di Katalog Data. Nilainya adalah stempel waktu dalam waktu UTC.

Status

Status pemadatan berjalan. Nilai adalah sukses atau gagal.

File dipadatkan

Jumlah total file yang dipadatkan.

Byte dipadatkan

Jumlah total byte yang dipadatkan.