Mengisi dan mengelola tabel transaksional - AWS Glue

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

Mengisi dan mengelola tabel transaksional

Apache Iceberg, Apache Hudi, dan Linux Foundation Delta Lake adalah format tabel open-source yang dirancang untuk menangani analisis data skala besar dan beban kerja data lake di Apache Spark.

Anda dapat mengisi tabel Iceberg, Hudi, dan Delta Lake dengan menggunakan metode berikut: AWS Glue Data Catalog

  • Perayap AWS Glue; — Perayap AWS Glue s dapat secara otomatis menemukan dan mengisi metadata tabel Iceberg, Hudi dan Delta Lake di Katalog Data. Untuk informasi selengkapnya, lihat Menggunakan crawler untuk mengisi Katalog Data .

  • AWS Glue Pekerjaan ETL — Anda dapat membuat pekerjaan ETL untuk menulis data ke tabel Iceberg, Hudi, dan Delta Lake dan mengisi metadata mereka di Katalog Data. Untuk informasi selengkapnya, lihat Menggunakan kerangka kerja data lake dengan pekerjaan AWS Glue ETL.

  • AWS Glue konsol, AWS Lake Formation konsol, AWS CLI atau API — Anda dapat menggunakan AWS Glue konsol, konsol Lake Formation, atau API untuk membuat dan mengelola definisi tabel Iceberg di Katalog Data.

Membuat tabel Apache Iceberg

Anda dapat membuat tabel Apache Iceberg yang menggunakan format data Apache Parquet di AWS Glue Data Catalog dengan data yang berada di Amazon S3. Tabel dalam Katalog Data adalah definisi metadata yang mewakili data dalam penyimpanan data. Secara default, AWS Glue membuat tabel Iceberg v2. Untuk perbedaan antara tabel v1 dan v2, lihat Format perubahan versi dalam dokumentasi Apache Iceberg.

Apache Iceberg adalah format tabel terbuka untuk dataset analitik yang sangat besar. Iceberg memungkinkan perubahan mudah pada skema Anda, juga dikenal sebagai evolusi skema, yang berarti bahwa pengguna dapat menambahkan, mengganti nama, atau menghapus kolom dari tabel data tanpa mengganggu data yang mendasarinya. Iceberg juga menyediakan dukungan untuk pembuatan versi data, yang memungkinkan pengguna untuk melacak perubahan data dari waktu ke waktu. Ini memungkinkan fitur perjalanan waktu, yang memungkinkan pengguna untuk mengakses dan menanyakan versi historis data dan menganalisis perubahan data antara pembaruan dan penghapusan.

Anda dapat menggunakan AWS Glue atau konsol Lake Formation atau CreateTable operasi di AWS Glue API untuk membuat tabel Gunung Es di Katalog Data. Untuk informasi selengkapnya, lihat CreateTable tindakan (Python: create_table).

Saat Anda membuat tabel Gunung Es di Katalog Data, Anda harus menentukan format tabel dan jalur file metadata di Amazon S3 agar dapat melakukan pembacaan dan penulisan.

Anda dapat menggunakan Lake Formation untuk mengamankan tabel Gunung Es menggunakan izin kontrol akses berbutir halus saat Anda mendaftarkan lokasi data Amazon S3. AWS Lake Formation Untuk data sumber di Amazon S3 dan metadata yang tidak terdaftar di Lake Formation, akses ditentukan oleh kebijakan izin IAM untuk Amazon S3 dan tindakan. AWS Glue Untuk informasi selengkapnya, lihat Mengelola izin.

catatan

Data Catalog tidak mendukung pembuatan partisi dan menambahkan properti tabel Iceberg.

Prasyarat

Untuk membuat tabel Gunung Es di Katalog Data, dan mengatur izin akses data Lake Formation, Anda harus melengkapi persyaratan berikut:

  1. Izin diperlukan untuk membuat tabel Gunung Es tanpa data yang terdaftar di Lake Formation.

    Selain izin yang diperlukan untuk membuat tabel di Katalog Data, pembuat tabel memerlukan izin berikut:

    • s3:PutObjectpada sumber daya arn:aws:s3::: {bucketName}

    • s3:GetObjectpada sumber daya arn:aws:s3::: {bucketName}

    • s3:DeleteObjectpada sumber daya arn:aws:s3::: {bucketName}

  2. Izin yang diperlukan untuk membuat tabel Gunung Es dengan data yang terdaftar di Lake Formation:

    Untuk menggunakan Lake Formation untuk mengelola dan mengamankan data di danau data Anda, daftarkan lokasi Amazon S3 Anda yang memiliki data untuk tabel dengan Lake Formation. Ini agar Lake Formation dapat menjual kredensyal ke layanan AWS analitis seperti Athena, Redshift Spectrum, dan Amazon EMR untuk mengakses data. Untuk informasi selengkapnya tentang mendaftarkan lokasi Amazon S3, lihat Menambahkan lokasi Amazon S3 ke data lake Anda.

    Kepala sekolah yang membaca dan menulis data dasar yang terdaftar di Lake Formation memerlukan izin berikut:

    • lakeformation:GetDataAccess

    • DATA_LOCATION_ACCESS

      Kepala sekolah yang memiliki izin lokasi data di lokasi juga memiliki izin lokasi di semua lokasi anak.

      Untuk informasi selengkapnya tentang izin lokasi data, lihat Ulink kontrol akses data yang mendasari.

Untuk mengaktifkan pemadatan, layanan perlu mengambil peran IAM yang memiliki izin untuk memperbarui tabel di Katalog Data. Untuk detailnya, lihat Prasyarat pengoptimalan tabel

Membuat tabel Iceberg

Anda dapat membuat tabel Iceberg v1 dan v2 menggunakan atau konsol Lake AWS Glue Formation atau AWS Command Line Interface seperti yang didokumentasikan di halaman ini. Anda juga dapat membuat tabel Iceberg menggunakan. Perayap AWS Glue Untuk informasi selengkapnya, lihat Katalog Data dan Crawler di Panduan AWS Glue Pengembang.

Untuk membuat tabel Iceberg

Console
  1. Masuk ke AWS Management Console dan buka AWS Glue konsol di https://console.aws.amazon.com/glue/.

  2. Di bawah Katalog Data, pilih Tabel, dan gunakan tombol Buat tabel untuk menentukan atribut berikut:

    • Nama tabel - Masukkan nama untuk tabel. Jika Anda menggunakan Athena untuk mengakses tabel, gunakan tips penamaan ini di Panduan Pengguna Amazon Athena.

    • Database — Pilih database yang ada atau buat yang baru.

    • Deskripsi — Deskripsi tabel. Anda dapat menulis deskripsi untuk membantu Anda memahami isi tabel tersebut.

    • Format tabel - Untuk format Tabel, pilih Apache Iceberg.

    • Aktifkan pemadatan — Pilih Aktifkan pemadatan untuk memadatkan objek Amazon S3 kecil dalam tabel menjadi objek yang lebih besar.

    • Peran IAM — Untuk menjalankan pemadatan, layanan mengasumsikan peran IAM atas nama Anda. Anda dapat memilih peran IAM menggunakan drop-down. Pastikan peran memiliki izin yang diperlukan untuk mengaktifkan pemadatan.

      Untuk mempelajari lebih lanjut tentang izin yang diperlukan, lihat Prasyarat pengoptimalan tabel .

    • Lokasi - Tentukan jalur ke folder di Amazon S3 yang menyimpan tabel metadata. Iceberg membutuhkan file metadata dan lokasi di Katalog Data untuk dapat melakukan pembacaan dan penulisan.

    • Skema - Pilih Tambahkan kolom untuk menambahkan kolom dan tipe data kolom. Anda memiliki opsi untuk membuat tabel kosong dan memperbarui skema nanti. Katalog Data mendukung tipe data Hive. Untuk informasi selengkapnya, lihat Tipe data sarang.

      Iceberg memungkinkan Anda untuk mengembangkan skema dan partisi setelah Anda membuat tabel. Anda dapat menggunakan kueri Athena untuk memperbarui skema tabel dan kueri Spark untuk memperbarui partisi.

AWS CLI
aws glue create-table \ --database-name iceberg-db \ --region us-west-2 \ --open-table-format-input '{ "IcebergInput": { "MetadataOperation": "CREATE", "Version": "2" } }' \ --table-input '{"Name":"test-iceberg-input-demo", "TableType": "EXTERNAL_TABLE", "StorageDescriptor":{ "Columns":[ {"Name":"col1", "Type":"int"}, {"Name":"col2", "Type":"int"}, {"Name":"col3", "Type":"string"} ], "Location":"s3://DOC_EXAMPLE_BUCKET_ICEBERG/" } }'
Topik