Di halaman ini, Anda akan mempelajari cara menggunakan Datastream API untuk:
- Membuat aliran
- Mendapatkan informasi tentang aliran dan objek aliran
- Perbarui aliran dengan memulai, menjeda, melanjutkan, dan mengubahnya, serta dengan memulai dan menghentikan pengisian ulang untuk objek aliran
- Memulihkan streaming yang gagal secara permanen
- Mengaktifkan streaming objek besar untuk streaming Oracle
- Menghapus aliran data
Ada dua cara untuk menggunakan Datastream API. Anda dapat melakukan panggilan REST API atau menggunakan Google Cloud CLI (CLI).
Untuk mengetahui informasi umum tentang penggunaan Google Cloud CLI untuk mengelola aliran Datastream, lihat aliran Datastream gcloud CLI.
Membuat stream
Di bagian ini, Anda akan mempelajari cara membuat aliran yang digunakan untuk mentransfer data dari sumber ke tujuan. Contoh berikut tidak komprehensif, tetapi menyoroti fitur tertentu Datastream. Untuk menangani kasus penggunaan spesifik Anda, gunakan contoh ini bersama dengan dokumentasi referensi API Datastream.
Bagian ini membahas kasus penggunaan berikut:
- Streaming dari Oracle ke Cloud Storage
- Streaming dari MySQL ke BigQuery
- Mengalirkan data dari PostgreSQL ke BigQuery
- Menentukan sekumpulan objek yang akan disertakan dalam aliran data
- Mengisi ulang semua objek yang disertakan dalam aliran
- Mengecualikan objek dari aliran
- Mengecualikan objek dari pengisian ulang
- Menentukan CMEK untuk mengenkripsi data dalam penyimpanan
- Menentukan mode penulisan untuk aliran
- Mengalirkan ke project lain di BigQuery
- Streaming data ke tabel Apache Iceberg
Contoh 1: Mengalirkan objek tertentu ke BigQuery
Dalam contoh ini, Anda akan mempelajari cara:
- Streaming dari MySQL ke BigQuery
- Menyertakan sekumpulan objek dalam aliran
- Menentukan mode penulisan untuk aliran data sebagai hanya tambahkan
- Mengisi ulang semua objek yang disertakan dalam streaming
Berikut adalah permintaan untuk menarik semua tabel dari schema1 dan dua tabel
tertentu dari schema2: tableA dan tableC. Peristiwa ditulis ke set data di BigQuery.
Permintaan tidak menyertakan parameter customerManagedEncryptionKey, sehingga
sistem pengelolaan kunci internal Google Cloud digunakan untuk mengenkripsi data Anda
alih-alih CMEK.
Parameter backfillAll yang terkait dengan melakukan pengisian ulang (atau snapshot) historis ditetapkan ke kamus kosong ({}), yang berarti Datastream mengisi ulang data historis dari semua tabel yang disertakan dalam aliran.
REST
POST https://datastream.googleapis.com/v1/projects/myProjectId1/locations/us-central1/streams?streamId=mysqlCdcStream { "displayName": "MySQL CDC to BigQuery", "sourceConfig": { "sourceConnectionProfileName": "/projects/myProjectId1/locations/us-central1/streams/mysqlCp" , "mysqlSourceConfig": { "includeObjects": { "mysqlDatabases": [ { "database": "schema1" }, { "database": "schema2", "mysqlTables": [ { "table": "tableA", "table": "tableC" } ] } ] }, } }, "destinationConfig": { "destinationConnectionProfileName": "BigQueryCp", "bigqueryDestinationConfig": { "sourceHierarchyDatasets": { "datasetTemplate": { "location": "us", "datasetIdPrefix": "prefix_" } }, "dataFreshness": "900s" } }, "backfillAll": {} }
gcloud
Untuk mengetahui informasi selengkapnya tentang cara menggunakan gcloud untuk membuat aliran, lihat dokumentasi Google Cloud SDK.
Contoh 2: Mengecualikan objek tertentu dari aliran dengan sumber PostgreSQL
Dalam contoh ini, Anda akan mempelajari cara: