Tutorial ini memandu Anda melalui proses sinkronisasi data dari dua sumber heterogen—database MySQL dan file flat OSS—ke MaxCompute menggunakan Data Integration di DataWorks. Di akhir tutorial, tabel ods_user_info_d dan ods_raw_log_d di MaxCompute akan terisi dan siap untuk pemrosesan lanjutan.
Dalam tutorial ini, Anda akan:
-
Menambahkan sumber data MySQL dan HttpFile ke ruang kerja DataWorks Anda.
-
Membuat pipeline sinkronisasi dengan tiga node: satu Zero Load Node dan dua node Batch Synchronization.
-
Mengonfigurasi setiap tugas sinkronisasi, termasuk DDL tabel tujuan, parameter partisi, dan kebijakan data kotor.
-
Menjalankan pipeline dan memverifikasi bahwa data telah ditulis ke MaxCompute.
Prasyarat
Sebelum memulai, pastikan Anda telah:
-
Menyelesaikan Persiapkan lingkungan untuk menyiapkan ruang kerja DataWorks, kelompok sumber daya Serverless, dan akses jaringan publik.
-
Memiliki kelompok sumber daya Serverless yang disambungkan ke ruang kerja Anda (jika belum, ikuti prompt di bagian konfigurasi koneksi: klik Purchase lalu Associated Purchased Resource Group).
Langkah 1: Buat sumber data
Tambahkan dua sumber data berikut ke ruang kerja DataWorks Anda agar tugas sinkronisasi selanjutnya dapat mengakses data mentah.
Jika Anda telah membuat sumber data MySQL dan HttpFile untuk tutorial analisis profil pengguna lainnya, lewati langkah ini.
Buat sumber data MySQL
Informasi dasar pengguna untuk tutorial ini disimpan dalam database MySQL. Buat sumber data MySQL bernama user_behavior_analysis_mysql untuk menarik tabel ods_user_info_d ke MaxCompute.
-
Login ke Konsol DataWorks. Di bilah navigasi atas, pilih Wilayah Anda. Di panel navigasi kiri, pilih More > Go to Management Center. Pilih ruang kerja Anda dari daftar drop-down dan klik Go to Management Center.
-
Di panel navigasi kiri, klik Data Sources.
-
Klik Add Data Source, lalu cari dan pilih MySQL.
-
Di halaman Add MySQL Data Source, konfigurasikan parameter berikut. Gunakan nilai-nilai ini untuk lingkungan pengembangan maupun produksi. Pertahankan nilai default untuk parameter yang tidak tercantum.
Parameter Value Data source user_behavior_analysis_mysqlData Source Description Sumber data ini digunakan untuk tutorial DataWorks. Baca data dari sumber data ini saat Anda mengonfigurasi tugas sinkronisasi offline untuk mengakses data uji yang disediakan oleh platform. Sumber data ini hanya dapat dibaca dalam skenario Data Integration. Modul lain tidak dapat menggunakannya. Configuration Mode Connection String Mode Connection Address Host IP: rm-bp1z69dodhh85z9qa.mysql.rds.aliyuncs.com, Port:3306Database Name workshopUsername workshopPassword workshop#2017Authentication Method No authentication -
Di bagian Connection Configuration, klik Test Network Connectivity untuk kedua lingkungan. Pastikan status menunjukkan Connected.
PentingKelompok sumber daya harus disambungkan ke ruang kerja dengan akses jaringan publik diaktifkan. Jika tidak, sinkronisasi data akan gagal.
-
Klik Complete Creation.
Buat sumber data HttpFile
Log akses website pengguna untuk tutorial ini disimpan di OSS (Object Storage Service). Buat sumber data HttpFile bernama user_behavior_analysis_httpfile untuk menarik user_log.txt ke MaxCompute.
-
Di panel navigasi kiri, klik Data Sources.
-
Klik Add Data Source, lalu cari dan pilih HttpFile.
-
Di halaman Add HttpFile Data Source, konfigurasikan parameter berikut. Gunakan nilai-nilai ini untuk lingkungan pengembangan maupun produksi. Pertahankan nilai default untuk parameter yang tidak tercantum.
Parameter Nilai Data Source Name user_behavior_analysis_httpfileData Source Description Sumber data ini digunakan untuk tutorial DataWorks. Baca data dari sumber data ini saat Anda mengonfigurasi tugas sinkronisasi offline untuk mengakses data uji yang disediakan oleh platform. Sumber data ini hanya dapat dibaca dalam skenario Data Integration. Modul lain tidak dapat menggunakannya. URL https://dataworks-workshop-2024.oss-cn-shanghai.aliyuncs.com -
Di bagian Connection Configuration, klik Test Network Connectivity untuk kedua lingkungan. Pastikan status menunjukkan Connected.
PentingKelompok sumber daya harus disambungkan ke ruang kerja dengan akses jaringan publik diaktifkan. Jika tidak, sinkronisasi data akan gagal.
-
Klik Complete Creation.
Langkah 2: Bangun pipeline sinkronisasi
Buat alur kerja yang mengoordinasikan dua tugas sinkronisasi dan dijalankan setiap hari sesuai jadwal.
-
Klik ikon
di pojok kiri atas dan pilih All Products > Data Development And Task Operation > DataStudio. Alihkan ke ruang kerja yang dibuat untuk tutorial ini. -
Di panel navigasi kiri, klik
untuk membuka halaman Pengembangan Data. Di area Workspace Directories, klik
, pilih Create Workflow, dan beri nama user_profile_analysis. -
Di kanvas alur kerja, seret satu Zero Load Node dan dua node Batch Synchronization dari panel kiri ke kanvas. Beri nama sebagai berikut:
Jenis node Nama node Fungsi Zero Load Node workshop_startNode leluhur dry-run yang mengelola seluruh alur kerja. Tidak perlu mengedit kode. Batch Synchronization ods_user_info_dMenyinkronkan informasi dasar pengguna dari MySQL ke tabel ods_user_info_ddi MaxCompute.Batch Synchronization ods_raw_log_dMenyinkronkan log akses website pengguna dari OSS ke tabel ods_raw_log_ddi MaxCompute. -
Seret koneksi untuk menjadikan
workshop_startsebagai node leluhur dari kedua node Batch Synchronization, seperti yang ditunjukkan di bawah ini. -
Konfigurasikan penjadwalan alur kerja. Di kanvas, klik Scheduling di panel kanan dan atur parameter berikut. Pertahankan nilai default untuk parameter yang tidak tercantum.
Parameter penjadwalan Nilai Scheduling Parameters bizdate=$[yyyymmdd-1]— meneruskan tanggal hari sebelumnya ke semua node internalScheduling Cycle DayScheduling Time 00:30Scheduling Dependencies Klik Use Workspace Root Node untuk menyambungkan alur kerja ke node root (format: workspace_name_root).
Langkah 3: Konfigurasi tugas sinkronisasi
Konfigurasi node awal
-
Di kanvas alur kerja, arahkan kursor ke
workshop_startdan klik Open Node. -
Di panel kanan, klik Scheduling dan atur parameter berikut. Pertahankan nilai default untuk parameter yang tidak tercantum.
Parameter penjadwalan Nilai Scheduling Type dry-run schedulingResource Group Pilih kelompok sumber daya Serverless yang dibuat di Persiapkan lingkungan. Scheduling Dependencies Klik Use Workspace Root Node untuk memicu eksekusi dari node root ruang kerja ( workspace_name_root).
Konfigurasi tugas sinkronisasi data pengguna (ods_user_info_d)
-
Di kanvas alur kerja, arahkan kursor ke
ods_user_info_ddan klik Open Node. -
Konfigurasikan sumber dan tujuan:
Parameter Nilai Source — Data source type MySQLSource — Data source name user_behavior_analysis_mysqlResource Group Pilih kelompok sumber daya Serverless dari Persiapkan lingkungan. Destination — Data destination type MaxCompute(ODPS)Destination — Data source name Pilih sumber daya MaxCompute yang disambungkan di Persiapkan lingkungan, misalnya MaxCompute_Source. -
Klik Next untuk mengonfigurasi detail tugas sinkronisasi.
-
Configure source and destination. Atur parameter berikut. Pertahankan nilai default untuk parameter yang tidak tercantum.
Modul Configuration Item Value Data source Table ods_user_info_dData source Split key uid(kunci primary dari tabelods_user_info_ddi MySQL)Destination Tunnel Resource Group Sumber daya transmisi umum (default). Jika Anda memiliki Kuota Tunnel eksklusif, Anda dapat memilihnya dari daftar drop-down. Untuk informasi lebih lanjut, lihat Purchase and use an exclusive resource group for Data Transmission Service. Destination Table Klik Generate Destination Table Schema. Di kotak Statement for Creating Table, tempel DDL berikut dan klik Create Table: Module Configuration Item Value Destination Partition information ${bizdate}CREATE TABLE IF NOT EXISTS ods_user_info_d ( uid STRING COMMENT 'User ID', gender STRING COMMENT 'Gender', age_range STRING COMMENT 'Age range', zodiac STRING COMMENT 'Zodiac sign' ) PARTITIONED BY ( dt STRING ) LIFECYCLE 7;Penggunaan
${bizdate}memungkinkan Anda meneruskan nilai konstan saat pengujian dan nilai dinamis saat dijalankan sesuai jadwal. Untuk format variabel yang didukung, lihat Scheduling Parameters. -
Konfirmasi pemetaan bidang dan kontrol saluran. DataWorks memetakan bidang sumber ke bidang tujuan berdasarkan konfigurasi pemetaan bidang. Atur Policy for Dirty Data Records ke Disallow Dirty Data Records. Pertahankan nilai default untuk semua pengaturan lainnya. Untuk detailnya, lihat Configure a sync task using the codeless UI.
-
-
Konfigurasikan parameter debug. Di panel kanan, klik Debugging Configurations dan atur sebagai berikut:
Configuration Item Nilai Resource Group Pilih kelompok sumber daya Serverless dari Persiapkan lingkungan. Script Parameters Biarkan kosong. Saat Anda menjalankan alur kerja di Langkah 4, atur Value Used in This Run ke nilai konstan seperti 20250223. Pekerjaan akan mengganti${bizdate}dengan nilai ini. -
(Opsional) Konfigurasikan properti penjadwalan. Di panel kanan, klik Scheduling. Parameter penjadwalan tingkat alur kerja sudah berlaku untuk node ini; tidak diperlukan konfigurasi terpisah. Untuk detailnya, lihat Node scheduling.
-
Di bilah alat node, klik Save.
Konfigurasi tugas sinkronisasi log pengguna (ods_raw_log_d)
-
Di kanvas alur kerja, arahkan kursor ke
ods_raw_log_ddan klik Open Node. -
Konfigurasikan sumber dan tujuan:
Parameter Nilai Source — Data source type HttpFileSource — Data source name user_behavior_analysis_httpfileResource Group Pilih kelompok sumber daya Serverless dari Persiapkan lingkungan. Destination — Data destination type MaxCompute(ODPS)Destination — Data source name Pilih sumber daya MaxCompute dari Persiapkan lingkungan, misalnya MaxCompute_Source. -
Klik Next untuk mengonfigurasi detail tugas sinkronisasi.
-
Configure source and destination. Atur parameter berikut. Pertahankan nilai default untuk parameter yang tidak tercantum.
PentingSetelah Anda mengonfigurasi pengaturan sumber data, klik Confirm Data Structure untuk memverifikasi bahwa DataWorks dapat membaca file log dengan benar sebelum melanjutkan.
Modul Configuration Item Value Data source File path /user_log.txtData source Text type textData source Column Delimiter |Data source Advanced configuration > Skip Header NoDestination Tunnel Resource Group Sumber daya transmisi umum (default). Jika Anda memiliki Kuota Tunnel eksklusif, Anda dapat memilihnya dari daftar drop-down. Untuk informasi lebih lanjut, lihat Purchase and use an exclusive resource group for Data Transmission Service. Destination Table Klik Generate Destination Table Schema. Di kotak Statement for Creating Table, tempel DDL berikut dan klik Create Table: Module Configuration Item Value Destination Partition information ${bizdate}CREATE TABLE IF NOT EXISTS ods_raw_log_d ( col STRING ) PARTITIONED BY ( dt STRING ) LIFECYCLE 7; -
Confirm field mapping and channel control. Atur Policy for Dirty Data Records ke Disallow Dirty Data Records. Pertahankan nilai default untuk semua pengaturan lainnya. Untuk detailnya, lihat Configure a sync task using the codeless UI.
-
-
Konfigurasikan parameter debug. Di panel kanan, klik Debugging Configurations dan atur sebagai berikut:
Item konfigurasi Nilai Resource Group Pilih kelompok sumber daya Serverless dari Persiapkan lingkungan. Script Parameters Biarkan kosong. Saat Anda menjalankan alur kerja di Langkah 4, atur Value Used in This Run ke nilai konstan seperti 20250223. -
(Opsional) Konfigurasikan properti penjadwalan. Di panel kanan, klik Scheduling. Parameter tingkat alur kerja berlaku otomatis untuk node ini. Untuk detailnya, lihat Node scheduling.
-
Di bilah alat node, klik Save.
Langkah 4: Sinkronisasi data
-
Di bilah alat alur kerja, klik Run. Atur Value Used in This Run untuk variabel
bizdate— misalnya,20250223— lalu klik OK. Tunggu hingga proses selesai. -
Verifikasi hasilnya.
-
Di panel navigasi kiri DataStudio, klik
untuk membuka halaman Pengembangan Data. Di area folder pribadi, klik
untuk membuat file dengan ekstensi .sql. -
Di bagian bawah halaman, pastikan mode bahasa adalah
MaxCompute SQL.
-
Jalankan kueri berikut untuk menghitung jumlah catatan yang dimuat ke masing-masing tabel. Ganti
your_data_timestampdengan nilaibizdateyang digunakan dalam proses (misalnya,20250223).-- Ganti your_data_timestamp dengan nilai bizdate sebenarnya (misalnya, 20250223) SELECT count(*) FROM ods_user_info_d WHERE dt='your_data_timestamp'; SELECT count(*) FROM ods_raw_log_d WHERE dt='your_data_timestamp';-
Jika kedua kueri mengembalikan jumlah yang bukan nol, sinkronisasi data telah selesai.
-
Jika suatu kueri mengembalikan nol, pastikan Value Used in This Run cocok dengan nilai
dtdalam kueri. Untuk memeriksa, klik alur kerja, buka Running History di panel kanan, lalu klik View di kolom Actions untuk memeriksa nilai partisi (partition=[pt=xxx]) dalam log proses.
-
-
Apa yang telah Anda pelajari
Dalam tutorial ini, Anda:
-
Menambahkan sumber data MySQL dan HttpFile ke ruang kerja DataWorks Anda.
-
Membangun alur kerja
user_profile_analysisdengan satu Zero Load Node dan dua node Batch Synchronization. -
Mengonfigurasi tabel sumber dan tujuan, parameter partisi, serta kebijakan data kotor untuk setiap tugas sinkronisasi.
-
Menjalankan pipeline dan memverifikasi bahwa data telah ditulis ke tabel
ods_user_info_ddanods_raw_log_ddi MaxCompute.
Langkah berikutnya
Lanjutkan ke Proses data untuk mentransformasi dan menganalisis data yang telah disinkronkan di MaxCompute.