Project Data Connect Anda terdiri dari dua elemen infrastruktur utama:
- Satu atau beberapa instance layanan Data Connect
- Satu atau beberapa instance Cloud SQL untuk PostgreSQL
Panduan ini membahas cara menyiapkan dan mengelola instance layanan Data Connect, serta memperkenalkan cara mengelola instance Cloud SQL terkait.
Mengonfigurasi wilayah untuk Firebase Data Connect
Project yang menggunakan Data Connect memerlukan setelan lokasi.
Saat membuat instance layanan Data Connect baru, Anda akan diminta untuk memilih lokasi layanan.
Lokasi yang tersedia
Layanan Data Connect dapat dibuat di region berikut.
- asia-east1
- asia-east2
- asia-northeast1
- asia-northeast2
- asia-northeast3
- asia-south1
- asia-southeast1
- asia-southeast2
- australia-southeast1
- australia-southeast2
- europe-central2
- europe-north1
- europe-southwest1
- europe-west1
- europe-west2
- europe-west3
- europe-west4
- europe-west6
- europe-west8
- europe-west9
- me-west1
- northamerica-northeast1
- northamerica-northeast2
- southamerica-east1
- Southamerica-west1
- us-central1
- us-east1
- us-east4
- us-south1
- us-west1
- us-west2
- us-west3
- us-west4
Mengelola instance layanan Data Connect
Membuat layanan
Untuk membuat layanan baru, gunakan Firebase console atau jalankan inisialisasi project lokal menggunakan Firebase CLI. Alur kerja ini membuat layanan Data Connect baru.
Alur ini juga memandu Anda melalui:
- Menyediakan instance Cloud SQL baru (paket tanpa biaya)
- Menautkan instance Cloud SQL yang ada ke Data Connect (paket Blaze)
Kelola pengguna
Data Connect menyediakan alat untuk mengelola akses pengguna yang mengikuti prinsip hak istimewa terendah (memberikan izin minimum yang diperlukan kepada setiap pengguna atau akun layanan untuk mendukung fungsi yang diperlukan) dan konsep kontrol akses berbasis peran (RBAC) (dengan peran yang telah ditentukan untuk mengelola izin database, yang menyederhanakan pengelolaan keamanan).
Untuk menambahkan anggota project sebagai pengguna yang dapat mengubah instance Data Connect di project Anda, gunakan konsol Firebase untuk memilih peran pengguna standar yang sesuai.
Peran ini memberikan izin menggunakan Identity and Access Management (IAM). Peran adalah kumpulan izin. Saat menetapkan peran kepada anggota project, Anda memberikan anggota project tersebut semua izin yang dimiliki oleh peran tersebut. Lihat informasi selengkapnya di:
- Ringkasan peran IAM Firebase
- Daftar mendetail peran Data Connect
Memilih peran untuk mengaktifkan alur kerja tertentu
Peran IAM memungkinkan alur kerja CLI Firebase agar Anda dapat mengelola project Data Connect.
Perintah CLI, alur kerja lainnya | Peran yang diperlukan |
---|---|
firebase init dataconnect
|
|
firebase deploy -–only dataconnect
|
|
firebase dataconnect:sql:diff
|
|
firebase dataconnect:sql:migrate
|
|
firebase dataconnect:sql:grant
|
|
Memantau performa layanan Data Connect
Memahami performa layanan
Performa layanan Data Connect dan layanan Cloud SQL untuk PostgreSQL dapat memengaruhi pengalaman Anda.
- Untuk layanan Cloud SQL untuk PostgreSQL, lihat panduan umum dalam Dokumentasi kuota dan batas.
Untuk layanan Data Connect, ada kuota untuk permintaan GraphQL, yang memengaruhi kecepatan Anda dapat memanggil dan menjalankan kueri:
- Kuota per project secara keseluruhan sebesar 6.000 permintaan per menit dari konektor aplikasi klien.
- Kuota per project secara keseluruhan sebesar 6.000 permintaan per menit dari Firebase Admin SDK dan dari REST API.
- Kuota per pengguna sebesar 1.200 permintaan per menit. Di sini, per pengguna berarti batas berlaku untuk permintaan yang dimulai oleh satu alamat IP, baik dari aplikasi klien, dari Firebase Admin SDK, maupun dari REST API.
Jika Anda mengalami batas kuota tersebut, hubungi dukungan Firebase untuk menyesuaikan kuota yang relevan.
Memantau performa, penggunaan, dan penagihan layanan
Anda dapat memantau permintaan, error, dan tingkat operasi, baik secara global maupun per operasi di Firebase console.
Mengelola instance Cloud SQL
Batasan uji coba gratis
Fitur Cloud SQL untuk PostgreSQL berikut tidak didukung dalam uji coba gratis 3 bulan:
- Versi PostgreSQL selain 15.x
- Penggunaan instance Cloud SQL untuk PostgreSQL yang ada
- Tingkat mesin yang berbeda dari db-f1-micro
- Mengubah resource instance Anda, seperti penyimpanan, memori, CPU
- Replika baca
- Alamat IP instance pribadi
- Ketersediaan tinggi (multi-zona); hanya instance zona tunggal yang didukung
- Edisi Enterprise Plus
- Backup otomatis
- Peningkatan penyimpanan otomatis.
Mengelola instance Cloud SQL
Secara umum, Anda dapat mengelola instance Cloud SQL menggunakan konsol Google Cloud untuk melakukan alur kerja berikut.
- Menghentikan dan memulai ulang instance Cloud SQL
- Membuat dan menghapus database Cloud SQL (dalam instance)
- Memulai instance database PostgreSQL dengan flag dan menggunakan berbagai ekstensi
- Memantau performa dengan fitur visibilitas Cloud SQL di konsol Google Cloud
- Mengelola akses dan keamanan Cloud SQL dengan fitur seperti IAM, secret manager, enkripsi data, dan auth proxy
- Menambahkan, menghapus, dan mengelola pengguna Cloud SQL.
Untuk alur kerja ini dan alur kerja lainnya, lihat dokumentasi Cloud SQL untuk PostgreSQL.
Memberikan peran pengguna PostgreSQL
Data Connect menyediakan alat untuk mengelola akses pengguna yang mengikuti prinsip hak istimewa terendah (memberikan izin minimum yang diperlukan kepada setiap pengguna atau akun layanan untuk mendukung fungsi yang diperlukan) dan konsep kontrol akses berbasis peran (RBAC) (dengan peran yang telah ditentukan untuk mengelola izin database, yang menyederhanakan pengelolaan keamanan).
Dalam beberapa kasus, Anda mungkin ingin terhubung ke database Cloud SQL yang dikelola Data Connect langsung melalui klien SQL pilihan Anda, misalnya, Cloud Run, Cloud Functions, atau GKE.
Untuk mengaktifkan koneksi tersebut, Anda perlu memberikan izin SQL dengan:
- Menetapkan peran IAM
roles/cloudsql.client
ke akun pengguna atau layanan yang perlu terhubung ke instance, baik dari konsol Google Cloud maupun menggunakan gcloud CLI - Memberikan peran PostgreSQL yang diperlukan menggunakan CLI Firebase
Menetapkan peran IAM Cloud SQL
Untuk informasi tentang cara menggunakan Cloud SQL untuk PostgreSQL guna menetapkan peran IAM
roles/cloudsql.client
, lihat Peran dan izin.
Memberikan peran PostgreSQL
Dengan menggunakan CLI Firebase, Anda dapat memberikan peran PostgreSQL yang telah ditentukan sebelumnya kepada pengguna
atau akun layanan yang terkait dengan project Anda dengan
perintah firebase dataconnect:sql:grant
.
Misalnya, untuk memberikan peran penulis, jalankan perintah ini di CLI:
firebase dataconnect:sql:grant --role writer
Untuk mengetahui detailnya, lihat panduan referensi CLI.
Mengintegrasikan database Cloud SQL untuk PostgreSQL yang ada
Alur penyediaan dan pengelolaan database default mengasumsikan bahwa project Anda menggunakan database baru (greenfield), dan saat Anda memanggil firebase deploy
, Data Connect akan menampilkan perubahan skema database yang akan dilakukan dan melakukan migrasi setelah Anda menyetujuinya.
Untuk database yang ada (brownfield), Anda mungkin memiliki alur kerja sendiri untuk mengelola skema dan tidak dapat menggunakan alat Data Connect untuk migrasi, tetapi ingin menggunakan database Anda dalam project Data Connect untuk memanfaatkan pembuatan SDK-nya untuk seluler dan web, otorisasi berbasis kueri, pengelolaan koneksi klien, dan lainnya.
Bagian ini menawarkan panduan tentang kasus kedua: mengintegrasikan database yang ada dengan Data Connect.
Mengintegrasikan database yang ada ke dalam project Data Connect
Alur kerja untuk mengintegrasikan database yang ada biasanya melibatkan langkah-langkah berikut:
- Selama penyiapan project Data Connect di konsol Firebase, pilih instance dan database.
Menggunakan Firebase CLI, jalankan perintah
firebase dataconnect:sql:setup
dan tolak opsi untuk mengizinkan Data Connect menangani migrasi SQL.Untuk mencegah perubahan pada skema database yang tidak didorong oleh alat kustom Anda, perintah
setup
akan menetapkan peran pembaca dan penulis yang sesuai, tetapi tidak peranowner
. Informasi selengkapnya tentang perintahsetup
dan peran PostgreSQL tersedia di panduan referensi CLI.Tulis skema GraphQL Data Connect yang cocok dengan skema database Anda.
Anda hanya dapat men-deploy skema, kueri, dan mutasi GraphQL jika skema GraphQL kompatibel dengan skema PostgreSQL.
Untuk menyederhanakan penyelarasan kedua skema, kami menyediakan perintah
firebase dataconnect:sql:diff
, yang akan memberi Anda pernyataan SQL yang diperlukan untuk memigrasikan database. Anda dapat menggunakannya untuk meningkatkan skema GraphQL secara iteratif agar cocok dengan skema database yang ada.Ke depannya, Anda dapat melakukan iterasi dengan cepat pada skema, kueri, dan mutasi GraphQL di lingkungan pengembangan lokal. Kemudian, jika sudah puas, Anda dapat menggunakan
firebase dataconnect:sql:diff
untuk mendapatkan pernyataan migrasi SQL yang dapat diterapkan ke PostgreSQL menggunakan alat dan alur kustom.Atau, Anda dapat membuat perubahan langsung ke database PostgreSQL terlebih dahulu, lalu mencoba memindahkannya kembali ke skema GraphQL. Sebaiknya gunakan pendekatan GraphQL-first, karena mungkin ada kasus saat perubahan skema tidak didukung. Selain itu, jika Anda men-deploy perubahan yang membuat skema PostgreSQL tidak kompatibel dengan kueri atau mutasi konektor yang di-deploy, konektor tersebut mungkin berhenti berfungsi atau berperilaku tidak semestinya.