Anda dapat menstreaming update change data capture (CDC) dari database Spanner ke tujuan yang didukung seperti BigQuery atau Cloud Storage menggunakan Datastream. Menyiapkan sumber Anda memerlukan pembuatan aliran perubahan Spanner dan pemberian peran Identity and Access Management (IAM) atau hak istimewa kontrol akses terperinci.
Sebelum memulai
Jika instance Spanner Anda berada di project Google Cloud selain project tempat Datastream berjalan, Anda harus memberikan peran IAM spanner.databaseReader kepada agen layanan Datastream, dan jika Anda berencana menggunakan Data Boost, peran spanner.databaseReaderWithDataBoost.
Jika Anda lebih suka menggunakan peran database kontrol akses terperinci, lihat Membuat profil koneksi dan aliran data Spanner untuk mengetahui izin individual yang diperlukan.
Membuat database Spanner
Untuk mulai mereplikasi data perubahan dari Spanner, Anda harus membuat instance Spanner dan database Spanner terlebih dahulu.
Membuat aliran data perubahan
Spanner menggunakan aliran data perubahan untuk melacak dan mengalirkan perubahan data seperti
penyisipan, pembaruan, dan penghapusan. Untuk mengonfigurasi sumber Spanner untuk
replikasi di Datastream, Anda perlu membuat dan mengonfigurasi
aliran data perubahan Spanner. Anda harus menentukan jenis pengambilan nilai NEW_ROW untuk aliran data perubahan Anda.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan aliran perubahan.
Membuat profil koneksi dan aliran data Spanner
Saat membuat profil koneksi Spanner baru, Anda harus menentukan database Spanner yang Anda buat. Nama database harus memiliki format berikut:
projects/PROJECT_ID/instances/INSTANCE/databases/DATABASE_ID
Saat membuat streaming, Anda dapat memberikan:
- Objek yang akan disertakan dan dikecualikan.
Jumlah maksimum pembacaan serentak untuk kueri pengisian ulang atau aliran data perubahan.
Apakah Datastream akan menggunakan Data Boost saat membuat kueri Spanner.
Peran database kontrol akses terperinci yang akan digunakan Datastream saat mengkueri Spanner. Untuk menggunakan peran ini, Datastream memerlukan setidaknya izin IAM berikut:
spanner.databases.useRoleBasedAccessspanner.databaseRoles.listspanner.databases.useDataBoost(jika Anda memilih untuk menggunakan Spanner Data Boost)
Selain itu, peran database Spanner harus memiliki izin berikut:
- Izin
SELECTuntuk tabel yang di-streaming. - Izin yang sangat terperinci untuk aliran perubahan. Untuk mengetahui informasi selengkapnya, lihat Kontrol akses terperinci untuk aliran perubahan.
Prioritas remote procedure call (RPC) Spanner untuk digunakan Datastream.
Langkah berikutnya
- Pelajari lebih lanjut Spanner sebagai sumber.