Anda dapat melakukan streaming update pengambilan data perubahan (CDC) dari database Azure SQL ke tujuan yang didukung, seperti BigQuery atau Cloud Storage, menggunakan Datastream. Datastream mendukung Azure SQL Database hanya dengan metode CDC tabel perubahan. Untuk menyiapkan sumber, Anda mengaktifkan CDC di database dan tabel, mengaktifkan isolasi snapshot, dan mengonfigurasi pengguna Datastream.
Untuk mengonfigurasi database Azure SQL:
Aktifkan change data capture (CDC) untuk database Azure SQL sumber Anda. Untuk melakukannya, hubungkan ke database menggunakan Azure Data Studio atau SQL Server Management Studio, lalu jalankan perintah berikut:
EXEC sys.sp_cdc_enable_db; GOAktifkan CDC pada tabel yang perubahannya perlu Anda ambil:
EXEC sys.sp_cdc_enable_table @source_schema = N'SCHEMA_NAME', @source_name = N'TABLE_NAME', @role_name = NULL GOGanti kode berikut:
SCHEMA_NAME: nama skema tempat tabel beradaTABLE_NAME: nama tabel yang ingin Anda aktifkan CDC-nya
Mengaktifkan isolasi snapshot.
Saat Anda melakukan backfill data dari database SQL Server, penting untuk memastikan snapshot yang konsisten. Jika Anda tidak menerapkan setelan yang dijelaskan di bagian ini, perubahan yang dilakukan pada database selama proses pengisian ulang dapat menyebabkan duplikat atau hasil yang salah. Menerapkan setelan isolasi snapshot diperlukan jika aliran data Anda menyertakan tabel tanpa kunci utama.
Mengaktifkan snapshot isolation akan membuat tampilan sementara database Anda di awal proses pengisian ulang. Hal ini memastikan bahwa data yang disalin tetap konsisten, meskipun pengguna lain membuat perubahan pada tabel aktif pada saat yang sama. Mengaktifkan snapshot isolation mungkin memiliki sedikit dampak performa, tetapi penting untuk ekstraksi data yang andal.
Untuk mengaktifkan isolasi snapshot:
- Hubungkan ke database Anda menggunakan klien SQL Server.
- Jalankan perintah berikut:
ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;Ganti DATABASE_NAME dengan nama database Anda.
Buat pengguna Datastream:
Hubungkan ke database
masterdan buat login:USE master; CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';Hubungkan ke database sumber dan buat pengguna untuk login Anda:
USE DATABASE_NAME CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;Tetapkan peran
db_ownerdandb_denydatawriterkepada pengguna Anda:EXEC sp_addrolemember 'db_owner', 'USER_NAME'; EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';Berikan izin
VIEW DATABASE STATEkepada pengguna Anda:GRANT VIEW DATABASE STATE TO USER_NAME;
Langkah berikutnya
- Pelajari lebih lanjut cara kerja Datastream dengan sumber SQL Server.