全部产品
Search
文档中心

DataWorks:Sumber data dan sinkronisasi

更新时间:Feb 14, 2026

DataWorks Data Integration melakukan sinkronisasi data dari berbagai sumber data, termasuk MySQL, MaxCompute, Hologres, dan Kafka. Layanan ini menyediakan solusi untuk berbagai skenario, seperti ekstrak, transformasi, dan muat (ETL) batch T+1, sinkronisasi data real-time dengan latensi dalam hitungan detik, serta migrasi database penuh.

Solusi sinkronisasi

Jenis sinkronisasi

Granularitas sumber

Target Granularity

Ketepatan waktu

Skenario

Batch tabel tunggal

Tabel tunggal

Tabel tunggal/Partisi

T+1 atau Periodik

Muat penuh periodik, Muat inkremental periodik

Batch database dan tabel terbagi (sharded)

Tabel terbagi (sharded)

Tabel tunggal/Partisi

T+1 atau Periodik

Muat penuh periodik, Muat inkremental periodik

Real-time tabel tunggal

Tabel tunggal

Tabel tunggal/Partisi

Detik hingga menit

Change Data Capture (CDC)

Batch database penuh

Database penuh atau beberapa tabel

Beberapa tabel yang sesuai beserta Partisinya

Sekali atau Periodik

Muat penuh sekali atau periodik, muat inkremental sekali atau periodik, atau muat penuh sekali diikuti muat inkremental periodik

Real-time database penuh

Database penuh atau beberapa tabel

Beberapa tabel yang sesuai beserta Partisinya

Detik hingga menit

Muat penuh + Change Data Capture (CDC)

Backup penuh dan inkremental seluruh database

Database penuh atau beberapa tabel

Beberapa tabel yang sesuai beserta Partisinya

Muat penuh awal: Batch

Muat inkremental berkelanjutan: T+1

Muat penuh awal dengan muat inkremental periodik

Solusi sinkronisasi yang direkomendasikan

Saat memilih solusi sinkronisasi data, pertimbangkan dua faktor utama:

  1. Ketepatan waktu data: Seberapa sering bisnis Anda memerlukan sinkronisasi data? Apakah diperlukan pembaruan batch harian atau pembaruan real-time tingkat detik/menit?

  2. Lingkup dan kompleksitas sinkronisasi: Berapa banyak tabel yang perlu disinkronkan? Apakah logika pemrosesan untuk tabel-tabel tersebut konsisten? Hal ini menentukan apakah Anda memerlukan solusi untuk tabel tunggal atau seluruh database.

Berdasarkan faktor-faktor tersebut, kami merekomendasikan dua jenis utama solusi sinkronisasi: batch dan real-time.

1. Sinkronisasi batch (T+1 atau periodik)

Solusi batch ideal untuk kasus penggunaan tanpa persyaratan ketepatan waktu data yang ketat, seperti pemrosesan batch periodik T+1.

Penting

Prasyarat: Untuk melakukan sinkronisasi batch inkremental, tabel sumber harus memiliki bidang untuk melacak inkremen, seperti timestamp gmt_modified atau ID auto-increment. Jika tidak ada bidang semacam itu, Anda hanya dapat melakukan sinkronisasi penuh periodik.

1. Batch tabel tunggal

Pendekatan ini paling cocok untuk skenario di mana Anda perlu melakukan pemrosesan detail halus pada sejumlah kecil tabel data inti yang heterogen.

  • Manfaat utama: Logika pemrosesan fleksibel.

    • Transformasi detail halus: Mendukung pemetaan bidang kompleks, penyaringan data, penugasan nilai konstan, transformasi berbasis fungsi, bahkan pemrosesan berbantuan AI.

    • Integrasi sumber heterogen: Ideal untuk memproses data dari sumber non-standar seperti API dan file log.

  • Keterbatasan utama: Biaya tinggi saat diskalakan.

    • Overhead konfigurasi tinggi: Mengonfigurasi dan memelihara tugas individual untuk banyak tabel memerlukan upaya signifikan.

    • Konsumsi resource tinggi: Setiap tugas dijadwalkan secara independen. Konsumsi resource dari 100 tugas tabel tunggal jauh lebih besar daripada satu tugas seluruh database.

Solusi yang direkomendasikan: Tugas sinkronisasi batch untuk tabel tunggal
2. Batch seluruh database

Gunakan pendekatan ini saat Anda perlu memigrasi sejumlah besar tabel homogen dari satu lokasi ke lokasi lain secara efisien.

  • Manfaat utama: Efisiensi operasional tinggi dan biaya rendah.

    • Efisiensi tinggi: Konfigurasikan ratusan tabel sekaligus dengan pencocokan objek otomatis untuk meningkatkan efisiensi pengembangan secara signifikan.

    • Hemat biaya: Penjadwalan resource yang dioptimalkan menghasilkan biaya sangat rendah. Misalnya, konsumsi resource satu tugas seluruh database mungkin hanya 2 CU, dibandingkan 100 CU untuk 100 tugas tabel tunggal.

    • Kasus penggunaan khas: Membangun lapisan ODS gudang data, melakukan backup database periodik, dan memigrasi data ke cloud.

  • Keterbatasan utama: Logika pemrosesan terbatas.

    • Dirancang terutama untuk replikasi, sehingga tidak mendukung logika transformasi kompleks yang spesifik per tabel.

Solusi yang direkomendasikan: Tugas sinkronisasi batch seluruh database.

2. Sinkronisasi real-time (tingkat detik atau menit)

Solusi real-time ideal untuk kasus penggunaan yang memerlukan penangkapan perubahan data (insert, update, dan delete) dari sumber guna mendukung analitik real-time dan respons bisnis.

Penting

Prasyarat: Sumber harus mendukung Change Data Capture (CDC) atau merupakan antrian pesan. Misalnya, database MySQL harus memiliki Binary Log diaktifkan, atau sumbernya bisa berupa instans Kafka.

Real-time tabel tunggal atau real-time seluruh database

Logika pemilihan mirip dengan solusi batch:

  • Real-time tabel tunggal: Ideal untuk skenario yang melibatkan pemrosesan kompleks aliran perubahan real-time dari satu tabel inti.

  • Real-time seluruh database: Pilihan utama untuk membangun gudang data real-time, menerapkan disaster recovery database real-time, dan membuat data lake real-time. Solusi ini juga menawarkan keunggulan signifikan dalam efisiensi dan hemat biaya.

Solusi yang direkomendasikan: Tugas sinkronisasi real-time untuk tabel tunggal, Tugas sinkronisasi real-time seluruh database

3. Kasus penggunaan khusus: CDC ke target append-only

Penting

Konteks: Data CDC yang ditangkap oleh sinkronisasi real-time mencakup tiga jenis operasi: Insert, Update, dan Delete. Untuk sistem penyimpanan append-only seperti tabel non-Delta MaxCompute yang tidak mendukung operasi fisik Update atau Delete, menulis aliran CDC secara langsung dapat menyebabkan inkonsistensi data. Misalnya, operasi delete tidak akan tercermin di tabel target.

  • Solusi DataWorks: Pola Base + Log

    • Solusi ini diimplementasikan sebagai tugas database penuh dan inkremental (near real-time). Solusi ini bekerja dengan membuat tabel Base (Snapshot Penuh) dan tabel Log (log inkremental) di target.

    • Cara kerja: Aliran data CDC ditulis ke tabel Log secara real-time. Kemudian, setiap hari (T+1), sistem secara otomatis menjadwalkan tugas untuk merge perubahan dari tabel Log ke tabel Base, menghasilkan Snapshot Penuh yang diperbarui. Pendekatan ini menulis data ke tabel inkremental dengan latensi tingkat menit. Status konsisten akhir terlihat setelah proses merge T+1. Pendekatan ini menyeimbangkan penangkapan data real-time dengan Eventual Consistency yang dibutuhkan untuk gudang data batch.

Solusi yang direkomendasikan: Tugas database penuh dan inkremental.

Kemampuan sumber data

Sumber data

Batch Satu-Tabel

Real-time tabel tunggal

Batch seluruh database

Real-time seluruh database

Database penuh dan inkremental

Sumber data dataset publik

Baca

-

-

-

-

Sumber data Amazon S3

Baca/Tulis

-

-

-

-

Sumber data Amazon Redshift

Baca/Tulis

-

-

-

-

Sumber data AnalyticDB for MySQL 2.0

Baca/Tulis

-

-

-

-

Sumber data AnalyticDB for MySQL 3.0

Baca/Tulis

Tulis

Baca

Tulis

-

Sumber data AnalyticDB for PostgreSQL

Baca/Tulis

-

Baca

-

-

Sumber data ApsaraDB for OceanBase

Baca/Tulis

-

-

Baca

Baca

Sumber data Azure Blob Storage

Baca

-

-

-

-

Sumber data BigQuery

Baca

-

-

-

-

Sumber data ClickHouse

Baca/Tulis

-

-

-

-

Sumber data COS

Baca

-

-

-

-

Sumber data Databricks

Baca

-

-

-

-

Sumber data DataHub

Baca/Tulis

Baca/Tulis

-

Tulis

-

Sumber data Data Lake Formation

Baca/Tulis

Tulis

Tulis

Tulis

-

Sumber data DB2

Baca/Tulis

-

Baca

-

-

Sumber data Doris

Baca/Tulis

Tulis

Baca

-

-

Sumber data DM (Dameng)

Baca/Tulis

-

Baca

-

-

Sumber data DRDS (PolarDB-X 1.0)

Baca/Tulis

-

Baca

-

-

Elasticsearch

Baca/Tulis

Tulis

Tulis

Tulis

-

Sumber data FTP

Baca/Tulis

-

-

-

-

GBase8a

Baca/Tulis

-

-

-

-

HBase

HBase: Baca/Tulis

HBase 2.x SQL: Read

HBase 1.1.x SQL: Write

-

-

-

-

Sumber data HDFS

Baca/Tulis

-

-

-

-

Hive

Baca/Tulis

-

Baca/Tulis

-

-

Sumber data Hologres

Baca/Tulis

Baca/Tulis

Baca/Tulis

Tulis

-

Sumber data HttpFile

Baca

-

-

-

-

Sumber data Kafka

Baca/Tulis

Baca/Tulis

-

Tulis

-

Sumber data KingbaseES (Renda Jingcang)

Baca/Tulis

-

-

-

-

Sumber data Lindorm

Baca/Tulis

Tulis

-

Tulis

-

Sumber data LogHub (SLS)

Baca/Tulis

Baca

-

-

-

Sumber data MaxCompute

Baca/Tulis

Tulis

Tulis

Tulis

Tulis

Sumber data MariaDB

Baca/Tulis

-

-

-

-

Sumber data MaxGraph

Tulis

-

-

-

-

Sumber data ApsaraDB for Memcache

Tulis

-

-

-

-

Sumber data MetaQ

Baca

-

-

-

-

Sumber data Milvus

Baca/Tulis

-

-

-

-

Sumber data MongoDB

Baca/Tulis

-

-

Baca

-

Sumber data MySQL

Baca/Tulis

Baca

Baca

Baca

Baca

Sumber data OpenSearch

Tulis

-

-

-

-

Sumber data Oracle

Baca/Tulis

Baca

Baca

Baca

Baca

Sumber data OSS

Baca/Tulis

-

Tulis

Tulis

-

Sumber data OSS-HDFS

Baca/Tulis

-

Tulis

Tulis

-

Sumber data PolarDB

Baca/Tulis

Baca

Baca

Baca

Baca

Sumber data PolarDB-X 2.0

Baca/Tulis

-

Baca

Baca

-

Sumber data PostgreSQL

Baca/Tulis

-

Baca

Baca

-

Sumber data Redis

Tulis

-

-

-

-

Sumber data RestAPI (HTTP)

Baca/Tulis

-

-

-

-

Sumber data Salesforce

Baca/Tulis

-

-

-

-

Sumber data SAP HANA

Baca/Tulis

-

-

-

-

Sumber data Sensors Data (Shen Ce)

Tulis

-

-

-

-

Sumber data Snowflake

Baca/Tulis

-

-

-

-

Sumber data StarRocks

Baca/Tulis

Tulis

Tulis

Tulis

-

Sumber data SQL Server

Baca/Tulis

-

Baca

-

-

Sumber data Tablestore

Baca/Tulis

Tulis

-

-

-

Sumber data Tablestore Stream

Baca/Tulis

-

-

-

-

Sumber data TiDB

Baca/Tulis

-

-

-

-

Sumber data TSDB

Tulis

-

-

-

-

Vertica

Baca/Tulis

-

-

-

-

Sumber data TOS

Baca

-

-

-

-

Kasus penggunaan

Referensi

Gunakan artikel-artikel berikut untuk memulai Data Integration.