Memuat data Microsoft SQL Server ke BigQuery
Catatan: Untuk mendapatkan dukungan atau memberikan masukan terkait fitur ini, hubungi dts-preview-support@google.com.Untuk menjadwalkan transfer data berulang dari Microsoft SQL Server ke BigQuery, Anda dapat membuat konfigurasi transfer untuk menentukan objek data yang akan ditransfer, dan seberapa sering menjadwalkan transfer data. Setelah Anda menyiapkan konfigurasi transfer, BigQuery Data Transfer Service akan mentransfer data terbaru ke tabel BigQuery sesuai jadwal yang ditentukan.
Untuk mempelajari cara kerja transfer Microsoft SQL Server, lihat Pengantar transfer data Microsoft SQL Server.
Batasan
Tugas transfer data Microsoft SQL Server tunduk pada batasan berikut:
- Ada batasan jumlah koneksi simultan ke database Microsoft SQL Server. Oleh karena itu, jumlah operasi transfer simultan ke satu database Microsoft SQL Server juga terbatas. Pastikan jumlah tugas transfer serentak kurang dari jumlah maksimum koneksi serentak yang didukung oleh database Microsoft SQL Server.
- Beberapa jenis data Microsoft SQL Server mungkin dipetakan ke jenis
STRINGdi BigQuery untuk menghindari kehilangan data. Misalnya, jenis numerik tertentu di Microsoft SQL Server yang tidak memiliki presisi dan skala yang ditentukan mungkin dipetakan keSTRINGdi BigQuery. Untuk mengetahui informasi selengkapnya, lihat Pemetaan jenis data.
Batasan transfer inkremental
Transfer Microsoft SQL Server inkremental tunduk pada batasan berikut:- Anda hanya dapat memilih kolom
TIMESTAMPsebagai kolom watermark. - Penyerapan inkremental hanya didukung untuk aset dengan kolom watermark yang valid.
- Nilai dalam kolom watermark harus meningkat secara monoton.
- Transfer inkremental tidak dapat menyinkronkan operasi penghapusan dalam tabel sumber.
- Satu konfigurasi transfer hanya dapat mendukung penyerapan inkremental atau penuh.
- Anda tidak dapat memperbarui objek dalam daftar
assetsetelah operasi penyerapan inkremental pertama. - Anda tidak dapat mengubah mode tulis dalam konfigurasi transfer setelah operasi penyerapan inkremental pertama.
- Anda tidak dapat mengubah kolom watermark atau kunci utama setelah operasi penyerapan inkremental pertama.
- Tabel BigQuery tujuan dikelompokkan menggunakan kunci utama yang disediakan dan tunduk pada batasan tabel pengelompokan.
- Saat Anda memperbarui konfigurasi transfer yang ada ke mode penyerapan inkremental untuk pertama kalinya, transfer data pertama setelah pembaruan tersebut akan mentransfer semua data yang tersedia dari sumber data Anda. Setiap transfer data inkremental berikutnya hanya akan mentransfer baris baru dan yang diperbarui dari sumber data Anda.
- Sebaiknya buat indeks pada kolom watermark. Konektor ini menggunakan kolom watermark untuk filter dalam transfer inkremental, sehingga mengindeks kolom ini dapat meningkatkan performa.
- Saat melakukan transfer inkremental, Anda harus menggunakan pemetaan jenis data yang diperbarui.
Sebelum memulai
Sebelum dapat menjadwalkan transfer data Microsoft SQL Server, Anda harus memenuhi prasyarat berikut.
Prasyarat Microsoft SQL Server
Anda harus membuat akun pengguna di database Microsoft SQL Server. Untuk mengetahui informasi selengkapnya, lihat Membuat pengguna dengan login.
Prasyarat BigQuery
- Pastikan Anda telah menyelesaikan semua tindakan yang diperlukan untuk mengaktifkan BigQuery Data Transfer Service.
- Buat set data BigQuery untuk menyimpan data Anda.
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan dalam membuat transfer data Microsoft SQL Server, minta administrator untuk memberi Anda peran IAM BigQuery Admin (roles/bigquery.admin) pada project Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk membuat transfer data Microsoft SQL Server. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat transfer data Microsoft SQL Server:
-
bigquery.transfers.update -
bigquery.datasets.get
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Konfigurasi jaringan
Anda harus menyiapkan konfigurasi jaringan tertentu jika alamat IP publik tidak tersedia untuk koneksi database Microsoft SQL Server. Untuk mengetahui informasi selengkapnya, lihat bagian berikut:
- Mengonfigurasi koneksi ke Google Cloud instance
- Mengonfigurasi koneksi ke AWS
- Mengonfigurasi koneksi ke Azure
Menyiapkan transfer data Microsoft SQL Server
Pilih salah satu opsi berikut:
Konsol
Buka halaman Transfer data.
Klik Buat transfer.
Di bagian Jenis sumber, untuk Sumber, pilih Microsoft SQL Server.
Di bagian Detail sumber data, lakukan hal berikut:
- Untuk Lampiran jaringan, pilih lampiran jaringan yang ada atau klik Buat Lampiran Jaringan.
- Untuk Host, masukkan nama host atau alamat IP database Microsoft SQL Server.
- Untuk Nomor port, masukkan nomor port untuk database Microsoft SQL Server.
- Untuk Nama database, masukkan nama database Microsoft SQL Server.
- Untuk Nama pengguna, masukkan nama pengguna Microsoft SQL Server pengguna yang memulai koneksi database Microsoft SQL Server.
- Untuk Sandi, masukkan sandi pengguna Microsoft SQL Server yang memulai koneksi database Microsoft SQL Server.
- Untuk Mode TLS, pilih opsi dari menu. Untuk mengetahui informasi selengkapnya tentang mode TLS, lihat Konfigurasi TLS.
- Untuk Sertifikat PEM Tepercaya, masukkan sertifikat publik certificate authority (CA) yang menerbitkan sertifikat TLS server database. Untuk mengetahui informasi selengkapnya, lihat Sertifikat Server Tepercaya (PEM).
- Untuk Aktifkan pemetaan lama, pilih true (default) untuk menggunakan pemetaan jenis data lama. Pilih false untuk menggunakan pemetaan jenis data yang diperbarui. Jika Anda melakukan transfer inkremental, nilai ini harus false. Untuk mengetahui informasi selengkapnya tentang pembaruan pemetaan jenis data , lihat 16 Maret 2027. server database.
- Untuk Jenis penyerapan, pilih Penuh atau Inkremental.
- Jika Anda memilih Inkremental (Pratinjau), untuk Mode tulis, pilih Tambahkan atau Upsert. Untuk mengetahui informasi selengkapnya tentang mode tulis yang berbeda, lihat Transfer penuh atau inkremental transfers.
- Untuk Objek Microsoft SQL Server yang akan ditransfer, telusuri tabel Microsoft SQL Server atau masukkan nama tabel yang diperlukan untuk transfer secara manual.
Di bagian Setelan tujuan, untuk Set data, pilih set data yang Anda buat untuk menyimpan data Anda, atau klik Buat set data baru dan buat set data untuk digunakan sebagai set data tujuan.
Di bagian Nama konfigurasi transfer, untuk Nama tampilan, masukkan nama untuk transfer. Nama transfer dapat berupa nilai apa pun yang memungkinkan Anda mengidentifikasi transfer jika perlu mengubahnya nanti.
Di bagian Opsi jadwal, lakukan tindakan berikut:
- Pilih frekuensi pengulangan. Jika memilih opsi Jam, Hari (default), Minggu, atau Bulan, Anda juga harus menentukan frekuensinya. Anda juga dapat memilih opsi Kustom untuk membuat frekuensi pengulangan yang lebih spesifik. Jika Anda memilih opsi on-demand, transfer data ini hanya akan berjalan saat Anda memicu transfer secara manual.
- Jika berlaku, pilih opsi Mulai sekarang atau Mulai pada waktu yang ditetapkan dan masukkan tanggal mulai dan waktu proses.
Opsional: Di bagian Opsi notifikasi, lakukan hal berikut:
- Untuk mengaktifkan notifikasi email, klik tombol Notifikasi email ke posisi aktif. Saat Anda mengaktifkan opsi ini, administrator transfer akan menerima notifikasi email saat transfer yang dijalankan gagal.
- Untuk mengonfigurasi notifikasi operasi Pub/Sub untuk transfer Anda, klik tombol Notifikasi Pub/Sub ke posisi aktif. Anda dapat memilih topik nama atau mengklik Buat topik untuk membuatnya.
Opsional: Di bagian Opsi lanjutan, pilih jenis enkripsi untuk transfer ini. Anda dapat memilih kunci Cloud Key Management Service milik Google Google-owned and Google-managed encryption key atau milik pelanggan. Untuk mengetahui informasi selengkapnya tentang kunci enkripsi, lihat Kunci enkripsi yang dikelola pelanggan (CMEK).
Klik Simpan.
bq
Masukkan perintah bq mk command
dan berikan flag pembuatan transfer --transfer_config:
bq mk \ --transfer_config \ --project_id=PROJECT_ID \ --data_source=DATA_SOURCE \ --display_name=DISPLAY_NAME \ --target_dataset=DATASET \ --params='PARAMETERS'
Ganti kode berikut:
PROJECT_ID(opsional): ID Google Cloud project Anda. Jika flag--project_idtidak diberikan untuk menentukan project tertentu, project default akan digunakan.DATA_SOURCE: sumber data, yaitusqlserver.DISPLAY_NAME: nama tampilan untuk konfigurasi transfer data. Nama transfer dapat berupa nilai apa pun yang memungkinkan Anda mengidentifikasi transfer jika perlu mengubahnya nanti.DATASET: set data target untuk konfigurasi transfer data.PARAMETERS: parameter untuk konfigurasi transfer yang dibuat dalam format JSON. Contoh:--params='{"param":"param_value"}'. Berikut adalah parameter untuk transfer Microsoft SQL Server:connector.networkAttachment(opsional): nama lampiran jaringan untuk terhubung ke database Microsoft SQL Server.connector.database: nama database Microsoft SQL Server.connector.endpoint.host: nama host atau alamat IP database.connector.endpoint.port: nomor port database.connector.authentication.username: nama pengguna database.connector.authentication.password: sandi pengguna database.connector.legacyMapping: tetapkan ketrue(default) untuk menggunakan pemetaan jenis data lama. Tetapkan kefalseuntuk menggunakan pemetaan jenis data yang diperbarui. Jika Anda melakukan transfer inkremental, nilai ini harusfalse. Untuk mengetahui informasi selengkapnya tentang pemetaan jenis data , lihat 16 Maret 2027.connector.tls.mode: tentukan konfigurasi TLS yang akan digunakan dengan transfer ini:ENCRYPT_VERIFY_CA_AND_HOSTuntuk mengenkripsi data, dan memverifikasi CA dan nama hostENCRYPT_VERIFY_CAuntuk mengenkripsi data, dan hanya memverifikasi CAENCRYPT_VERIFY_NONEhanya untuk enkripsi dataDISABLEuntuk tidak ada enkripsi atau verifikasi
connector.tls.trustedServerCertificate: (opsional) berikan satu atau beberapa sertifikat berenkode PEM. Hanya diperlukan jika nilaiconnector.tls.modeadalahENCRYPT_VERIFY_CA_AND_HOSTatauENCRYPT_VERIFY_CA.ingestionType: tentukanfullatauincremental. Transfer inkremental didukung dalam pratinjau. Untuk mengetahui informasi selengkapnya, lihat Transfer penuh atau inkremental.writeMode: tentukanWRITE_MODE_APPENDatauWRITE_MODE_UPSERT.watermarkColumns: tentukan kolom dalam tabel Anda sebagai kolom watermark. Kolom ini diperlukan untuk transfer inkremental.primaryKeys: tentukan kolom dalam tabel Anda sebagai kunci utama. Kolom ini diperlukan untuk transfer inkremental.assets: daftar nama tabel Microsoft SQL Server yang akan ditransfer dari database Microsoft SQL Server sebagai bagian dari transfer.
Misalnya, perintah berikut membuat transfer Microsoft SQL Server bernama My Transfer:
bq mk \ --transfer_config --target_dataset=mydataset --data_source=sqlserver --display_name='My Transfer' --params='{"assets":["DB1/DEPARTMENT","DB1/EMPLOYEES"], "connector.authentication.username": "User1", "connector.authentication.password":"ABC12345", "connector.database":"DB1", "connector.endpoint.host":"192.168.0.1", "connector.endpoint.port":"1520", "connector.networkAttachment":"projects/dev-project1/regions/us-central1/networkattachments/na1", "ingestionType":"incremental", "writeMode":"WRITE_MODE_APPEND", "watermarkColumns":["createdAt","createdAt"], "primaryKeys":[['dep_id'], ['report_by','report_title']], "connector.tls.mode": "ENCRYPT_VERIFY_CA_AND_HOST", "connector.tls.trustedServerCertificate": "PEM-encoded certificate"}'
Saat menentukan beberapa aset selama transfer inkremental, nilai kolom watermarkColumns dan primaryKeys sesuai dengan posisi nilai di kolom assets. Pada contoh berikut, dep_id sesuai dengan tabel DB1/DEPARTMENT, sedangkan report_by dan report_title sesuai dengan tabel DB1/EMPLOYEES.
"primaryKeys":[['dep_id'], ['report_by','report_title']], "assets":["DB1/DEPARTMENT","DB1/EMPLOYEES"],
Untuk menjalankan transfer data secara manual di luar jadwal reguler, Anda dapat memulai operasi pengisian ulang.
Memecahkan masalah
Untuk memecahkan masalah transfer data, lihat Masalah transfer Microsoft SQL Server.
Metadata transfer
Anda juga dapat menggunakan konektor Microsoft SQL Server untuk mentransfer metadata ke Knowledge Catalog. Untuk mengetahui informasi selengkapnya, lihat Memuat metadata Microsoft SQL Server ke Knowledge Catalog.Langkah berikutnya
- Baca ringkasan tentang BigQuery Data Transfer Service.
- Pelajari cara mengelola transfer, termasuk mendapatkan informasi tentang konfigurasi transfer, membuat listingan konfigurasi transfer, dan melihat histori operasi transfer.
- Pelajari cara memuat data dengan operasi BigQuery Omni.