AWS Glue Data Catalog pandangan - Amazon Redshift

Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai 1 November 2025. Jika Anda ingin menggunakan Python UDFs, buat UDFs sebelum tanggal tersebut. Python yang ada UDFs akan terus berfungsi seperti biasa. Untuk informasi lebih lanjut, lihat posting blog.

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

AWS Glue Data Catalog pandangan

Topik ini menjelaskan cara membuat tampilan di AWS Glue Data Catalog. Anda dapat menggunakan tampilan di Katalog Data untuk mengakses data di sumber data yang berbeda menggunakan skema yang sama.

Dengan membuat tampilan di Katalog Data, Anda dapat membuat satu skema tampilan umum dan objek metadata untuk digunakan di seluruh mesin seperti Amazon Athena dan Amazon EMR Spark. Melakukannya memungkinkan Anda menggunakan tampilan yang sama di seluruh danau data dan gudang data agar sesuai dengan kasus penggunaan Anda. Tampilan dalam Katalog Data bersifat khusus karena dikategorikan sebagai tampilan yang lebih jelas, di mana izin akses ditentukan oleh pengguna yang membuat tampilan, bukan pengguna yang menanyakan tampilan. Berikut ini adalah beberapa kasus penggunaan dan manfaat membuat tampilan di Katalog Data:

  • Buat tampilan yang membatasi akses data berdasarkan izin yang dibutuhkan pengguna. Misalnya, Anda dapat menggunakan tampilan di Katalog Data untuk mencegah karyawan yang tidak bekerja di departemen SDM melihat informasi identitas pribadi (PII).

  • Pastikan pengguna tidak dapat mengakses catatan yang tidak lengkap. Dengan menerapkan filter tertentu ke tampilan Anda di Katalog Data, Anda memastikan bahwa catatan data di dalam tampilan di Katalog Data selalu lengkap.

  • Tampilan Katalog Data memiliki manfaat keamanan yang disertakan untuk memastikan bahwa definisi kueri yang digunakan untuk membuat tampilan harus lengkap untuk membuat tampilan. Manfaat keamanan ini berarti bahwa tampilan dalam Katalog Data tidak rentan terhadap perintah SQL dari pemain jahat.

  • Tampilan dalam Katalog Data mendukung keuntungan yang sama seperti tampilan normal, seperti membiarkan pengguna mengakses tampilan tanpa membuat tabel yang mendasarinya tersedia bagi pengguna.

Untuk membuat tampilan di Katalog Data, Anda harus memiliki tabel eksternal Spectrum, objek yang terdapat dalam database yang dikelola Lake Formation, atau tabel Apache Iceberg.

Definisi tampilan Katalog Data disimpan dalam AWS Glue Data Catalog. Gunakan AWS Lake Formation untuk memberikan akses melalui hibah sumber daya, hibah kolom, atau kontrol akses berbasis tag. Untuk informasi selengkapnya tentang pemberian dan pencabutan akses di Lake Formation, lihat Memberikan dan mencabut izin pada sumber daya Katalog Data.

Saat Anda menggunakan Amazon Redshift untuk menjalankan kueri yang mereferensikan AWS Glue Data Catalog tampilan tersebut, Amazon Redshift secara otomatis menutupi bidang dalam tabel sistem tertentu dan kolom tampilan saat mencatat metadata tentang kueri tersebut. Untuk informasi selengkapnya, lihat Logging aman di Panduan Manajemen Amazon Redshift.

Prasyarat

Sebelum Anda dapat membuat tampilan di Katalog Data, pastikan bahwa Anda telah menyelesaikan prasyarat berikut:

  • Pastikan peran IAM Anda memiliki kebijakan kepercayaan berikut.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "glue.amazonaws.com", "lakeformation.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  • Anda juga memerlukan kebijakan peran pass berikut.

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1", "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": [ "glue.amazonaws.com", "lakeformation.amazonaws.com" ] } } } ] }
  • Terakhir, Anda juga memerlukan izin berikut.

    • Glue:GetDatabase

    • Glue:GetDatabases

    • Glue:CreateTable

    • Glue:GetTable

    • Glue:UpdateTable

    • Glue:DeleteTable

    • Glue:GetTables

    • Glue:SearchTables

    • Glue:BatchGetPartition

    • Glue:GetPartitions

    • Glue:GetPartition

    • Glue:GetTableVersion

    • Glue:GetTableVersions

End-to-end contoh

Mulailah dengan membuat skema eksternal berdasarkan database Katalog Data Anda.

CREATE EXTERNAL SCHEMA IF NOT EXISTS external_schema FROM DATA CATALOG DATABASE 'external_data_catalog_db' IAM_ROLE 'arn:aws:iam::123456789012:role/sample-role';

Anda sekarang dapat membuat tampilan Katalog Data.

CREATE EXTERNAL PROTECTED VIEW external_schema.remote_view AS SELECT * FROM external_schema.remote_table;

Anda kemudian dapat mulai menanyakan tampilan Anda.

SELECT * FROM external_schema.remote_view;

Untuk informasi selengkapnya tentang perintah SQL yang terkait dengan tampilan di Katalog Data, lihat MEMBUAT TAMPILAN EKSTERNAL, MENGUBAH TAMPILAN EKSTERNAL, dan MENJATUHKAN TAMPILAN EKSTERNAL.

Pertimbangan dan batasan

Berikut ini adalah pertimbangan dan batasan yang berlaku untuk tampilan yang dibuat dalam Katalog Data.

  • AWS Glue Data Catalog tampilan hanya didukung pada cluster yang RA3 disediakan atau grup kerja Redshift Serverless.

  • Anda tidak dapat membuat tampilan Katalog Data yang didasarkan pada tampilan lain.

  • Anda hanya dapat memiliki 10 tabel dasar dalam tampilan Katalog Data.

  • Penentu tampilan harus memiliki SELECT GRANTABLE izin penuh pada tabel dasar.

  • Tampilan hanya dapat berisi objek Lake Formation dan built-in. Objek berikut tidak diizinkan di dalam tampilan.

    • Tabel sistem

    • Fungsi yang ditentukan pengguna () UDFs

    • Tabel pergeseran merah, tampilan, tampilan terwujud, dan tampilan pengikatan akhir yang tidak ada dalam pembagian data terkelola Lake Formation.

  • Tampilan tidak dapat berisi tabel Redshift Spectrum bersarang.

  • AWS Glue representasi objek dasar tampilan harus sama Akun AWS dan Wilayah sebagai tampilan.