Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengintegrasikan Tabel AWS Amazon S3 dengan layanan analitik
Topik ini mencakup prasyarat dan prosedur yang diperlukan untuk mengintegrasikan bucket tabel Amazon S3 Anda dengan layanan analitik. AWS Untuk gambaran umum tentang cara kerja integrasi, lihatIkhtisar integrasi Tabel S3.
catatan
Integrasi ini menggunakan AWS Glue Data Catalog dan mungkin menimbulkan AWS Glue permintaan dan biaya penyimpanan. Untuk informasi selengkapnya, silakan lihat Harga AWS Glue
Harga tambahan berlaku untuk menjalankan kueri pada Tabel S3. Untuk informasi selengkapnya, lihat informasi harga untuk mesin kueri yang Anda gunakan.
Prasyarat untuk integrasi
Prasyarat berikut diperlukan untuk mengintegrasikan bucket tabel dengan layanan analitik: AWS
Tambahkan AWS Glue izin berikut ke prinsipal AWS Identity and Access Management (IAM) Anda:
glue:CreateCatalogyang diperlukan untuk membuat katalogs3tablescatalogfederasi di Katalog Dataglue:PassConnectionmemberikan hak kepada kepala panggilan untuk mendelegasikan pembuatanaws:s3tableskoneksi ke layanan Amazon S3.
Perbarui ke versi terbaru dari AWS Command Line Interface (AWS CLI).
penting
Saat membuat tabel, pastikan Anda menggunakan semua huruf kecil dalam nama tabel dan definisi tabel Anda. Misalnya, pastikan bahwa nama kolom Anda semua huruf kecil. Jika nama tabel atau definisi tabel berisi huruf kapital, tabel tidak didukung oleh AWS Lake Formation atau definisi tabel AWS Glue Data Catalog. Dalam hal ini, tabel Anda tidak akan terlihat oleh layanan AWS analitik seperti Amazon Athena, meskipun bucket tabel Anda terintegrasi dengan AWS layanan analitik.
Jika definisi tabel berisi huruf kapital, Anda menerima pesan galat berikut saat menjalankan SELECT kueri di Athena: “GENERIC_INTERNAL_ERROR: Get table request failed: com.amazonaws.services.glue.model. ValidationException: Sumber Daya Federasi Tidak Didukung - Nama tabel atau kolom tidak valid.
Mengintegrasikan bucket tabel dengan AWS layanan analitik
Anda dapat mengintegrasikan bucket tabel dengan Katalog Data dan layanan AWS analitik menggunakan kontrol akses IAM secara default, atau secara opsional menggunakan kontrol akses Lake Formation.
Saat Anda mengintegrasikan menggunakan kontrol akses IAM, Anda memerlukan hak istimewa IAM untuk mengakses bucket dan tabel tabel Amazon S3, objek Katalog Data, dan mesin kueri yang Anda gunakan. Jika Anda memilih untuk berintegrasi menggunakan Lake Formation, maka kontrol akses IAM dan hibah Lake Formation menentukan akses ke sumber daya Katalog Data. Silakan merujuk ke Panduan AWS Lake Formation Pengembang untuk mempelajari lebih lanjut tentang integrasi Lake Formation.
Bagian berikut menjelaskan bagaimana Anda dapat menggunakan konsol manajemen Amazon S3 atau AWS CLI untuk mengonfigurasi integrasi dengan kontrol akses IAM.
Buka konsol Amazon S3 di. https://console.aws.amazon.com/s3/
Di panel navigasi kiri, pilih Bucket tabel.
Pilih Buat ember meja.
Halaman bucket Create table terbuka.
Masukkan nama bucket Table dan pastikan kotak centang Aktifkan integrasi dipilih.
Pilih Buat ember meja. Amazon S3 akan mencoba mengintegrasikan bucket tabel Anda secara otomatis di Wilayah tersebut.
Untuk mengintegrasikan bucket tabel dengan kontrol akses IAM menggunakan AWS CLI
Langkah-langkah berikut menunjukkan cara menggunakan bucket tabel AWS CLI untuk mengintegrasikan. Untuk menggunakan langkah-langkah ini, ganti dengan informasi Anda sendiri.user input placeholders
Buat ember meja.
aws s3tables create-table-bucket \ --regionus-east-1\ --nameamzn-s3-demo-table-bucket-
Buat file bernama
catalog.jsonyang berisi katalog berikut:{ "Name": "s3tablescatalog", "CatalogInput": { "FederatedCatalog": { "Identifier": "arn:aws:s3tables:us-east-1:111122223333:bucket/*", "ConnectionName": "aws:s3tables" }, "CreateDatabaseDefaultPermissions":[ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": ["ALL"] } ], "CreateTableDefaultPermissions":[ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": ["ALL"] } ], "AllowFullTableExternalDataAccess": "True" } }Buat
s3tablescatalogkatalog dengan menggunakan perintah berikut. Membuat katalog ini mengisi dengan objek yang sesuai AWS Glue Data Catalog dengan bucket tabel, ruang nama, dan tabel.aws glue create-catalog \ --regionus-east-1\ --cli-input-json file://catalog.json Verifikasi bahwa
s3tablescatalogkatalog telah ditambahkan AWS Glue dengan menggunakan perintah berikut:aws glue get-catalog --catalog-id s3tablescatalog
Proses integrasi layanan AWS analitik telah diperbarui untuk menggunakan izin IAM secara default. Jika Anda sudah menyiapkan integrasi, Anda dapat terus menggunakan integrasi Anda saat ini. Namun, jika Anda ingin mengubah integrasi yang ada untuk menggunakan izin IAM, lihat Panduan AWS Lake Formation Pengembang. Anda juga dapat mengulang integrasi untuk menghapus pengaturan yang ada di AWS Glue Data Catalog dan AWS Lake Formation dan menjalankan kembali integrasi. Ini akan menghapus semua hibah Lake Formation yang ada dan izin akses terkait ke. s3tablescatalog
-
Buka AWS Lake Formation konsol dihttps://console.aws.amazon.com/lakeformation/
, dan masuk sebagai administrator danau data. Untuk informasi selengkapnya tentang cara membuat administrator data lake, lihat Membuat administrator data lake di Panduan AWS Lake Formation Pengembang. -
Hapus
s3tablescatalogkatalog Anda dengan melakukan hal berikut:-
Di panel navigasi kiri, pilih Katalog.
-
Pilih tombol opsi di sebelah
s3tablescatalogkatalog dalam daftar Katalog. Dari menu Tindakan, pilih Hapus.
-
-
Batalkan pendaftaran lokasi data untuk
s3tablescatalogkatalog dengan melakukan hal berikut:-
Di panel navigasi kiri, buka bagian Administrasi, dan pilih Lokasi danau data.
-
Pilih tombol opsi di sebelah lokasi danau
s3tablescatalogdata, misalnya,s3://tables:.region:account-id:bucket/* -
Pada menu Tindakan, pilih Hapus.
-
Di kotak dialog konfirmasi yang muncul, pilih Hapus.
-
-
Setelah menghapus
s3tablescatalogkatalog dan lokasi data lake, Anda dapat mengikuti langkah-langkah untuk mengintegrasikan bucket tabel Anda dengan layanan AWS analitik dengan menggunakan proses integrasi yang diperbarui.
catatan
Jika Anda ingin bekerja dengan tabel terenkripsi SSE-KMS dalam layanan AWS analitik terintegrasi, peran yang Anda gunakan harus memiliki izin untuk menggunakan kunci Anda AWS KMS untuk operasi enkripsi. Untuk informasi selengkapnya, lihat Memberikan izin kepada prinsipal IAM untuk bekerja dengan tabel terenkripsi dalam layanan analitik terintegrasi AWS.