Konfigurasikan AWS Glue koneksi - Amazon SageMaker

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

Konfigurasikan AWS Glue koneksi

Untuk mengonfigurasi sumber data untuk digunakan dengan ekstensi SQL, administrator perlu membuat AWS Glue koneksi untuk setiap sumber data. Koneksi ini menyimpan detail konfigurasi yang memungkinkan mengakses dan berinteraksi dengan sumber data.

Untuk membuat koneksi ini:

  • Pertama, buat file JSON yang mendefinisikan properti koneksi untuk setiap sumber data. File JSON mencakup detail seperti pengenal sumber data, kredensi akses, dan parameter konfigurasi relevan lainnya untuk mengakses sumber data melalui koneksi. AWS Glue

  • Kemudian gunakan AWS Command Line Interface (AWS CLI) untuk membuat AWS Glue koneksi, meneruskan file JSON sebagai parameter. AWS CLI Perintah membaca detail koneksi dari file JSON dan menetapkan koneksi yang sesuai.

    catatan

    Ekstensi SQL mendukung pembuatan koneksi menggunakan AWS CLI satu-satunya.

Sebelum membuat AWS Glue koneksi, pastikan Anda menyelesaikan langkah-langkah berikut:

  • Instal dan konfigurasikan AWS Command Line Interface (AWS CLI). Untuk informasi selengkapnya tentang cara menginstal dan mengonfigurasi AWS CLI, lihat Tentang AWS CLI versi 2. Pastikan bahwa kunci akses dan token pengguna IAM atau peran yang digunakan untuk mengonfigurasi AWS CLI memiliki izin yang diperlukan untuk membuat AWS Glue koneksi. Tambahkan kebijakan yang memungkinkan glue:CreateConnection tindakan sebaliknya.

  • Pahami cara menggunakannya AWS Secrets Manager. Kami menyarankan Anda menggunakan Secrets Manager untuk menyediakan kredensyal koneksi dan informasi sensitif lainnya untuk penyimpanan data Anda. Untuk informasi selengkapnya tentang penggunaan Secrets Manager untuk menyimpan kredensil, lihat Menyimpan kredensil koneksi di Secrets Manager. AWS

Buat file JSON definisi koneksi

Untuk membuat file definisi AWS Glue koneksi, buat file JSON untuk menentukan detail koneksi pada mesin tempat Anda menginstal dan mengonfigurasi file. AWS CLI Untuk contoh ini, beri nama filesagemaker-sql-connection.json.

File definisi koneksi harus mengikuti format umum berikut:

  • Nama adalah nama untuk koneksi.

  • Deskripsi adalah deskripsi tekstual dari koneksi.

  • ConnectionTypeadalah jenis koneksi. Pilih REDSHIFT, ATHENA, atau SNOWFLAKE.

  • ConnectionPropertiesadalah peta pasangan kunci-nilai untuk properti koneksi, seperti ARN AWS rahasia Anda, atau nama database Anda.

{ "ConnectionInput": { "Name": <GLUE_CONNECTION_NAME>, "Description": <GLUE_CONNECTION_DESCRIPTION>, "ConnectionType": "REDSHIFT | ATHENA | SNOWFLAKE", "ConnectionProperties": { "PythonProperties": "{\"aws_secret_arn\": <SECRET_ARN>, \"database\": <...>}" } } }
catatan
  • Properti dalam ConnectionProperties kunci terdiri dari pasangan nilai kunci yang dirangkai. Melarikan diri dari tanda kutip ganda yang digunakan dalam kunci atau nilai dengan karakter garis miring terbalik (\).

  • Semua properti yang tersedia di Secrets Manager juga dapat langsung disediakan melaluiPythonProperties. Namun, tidak disarankan untuk memasukkan bidang sensitif seperti kata sandiPythonProperties. Sebaliknya, pendekatan yang lebih disukai adalah menggunakan Secrets Manager.

File definisi koneksi khusus untuk penyimpanan data yang berbeda dapat ditemukan di bagian berikut.

File definisi koneksi untuk setiap sumber data berisi properti dan konfigurasi spesifik yang diperlukan untuk terhubung ke penyimpanan data tersebut dari ekstensi SQL. Lihat bagian yang sesuai untuk detail tentang mendefinisikan koneksi ke sumber itu.

Bagian ini memberikan detail tentang properti rahasia dan koneksi dalam file definisi JSON yang khusus untuk Amazon Redshift. Sebelum membuat file konfigurasi koneksi, sebaiknya simpan kredensyal akses Amazon Redshift Anda sebagai rahasia di Secrets Manager. Atau, Anda dapat membuat kredensyal database sementara berdasarkan izin yang diberikan melalui kebijakan izin AWS Identity and Access Management (IAM) untuk mengelola akses yang dimiliki pengguna ke database Amazon Redshift Anda. Untuk informasi selengkapnya, lihat Menggunakan autentikasi IAM untuk menghasilkan kredensyal pengguna database.

Buat rahasia untuk kredensyal akses Amazon Redshift

Untuk menyimpan informasi Amazon Redshift di AWS Secrets Manager
  1. Dari AWS konsol, navigasikan ke Secrets Manager.

  2. Pilih Simpan rahasia baru.

  3. Di bawah Jenis Rahasia, pilih Kredensial untuk Amazon Redshift.

  4. Masukkan nama pengguna dan kata sandi administrator yang dikonfigurasi saat meluncurkan cluster Amazon Redshift.

  5. Pilih cluster Amazon Redshift yang terkait dengan rahasia.

  6. Sebutkan rahasiamu.

  7. Pengaturan yang tersisa dapat dibiarkan pada nilai default mereka untuk pembuatan rahasia awal, atau disesuaikan jika diperlukan.

  8. Buat rahasia dan ambil ARN-nya.

Konfigurasikan AWS Glue koneksi untuk Amazon Redshift

Ekstensi SQL terhubung ke sumber data menggunakan AWS Glue koneksi kustom. Untuk informasi umum tentang membuat AWS Glue koneksi untuk menghubungkan sumber data, lihatKonfigurasikan AWS Glue koneksi. Contoh berikut adalah contoh definisi AWS Glue koneksi untuk menghubungkan ke Amazon Redshift.

Sebelum membuat koneksi baru, ingatlah rekomendasi ini:

  • Properti dalam PythonProperties kunci terdiri dari pasangan nilai kunci yang dirangkai. Melarikan diri dari tanda kutip ganda yang digunakan dalam kunci atau nilai dengan karakter garis miring terbalik (\).

  • Dalam file definisi koneksi, masukkan nama dan deskripsi koneksi, ganti ARN rahasia aws_secret_arn dengan ARN rahasia yang dibuat sebelumnya.

  • Pastikan database yang dideklarasikan dengan namanya dalam definisi koneksi di atas cocok dengan database cluster. Anda dapat memverifikasi ini dengan membuka halaman detail cluster di konsol Amazon Redshift, dan memverifikasi nama database di bawah Konfigurasi database di bagian Properti.

  • Untuk parameter tambahan, lihat daftar properti koneksi yang didukung oleh Amazon Redshift di. Parameter koneksi Amazon Redshift

    catatan
    • Secara default, konektor ekstensi SQL untuk Python menjalankan semua kueri dalam transaksi, kecuali properti in connection diatur auto_commit ke. true

    • Anda dapat menambahkan semua parameter koneksi, termasuk database nama, ke rahasia.

{ "ConnectionInput": { "Name": "Redshift connection name", "Description": "Redshift connection description", "ConnectionType": "REDSHIFT", "ConnectionProperties": { "PythonProperties":"{\"aws_secret_arn\": \"arn:aws:secretsmanager:region:account_id:secret:secret_name\", \"database\":\"database_name\", \"database_metadata_current_db_only\": false}" } } }

Setelah file definisi Anda diperbarui, ikuti langkah-langkah Buat AWS Glue koneksi untuk membuat AWS Glue koneksi Anda.

Bagian ini memberikan rincian tentang properti koneksi dalam file definisi JSON yang khusus untuk Athena.

Konfigurasikan AWS Glue koneksi untuk Athena

Ekstensi SQL terhubung ke sumber data menggunakan AWS Glue koneksi kustom. Untuk informasi umum tentang membuat AWS Glue koneksi untuk menghubungkan sumber data, lihatKonfigurasikan AWS Glue koneksi. Contoh berikut adalah definisi AWS Glue koneksi sampel untuk menghubungkan ke Athena.

Sebelum membuat koneksi baru, ingatlah rekomendasi ini:

  • Properti dalam ConnectionProperties kunci terdiri dari pasangan nilai kunci yang dirangkai. Melarikan diri dari tanda kutip ganda yang digunakan dalam kunci atau nilai dengan karakter garis miring terbalik (\).

  • Dalam file definisi koneksi, masukkan nama dan deskripsi koneksi, ganti dengan nama katalog Anda, catalog_name s3_staging_dir dengan URI Amazon S3 (Uniform Resource Identifier) direktori output Anda di bucket Amazon S3 Anda, dan region_name dengan wilayah bucket Amazon S3 Anda.

  • Untuk parameter tambahan, lihat daftar properti koneksi yang didukung oleh Athena di. Parameter koneksi Athena

    catatan
    • Anda dapat menambahkan semua parameter koneksi, termasuk catalog_name ataus3_staging_dir, ke rahasia.

    • Jika Anda menentukanworkgroup, Anda tidak perlu menentukans3_staging_dir.

{ "ConnectionInput": { "Name": "Athena connection name", "Description": "Athena connection description", "ConnectionType": "ATHENA", "ConnectionProperties": { "PythonProperties": "{\"catalog_name\": \"catalog_name\",\"s3_staging_dir\": \"s3://bucket_name_in_same_region/output_query_results_dir/\", \"region_name\": \"region\"}" } } }

Setelah file definisi Anda diperbarui, ikuti langkah-langkah Buat AWS Glue koneksi untuk membuat AWS Glue koneksi Anda.

Bagian ini memberikan rincian tentang rahasia dan properti koneksi dalam file definisi JSON yang khusus untuk Snowflake. Sebelum membuat file konfigurasi koneksi Anda, kami sarankan untuk menyimpan kredensil akses Snowflake Anda sebagai rahasia di Secrets Manager.

Buat rahasia untuk kredensyal akses Snowflake

Untuk menyimpan informasi Amazon Redshift di Secrets Manager
  1. Dari AWS konsol, navigasikan ke Secrets Manager.

  2. Pilih Simpan rahasia baru.

  3. Di bawah Tipe rahasia, pilih Jenis rahasia lainnya.

  4. Pada pasangan kunci-nilai, pilih Plaintext, lalu salin konten JSON berikut. Gantiuser,password, dan account dengan nilai-nilai mereka.

    { "user":"snowflake_user", "password":"snowflake_password", "account":"account_id" }
  5. Sebutkan rahasianya.

  6. Pengaturan yang tersisa dapat dibiarkan pada nilai default mereka untuk pembuatan rahasia awal, atau disesuaikan jika diperlukan.

  7. Buat rahasia dan ambil ARN-nya.

Konfigurasikan AWS Glue koneksi untuk Snowflake

Ekstensi SQL terhubung ke sumber data menggunakan AWS Glue koneksi kustom. Untuk informasi umum tentang membuat AWS Glue koneksi untuk menghubungkan sumber data, lihatKonfigurasikan AWS Glue koneksi. Contoh berikut adalah definisi AWS Glue koneksi sampel untuk menghubungkan ke Snowflake.

Sebelum membuat koneksi baru, ingatlah rekomendasi ini:

  • Properti dalam ConnectionProperties kunci terdiri dari pasangan nilai kunci yang dirangkai. Melarikan diri dari tanda kutip ganda yang digunakan dalam kunci atau nilai dengan karakter garis miring terbalik (\).

  • Dalam file definisi koneksi, masukkan nama dan deskripsi koneksi, lalu ganti ARN rahasia aws_secret_arn dengan ARN rahasia yang dibuat sebelumnya, dan ID akun Anda masuk. account

  • Untuk parameter tambahan, lihat daftar properti koneksi yang didukung oleh Snowflake di. Parameter koneksi kepingan salju

    catatan

    Anda dapat menambahkan semua parameter koneksi, termasukaccount, ke rahasia.

{ "ConnectionInput": { "Name": "Snowflake connection name", "Description": "Snowflake connection description", "ConnectionType": "SNOWFLAKE", "ConnectionProperties": { "PythonProperties": "{\"aws_secret_arn\": \"arn:aws:secretsmanager:region:account_id:secret:secret_name\", \"account\":\"account_id\"}"}" } } }

Setelah file definisi Anda diperbarui, ikuti langkah-langkah Buat AWS Glue koneksi untuk membuat AWS Glue koneksi Anda.

Buat AWS Glue koneksi

Untuk membuat AWS Glue koneksi melalui AWS CLI, gunakan file definisi koneksi Anda dan jalankan AWS CLI perintah ini. Ganti region placeholder dengan nama AWS Wilayah Anda dan berikan jalur lokal ke file definisi Anda.

catatan

Jalur ke file definisi konfigurasi Anda harus didahului oleh. file://

aws --region region glue create-connection --cli-input-json file://path_to_file/sagemaker-sql-connection.json

Verifikasi bahwa AWS Glue koneksi dibuat dengan menjalankan perintah berikut dan periksa nama koneksi Anda.

aws --region region glue get-connections

Atau, Anda dapat memperbarui AWS Glue koneksi yang ada sebagai berikut:

  • Ubah file definisi AWS Glue koneksi sesuai kebutuhan.

  • Jalankan perintah berikut untuk memperbarui koneksi.

    aws --region region glue update-connection --name glue_connection_name --cli-input-json file://path_to_file/sagemaker-sql-connection.json