Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Koneksi Vertica
Anda dapat menggunakan AWS Glue for Spark untuk membaca dan menulis ke tabel di Vertica di AWS Glue 4.0 dan versi yang lebih baru. Anda dapat menentukan apa yang akan dibaca dari Vertica dengan query SQL. Anda terhubung ke Vertica menggunakan kredenSIAL nama pengguna dan kata sandi yang disimpan AWS Secrets Manager melalui koneksi AWS Glue.
Untuk informasi lebih lanjut tentang Vertica, lihat dokumentasi Vertica.
Mengkonfigurasi koneksi Vertica
Untuk terhubung ke Vertica dari AWS Glue, Anda harus membuat dan menyimpan kredenSIAL Vertica Anda secara AWS Secrets Manager rahasia, lalu mengaitkan rahasia itu dengan koneksi Vertica AWS Glue. Jika instance Vertica Anda berada di Amazon VPC, Anda juga perlu memberikan opsi jaringan ke koneksi Glue Vertica Anda AWS . Anda akan memerlukan bucket atau folder Amazon S3 untuk digunakan sebagai penyimpanan sementara saat membaca dari dan menulis ke database.
Untuk terhubung ke Vertica dari AWS Glue, Anda memerlukan beberapa prasyarat:
-
Bucket atau folder Amazon S3 untuk digunakan untuk penyimpanan sementara saat membaca dari dan menulis ke database, dirujuk oleh
tempS3Path.catatan
Saat menggunakan Vertica dalam prat AWS injau data pekerjaan Glue, file sementara mungkin tidak dihapus secara otomatis.
tempS3PathUntuk memastikan penghapusan file sementara, langsung akhiri sesi pratinjau data dengan memilih Akhiri sesi di panel pratinjau data.Jika Anda tidak dapat menjamin sesi pratinjau data berakhir secara langsung, pertimbangkan untuk mengatur konfigurasi Siklus Hidup Amazon S3 untuk menghapus data lama. Sebaiknya hapus data yang lebih lama dari 49 jam, berdasarkan waktu kerja maksimum ditambah margin. Untuk informasi selengkapnya tentang mengonfigurasi Siklus Hidup Amazon S3, lihat M engelola siklus hidup penyimpanan Anda di dokumentasi Amazon S3.
-
Kebijakan IAM dengan izin yang sesuai untuk jalur Amazon S3 Anda yang dapat Anda kaitkan dengan peran pekerjaan AWS Glue Anda.
-
Jika instance Vertica Anda berada di Amazon VPC, konfigurasikan Amazon VPC untuk mengizinkan pekerjaan AWS Glue Anda berkomunikasi dengan instance Vertica tanpa lalu lintas yang melintasi internet publik.
Di Amazon VPC, identifikasi atau buat grup VPC, Subnet, dan Keamanan yang akan digunakan AWS Glue saat menjalankan pekerjaan. Selain itu, Anda perlu memastikan Amazon VPC dikonfigurasi untuk mengizinkan lalu lintas jaringan antara instance Vertica Anda dan lokasi ini. Pekerjaan Anda perlu membuat koneksi TCP dengan port klien Vertica Anda, (default 5433). Berdasarkan tata letak jaringan Anda, ini mungkin memerlukan perubahan pada aturan grup keamanan, ACL Jaringan, Gerbang NAT, dan koneksi Peering.
Anda kemudian dapat melanjutkan untuk mengkonfigurasi AWS Glue untuk digunakan dengan Vertica.
Untuk mengkonfigurasi koneksi ke Vertica:
-
Di AWS Secrets Manager, buat rahasia menggunakan kredenSIAL Vertica Anda,
verticaUsernamedanverticaPassword. Untuk membuat rahasia di Secrets Manager, ikuti tutorial yang tersedia di Buat AWS Secrets Manager rahasia dalam AWS Secrets Manager dokumentasi. Setelah membuat rahasia, simpan nama Rahasia,secretNameuntuk langkah selanjutnya.-
Saat memilih Key/value pasangan, buat pasangan untuk kunci
userdengan nilaiverticaUsername. -
Saat memilih Key/value pasangan, buat pasangan untuk kunci
passworddengan nilainyaverticaPassword.
-
Di konsol AWS Glue, buat koneksi dengan mengikuti langkah-langkah diMenambahkan AWS Glue koneksi. Setelah membuat koneksi, simpan nama koneksi,
connectionName, untuk langkah selanjutnya.Saat memilih jenis koneksi, pilih Vertica.
Saat memilih Vertica Host, berikan nama host instalasi Vertica Anda.
Saat memilih Port Vertica, port instalasi Vertica Anda tersedia.
Saat memilih AWS Rahasia, berikan
secretName.
-
Dalam situasi berikut, Anda mungkin memerlukan konfigurasi tambahan:
-
Untuk instans Vertica yang dihosting AWS di Amazon VPC
-
Berikan informasi koneksi Amazon VPC ke koneksi Glu AWS e yang menentukan kredenSIAL keamanan Vertica Anda. Saat membuat atau memperbarui koneksi Anda, atur grup VPC, Subnet, dan Keamanan di opsi Jaringan.
-
-
Setelah membuat koneksi AWS Glue Vertica, Anda harus melakukan langkah-langkah berikut sebelum memanggil metode koneksi Anda.
Berikan peran IAM yang terkait dengan izin pekerjaan AWS Glue Anda ke
tempS3Path.Berikan peran IAM yang terkait dengan izin pekerjaan AWS Glue Anda untuk membaca
secretName.Dalam konfigurasi pekerjaan AWS Glue Anda, berikan
connectionNamesebagai koneksi jaringan tambahan.
Membaca dari Vertica
Prasyarat:
-
Tabel Vertica yang ingin Anda baca. Anda akan memerlukan nama database Vertica,
dbNamedan nama tabel,tableName. -
Koneksi AWS Glue Vertica dikonfigurasi untuk memberikan informasi autentikasi. Selesaikan langkah-langkah dalam prosedur sebelumnya, Untuk mengkonfigurasi koneksi ke Vertica untuk mengkonfigurasi informasi autentikasi Anda. Anda akan membutuhkan nama koneksi AWS Glue,
connectionName. -
Bucket atau folder Amazon S3 untuk digunakan untuk penyimpanan sementara, yang disebutkan sebelumnya. Anda akan membutuhkan nama,
tempS3Path. Anda harus terhubung ke lokasi ini menggunakans3aprotokol.
Contoh:
dynamicFrame = glueContext.create_dynamic_frame.from_options( connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "table": "tableName", } )
Anda juga dapat memberikan kueri SELECT SQL, untuk memfilter hasil yang dikembalikan ke Anda DynamicFrame atau untuk mengakses dataset dari beberapa tabel.
Contoh:
dynamicFrame = glueContext.create_dynamic_frame.from_options( connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "query": "select * FROMtableName", }, )
Menulis ke tabel Vertica
Contoh ini menulis informasi dari yang sudah ada DynamicFrame, dynamicFrame ke Vertica. Jika tabel sudah memiliki informasi, AWS Glue akan menambahkan data dari Anda DynamicFrame.
Prasyarat:
-
Nama tabel saat ini atau yang diinginkan
tableName,, Anda ingin menulis. Anda juga akan memerlukan nama database Vertica yang sesuai,dbName. -
Koneksi AWS Glue Vertica dikonfigurasi untuk memberikan informasi autentikasi. Selesaikan langkah-langkah dalam prosedur sebelumnya, Untuk mengkonfigurasi koneksi ke Vertica untuk mengkonfigurasi informasi autentikasi Anda. Anda akan membutuhkan nama koneksi AWS Glue,
connectionName. -
Bucket atau folder Amazon S3 untuk digunakan untuk penyimpanan sementara, yang disebutkan sebelumnya. Anda akan membutuhkan nama,
tempS3Path. Anda harus terhubung ke lokasi ini menggunakans3aprotokol.
Contoh:
glueContext.write_dynamic_frame.from_options( frame=dynamicFrame, connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "table": "tableName", } )
Referensi opsi koneksi Vertica
-
connectionName— Diperlukan. Digunakan untuk Read/Write. Nama koneksi AWS Glue Vertica dikonfigurasi untuk memberikan informasi autentikasi dan jaringan ke metode koneksi Anda. -
db— Diperlukan. Digunakan untuk Read/Write. Nama database di Vertica metode koneksi Anda akan berinteraksi dengan. -
dbSchema— Diperlukan jika diperlukan untuk mengidentifikasi tabel Anda. Digunakan untuk Read/Write. Default:public. Nama skema metode koneksi Anda akan berinteraksi dengan. -
table- Diperlukan untuk menulis, diperlukan untuk membaca kecualiquerydisediakan. Digunakan untuk Read/Write. Nama tabel yang akan berinteraksi dengan metode koneksi Anda. -
query— Digunakan untuk membaca. Kueri SELECT SQL mendefinisikan apa yang harus diambil saat membaca dari Teradata. -
staging_fs_url— Diperlukan. Digunakan untuk Read/Write. Nilai yang Valid:s3aURL. URL bucket atau folder Amazon S3 untuk digunakan untuk penyimpanan sementara.