Halaman ini menjelaskan cara membaca data dari database PostgreSQL di instance Cloud Data Fusion.
Sebelum memulai
- Buat instance Cloud Data Fusion.
- Aktifkan database PostgreSQL Anda untuk menerima koneksi dari Cloud Data Fusion. Untuk melakukannya dengan aman, sebaiknya gunakan instance Cloud Data Fusion pribadi.
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk terhubung ke database PostgreSQL, minta administrator untuk memberi Anda peran IAM berikut:
- Dataproc Worker (
roles/dataproc.worker) di akun layanan Dataproc dalam project yang berisi cluster - Cloud Data Fusion Runner (
roles/datafusion.runner) di akun layanan Dataproc dalam project yang berisi cluster -
Untuk menggunakan Cloud SQL tanpa Proxy Auth Cloud SQL:
Cloud SQL Client (
roles/cloudsql.client) di project yang berisi instance Cloud SQL
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Membuka instance di Cloud Data Fusion
Di konsol Google Cloud , buka halaman Cloud Data Fusion.
Untuk membuka instance di Cloud Data Fusion Studio, klik Instance, lalu klik View instance.
Menyimpan sandi PostgreSQL sebagai kunci aman
Masukkan sandi PostgreSQL Anda sebagai kunci aman untuk dienkripsi di instance Cloud Data Fusion. Untuk mengetahui informasi selengkapnya tentang kunci, lihat Cloud KMS.
Di UI Cloud Data Fusion, klik System admin > Configuration.
Klik Make HTTP Calls.
Di menu dropdown, pilih PUT.
Di kolom jalur, masukkan
namespaces/default/securekeys/pg_password.Di kolom Body, masukkan
{"data":"POSTGRESQL_PASSWORD"}. GantiPOSTGRESQL_PASSWORDdengan sandi PostgreSQL Anda.Klik Send.
Kolom Response akan memberi tahu Anda tentang error apa pun.
Menghubungkan ke Cloud SQL untuk PostgreSQL
Di UI Cloud Data Fusion, klik menu menu dan buka halaman Wrangler.
Klik Add connection.
Pilih Database sebagai jenis sumber untuk terhubung.
Di bagian Google Cloud SQL for PostgreSQL, klik Upload.
Upload file JAR yang berisi driver PostgreSQL Anda. File JAR Anda harus mengikuti format
NAME-VERSION.jar. Jika file JAR Anda tidak mengikuti format ini, ganti namanya sebelum Anda mengupload.Klik Next.
Masukkan nama driver, nama class, dan versi di kolom.
Klik Finish.
Di jendela Add connection yang terbuka, klik Google Cloud SQL for PostgreSQL. Nama JAR Anda akan muncul di bagian Google Cloud SQL for PostgreSQL.
Isi kolom koneksi yang diperlukan. Di kolom Password, pilih kunci aman yang Anda simpan sebelumnya. Hal ini memastikan sandi Anda diambil menggunakan Cloud KMS.
Di kolom Connection string, masukkan string koneksi Anda sebagai:
jdbc:postgresql://google/DATABASE_NAME?cloudSqlInstance=INSTANCE_CONNECTION_NAME&socketFactory=com.google.cloud.sql.postgres.SocketFactory&useSSL=false
Ganti kode berikut:
DATABASE_NAME: nama database Cloud SQL seperti yang tercantum di tab Databases pada halaman detail instance.INSTANCE_CONNECTION_NAME: nama koneksi instance Cloud SQL seperti yang ditampilkan di tab Overview pada halaman detail instance.
Contoh:
jdbc:postgresql://google/postgres?cloudSqlInstance=dis-demo:us-central1:pgsql-1&socketFactory=com.google.cloud.sql.postgres.SocketFactory&useSSL=false
Aktifkan Cloud SQL Admin API.
Klik Test connection untuk memastikan koneksi dapat dibuat dengan database.
Klik Add connection.
Setelah database PostgreSQL Anda terhubung, Anda dapat menerapkan transformasi ke data Anda (di Wrangler), membuat pipeline, dan menulis output ke sink (di Studio).