All Products
Search
Document Center

DataWorks:Tingkat Lanjut: Analisis kategori produk terlaris

Last Updated:Aug 27, 2026

Buat pipa data lengkap di DataWorks — mulai dari ingesti data mentah dan orkestrasi alur bisnis hingga penjadwalan tugas periodik dan visualisasi hasil — menggunakan skenario e-commerce sebagai contoh.

Mulai

Tutorial ini menggunakan skenario e-commerce untuk menunjukkan cara membangun pipa data lengkap, mulai dari ingesti dan pemrosesan data mentah hingga visualisasi data. Dengan mengikuti proses pengembangan standar, Anda dapat dengan cepat membuat alur kerja yang dapat digunakan kembali dengan penjadwalan andal dan observabilitas operasional.

Anda akan menyelesaikan tugas-tugas berikut:

  1. Sinkronisasi data: Gunakan modul Data Integration di DataWorks untuk membuat tugas sinkronisasi batch tabel tunggal yang menyinkronkan data bisnis ke platform data besar seperti MaxCompute.

  2. Pembersihan data: Gunakan modul Data Studio di DataWorks untuk memproses, menganalisis, dan menambang data bisnis.

  3. Visualisasi data: Gunakan modul Data Analysis di DataWorks untuk mengubah hasil analisis menjadi grafik yang mudah dipahami oleh pengguna bisnis.

  4. Penjadwalan periodik: Konfigurasikan penjadwalan periodik untuk alur kerja sinkronisasi data dan pembersihan data.

image

Dalam tutorial ini, Anda akan menyinkronkan data produk dan pesanan mentah dari sumber data publik ke MaxCompute. Anda kemudian akan menggunakan alur kerja berikut untuk menghasilkan peringkat harian kategori produk terlaris:

Prasyarat

Untuk menyelesaikan tutorial ini, Anda memerlukan Akun Alibaba Cloud atau Pengguna RAM dengan izin AliyunDataWorksFullAccess. Untuk petunjuknya, lihat Siapkan Akun Alibaba Cloud atau Siapkan Pengguna RAM.

Catatan

DataWorks menyediakan sistem izin komprehensif untuk kontrol akses di tingkat produk dan modul. Jika Anda memerlukan kontrol akses detail halus, lihat Ikhtisar sistem pengelolaan izin DataWorks.

Prasyarat

Aktifkan DataWorks

Tutorial ini menggunakan wilayah China (Shanghai) sebagai contoh. Masuk ke Konsol DataWorks, alihkan ke wilayah China (Shanghai), dan periksa apakah DataWorks telah diaktifkan di wilayah ini.

Catatan

Tutorial ini menggunakan China (Shanghai) sebagai contoh. Dalam praktiknya, pilih wilayah berdasarkan lokasi aktual data bisnis Anda:

  • Jika data bisnis Anda disimpan di layanan Alibaba Cloud lainnya, pilih wilayah yang sama dengan layanan tersebut.

  • Jika bisnis Anda berada di lingkungan on-premises dan memerlukan akses jaringan publik, pilih wilayah yang secara geografis dekat dengan lokasi Anda untuk mengurangi latensi.

Pengguna baru

Jika Anda pengguna baru yang menggunakan DataWorks untuk pertama kalinya, halaman akan menunjukkan bahwa DataWorks belum diaktifkan di wilayah saat ini. Klik Purchase Product Portfolio for Free.

  1. Konfigurasikan parameter pada halaman pembelian gabungan.

    Parameter

    Deskripsi

    Contoh

    Region

    Pilih wilayah tempat Anda ingin mengaktifkan DataWorks.

    China (Shanghai)

    DataWorks Edition

    Pilih edisi DataWorks yang akan dibeli.

    Catatan

    Tutorial ini menggunakan Basic Edition sebagai contoh. Semua edisi mendukung fitur yang dijelaskan dalam tutorial ini. Anda dapat merujuk ke Perbandingan edisi dan memilih edisi DataWorks berdasarkan kebutuhan bisnis Anda.

    Basic Edition

  2. Klik Confirm Order and Pay dan selesaikan pembayaran.

Sudah diaktifkan sebelumnya tetapi kedaluwarsa

Jika Anda sebelumnya telah mengaktifkan DataWorks di wilayah China (Shanghai) tetapi edisi DataWorks telah kedaluwarsa, prompt berikut muncul. Klik Purchase Edition.

Halaman menampilkan pesan You must have both a DataWorks edition and pay-as-you-go resources. Ikon silang merah menunjukkan bahwa tidak ada edisi DataWorks yang aktif saat ini di wilayah ini, dan ikon centang hijau menunjukkan bahwa sumber daya bayar sesuai penggunaan sudah tersedia di wilayah ini.

  1. Konfigurasikan parameter pada halaman pembelian.

    Parameter

    Deskripsi

    Contoh

    Version

    Pilih edisi DataWorks yang akan dibeli.

    Catatan

    Tutorial ini menggunakan Basic Edition sebagai contoh. Semua edisi mendukung fitur yang dijelaskan dalam tutorial ini. Anda dapat merujuk ke Perbandingan edisi dan memilih edisi DataWorks berdasarkan kebutuhan bisnis Anda.

    Basic Edition

    Region

    Pilih wilayah tempat Anda ingin mengaktifkan DataWorks.

    China (Shanghai)

  2. Klik Buy Now dan selesaikan pembayaran.

Penting

Setelah Anda membeli edisi DataWorks, jika Anda tidak dapat menemukan edisi tersebut, coba langkah-langkah berikut:

  • Tunggu beberapa menit dan refresh halaman. Pembaruan sistem mungkin tertunda.

  • Periksa apakah wilayah saat ini sesuai dengan wilayah tempat Anda membeli edisi DataWorks. Ketidaksesuaian wilayah dapat menyebabkan edisi tidak terlihat.

Sudah diaktifkan

Jika Anda telah mengaktifkan DataWorks di wilayah China (Shanghai), halaman ikhtisar DataWorks muncul dan Anda dapat melanjutkan ke langkah berikutnya.

Buat ruang kerja

  1. Buka halaman daftar ruang kerja DataWorks, alihkan ke wilayah China (Shanghai), dan klik Create a workspace.

  2. Di halaman Create a workspace, tentukan Workspace Name kustom, aktifkan Use Data Studio (New Version), lalu klik Create a workspace.

    Catatan

    Setelah 18 Februari 2025, ketika Akun Alibaba Cloud mengaktifkan DataWorks dan membuat ruang kerja di wilayah China (Shanghai) untuk pertama kalinya, versi baru Data Studio diaktifkan secara default, dan parameter Use Data Studio (New Version) tidak ditampilkan di halaman.

Buat kelompok sumber daya dan asosiasikan dengan ruang kerja

  1. Buka halaman daftar kelompok sumber daya DataWorks, alihkan ke wilayah China (Shanghai), dan klik Create Resource Group.

  2. Di halaman pembelian kelompok sumber daya, konfigurasikan parameter berikut.

    Parameter

    Deskripsi

    Resource Group Name

    Kustom.

    VPC, vSwitch

    Pilih VPC dan vSwitch yang ada. Jika tidak ada di wilayah saat ini, klik tautan konsol yang sesuai dalam deskripsi parameter untuk membuatnya.

    Service-linked Role

    Ikuti petunjuk di layar untuk membuat peran terkait layanan.

  3. Klik Buy Now dan selesaikan pembayaran.

  4. Buka halaman daftar kelompok sumber daya DataWorks, alihkan ke wilayah China (Shanghai), temukan kelompok sumber daya yang Anda buat, dan klik Associate Workspace di kolom Operation.

  5. Di halaman Associate Workspace, temukan ruang kerja yang Anda buat dan klik Bind di kolom Operation.

Aktifkan akses jaringan publik untuk kelompok sumber daya

Data bisnis publik platform e-commerce yang digunakan dalam tutorial ini harus diperoleh melalui jaringan publik. Namun, kelompok sumber daya umum yang dibuat pada langkah sebelumnya tidak memiliki akses jaringan publik secara default. Anda perlu mengonfigurasi Internet NAT Gateway untuk VPC yang terkait dengan kelompok sumber daya dan menambahkan EIP untuk membangun konektivitas jaringan dengan sumber data publik agar data dapat diambil.

  1. Masuk ke Konsol VPC - Internet NAT Gateway, alihkan ke wilayah China (Shanghai) di bilah menu atas, dan klik Create Internet NAT Gateway. Konfigurasikan parameter yang relevan.

    Catatan

    Pertahankan nilai default untuk parameter yang tidak dijelaskan dalam tabel.

    Parameter

    Nilai

    Region

    China (Shanghai).

    Network and Zone

    Pilih VPC dan vSwitch yang terkait dengan kelompok sumber daya.

    Anda dapat membuka halaman daftar kelompok sumber daya DataWorks, alihkan ke wilayah China (Shanghai), temukan kelompok sumber daya yang Anda buat, lalu klik Network Settings di kolom Operation. Di bagian Task Scheduling & Data Integration, lihat VPC dan vSwitch. Untuk informasi lebih lanjut tentang VPC dan vSwitch, lihat Apa itu VPC?.

    Network Type

    Internet NAT Gateway.

    EIP

    Beli EIP baru.

    Service-linked role creation

    Saat Anda membuat gerbang NAT untuk pertama kalinya, Anda perlu membuat peran terkait layanan. Klik Create Associated Role.

  2. Klik Buy Now dan selesaikan pembayaran untuk membuat instans gerbang NAT.

    Setelah pembayaran selesai, jika ketiga operasi sumber daya—Create EIP, Create NAT Gateway, dan Binding EIP—berhasil, berarti instans Gateway NAT telah berhasil dibeli dan diikatkan dengan EIP.

  3. Setelah instans gerbang NAT dibeli, klik Kembali ke Konsol dan buat entri SNAT untuk instans gerbang NAT yang baru dibeli.

    Catatan

    Hanya setelah entri SNAT dikonfigurasi, kelompok sumber daya yang menggunakan VPC ini dapat mengakses jaringan publik.

    1. Klik Management di kolom Operation dari instans yang baru dibeli untuk membuka halaman manajemen instans gerbang NAT, lalu alihkan ke tab SNAT Management.

    2. Di bagian SNAT Entry List, klik Create SNAT Entry. Berikut adalah konfigurasi utama:

      Parameter

      Nilai

      SNAT entry granularity

      Pilih granularitas VPC untuk memastikan semua kelompok sumber daya dalam VPC gerbang NAT dapat mengakses jaringan publik melalui EIP yang dikonfigurasi.

      Select EIP

      Konfigurasikan EIP yang diikat ke instans gerbang NAT saat ini.

      Setelah mengonfigurasi parameter entri SNAT, klik OK untuk membuat entri SNAT.

    Di bagian SNAT Entry List, ketika Status entri SNAT yang baru dibuat berubah menjadi Enabled, VPC yang terkait dengan kelompok sumber daya memiliki akses jaringan publik.

Buat dan asosiasikan sumber daya komputasi MaxCompute

Dalam tutorial ini, Anda perlu membuat proyek MaxCompute dan mengasosiasikannya sebagai sumber daya komputasi DataWorks untuk menerima data dan melakukan analisis data besar.

  1. Buka halaman daftar ruang kerja DataWorks, alihkan ke wilayah China (Shanghai), temukan ruang kerja yang Anda buat, klik nama ruang kerja tersebut, lalu buka halaman Workspace Details.

  2. Di panel navigasi kiri, klik Computing Resources untuk membuka halaman sumber daya komputasi. Klik Associate Computing Resources dan pilih jenis MaxCompute. Konfigurasikan parameter utama berikut untuk membuat proyek MaxCompute dan mengasosiasikannya sebagai sumber daya komputasi DataWorks.

    Catatan

    Pertahankan nilai default untuk parameter yang tidak dijelaskan dalam tabel.

    Parameter

    Deskripsi

    MaxCompute Project

    Di daftar tarik-turun, klik Create dan tentukan parameter berikut.

    • Project Name: Kustom. Nama harus unik secara global.

    • Billing Method of Computing Resources: Pilih Pay-as-you-go.

      Catatan

      Jika Pay-as-you-go tidak dapat dipilih, klik Activate di samping Pay-as-you-go untuk mengaktifkan layanan MaxCompute.

    • Default Quota: Pilih kuota default dari daftar tarik-turun.

    Default Access Identity

    Pilih Alibaba Cloud Account.

    Computing Resource Instance Name

    Nama instans sumber daya komputasi digunakan untuk memilih sumber daya komputasi saat tugas berjalan, sehingga memudahkan identifikasi. Misalnya, tutorial ini menggunakan MaxCompute_Source.

  3. Klik Confirm.

Prosedur

Skenario berikut memandu Anda melalui fitur inti DataWorks:

Asumsikan bahwa platform e-commerce menyimpan informasi produk dan informasi pesanan di database MySQL. Platform perlu menganalisis data pesanan secara berkala dan memvisualisasikan peringkat harian kategori produk terlaris.

Langkah 1: Sinkronisasi data

Buat sumber data

DataWorks terhubung ke sumber data dan tujuan melalui koneksi sumber data. Buat sumber data MySQL untuk terhubung ke database MySQL yang menyimpan data bisnis yang digunakan dalam tutorial ini.

Catatan

Anda tidak perlu menyiapkan data bisnis mentah yang digunakan dalam tutorial ini. Untuk tujuan pengujian dan pembelajaran, DataWorks menyediakan set data uji. Data tabel yang relevan disimpan di database MySQL publik. Anda hanya perlu membuat koneksi sumber data MySQL.

  1. Buka halaman Administrasi DataWorks, alihkan ke wilayah China (Shanghai), pilih ruang kerja yang Anda buat dari daftar tarik-turun, lalu klik Go to Management Center.

  2. Di panel navigasi kiri, klik Data Sources untuk membuka halaman Data Sources. Klik Add Connection, pilih jenis MySQL, lalu konfigurasikan parameter sumber data MySQL.

    Catatan
    • Pertahankan nilai default untuk parameter yang tidak dijelaskan dalam tabel.

    • Saat Anda menambahkan sumber data untuk pertama kalinya, Anda perlu menyelesaikan Cross-service authorization. Ikuti petunjuk di layar untuk memberikan akses ke peran terkait layanan AliyunDIDefaultRole.

    Parameter

    Deskripsi

    Data Source Name

    Dalam contoh ini, atur parameter ini ke MySQL_Source.

    Configuration Mode

    Pilih User-created Data Store with Public IP Addresses.

    Connection Address

    • Alamat IP host: rm-bp1z69dodhh85z9qa.mysql.rds.aliyuncs.com

    • Port: 3306.

    Penting

    Data yang disediakan dalam tutorial ini hanya dimaksudkan untuk latihan langsung dengan platform Alibaba Cloud DataWorks. Semua data adalah data uji dan hanya dapat dibaca di modul Integrasi Data.

    Database Name

    Atur parameter ini ke retail_e_commerce.

    Username

    Masukkan username workshop.

    Password

    Masukkan password workshop#2017.

  3. Di bagian Connection Configuration, alihkan ke tab Data Integration, temukan kelompok sumber daya yang terkait dengan ruang kerja, lalu klik Test Connectivity di kolom Connected state.

    Catatan

    Jika pengujian konektivitas sumber data MySQL gagal, lakukan operasi berikut:

    • Ikuti petunjuk alat diagnosis konektivitas.

    • Periksa apakah EIP dikonfigurasi untuk VPC yang terkait dengan kelompok sumber daya. Sumber data MySQL mengharuskan kelompok sumber daya memiliki akses jaringan publik. Untuk informasi lebih lanjut, lihat Aktifkan akses jaringan publik untuk kelompok sumber daya.

  4. Klik Complete Creation.

Bangun pipa sinkronisasi

Bangun pipa sinkronisasi untuk menyinkronkan data produk dan pesanan e-commerce ke tabel MaxCompute untuk pemrosesan data selanjutnya.

  1. Klik ikon icon di pojok kiri atas, lalu pilih All Products > Data Development and O&M > DataStudio untuk membuka halaman pengembangan data.

  2. Di bagian atas halaman, alihkan ke ruang kerja yang Anda buat untuk tutorial ini. Di panel navigasi kiri, klik image untuk membuka halaman Direktori Proyek Pengembangan Data.

  3. Di bagian Project Directory, klik image lalu pilih Create Workflow. Atur nama alur kerja. Dalam tutorial ini, nama diatur ke dw_quickstart.

  4. Di halaman orkestrasi alur kerja, seret Zero-Load Node dan node Data Integration dari sisi kiri ke kanvas untuk membuat node. Konfigurasikan node Data Integration sebagai berikut:

    • Data Source Type: MySQL.

    • Data Source Type: MaxCompute.

    Atur nama node. Tabel berikut mencantumkan contoh nama node dan tujuannya dalam tutorial ini:

    Jenis node

    Nama node

    Tujuan node

    image Virtual node

    workshop

    Digunakan untuk mengelola seluruh alur kerja. Ini membuat jalur aliran data lebih jelas. Node ini adalah Dry-run Task dan tidak memerlukan pengeditan kode.

    image Single-table batch synchronization node

    ods_item_info

    Digunakan untuk menyinkronkan tabel sumber informasi produk item_info dari MySQL ke tabel MaxCompute ods_item_info.

    image Single-table batch synchronization node

    ods_trade_order

    Digunakan untuk menyinkronkan tabel sumber informasi pesanan trade_order dari MySQL ke tabel MaxCompute ods_trade_order.

    Tarik garis secara manual untuk menghubungkan node dan atur node workshop sebagai node hulu dari dua node sinkronisasi batch tabel tunggal. Hasil akhirnya adalah sebagai berikut:

  5. Pengaturan penjadwalan alur kerja.

    Di sisi kanan halaman orkestrasi alur kerja, klik Scheduling Settings dan konfigurasikan parameter yang relevan. Berikut adalah parameter utama untuk tutorial ini. Pertahankan nilai default untuk parameter yang tidak dijelaskan.

    Parameter pengaturan penjadwalan

    Deskripsi

    Scheduling Parameter

    Atur parameter penjadwalan untuk seluruh alur kerja. Node internal dalam alur kerja dapat menggunakan parameter ini secara langsung.

    Dalam tutorial ini, atur parameter ini ke bizdate=$[yyyymmdd-1] untuk mendapatkan tanggal hari sebelumnya.

    Catatan

    DataWorks menyediakan parameter penjadwalan yang memungkinkan penerusan parameter dinamis dalam kode. Anda dapat mendefinisikan variabel dalam kode SQL dengan menggunakan format ${variable_name} dan memberikan nilai ke variabel tersebut di Scheduling Settings > Scheduling Parameter. Untuk informasi lebih lanjut tentang format yang didukung untuk parameter penjadwalan, lihat Konfigurasikan parameter penjadwalan.

    Scheduling Frequency

    Dalam tutorial ini, atur parameter ini ke Day.

    Data Timestamp

    Dalam tutorial ini, atur Data Timestamp ke 00:30. Alur kerja akan dimulai pada 00:30 setiap hari.

    Cross-cycle dependency

    Alur kerja tidak memiliki dependensi hulu. Anda dapat membiarkannya tidak diatur. Untuk manajemen yang lebih mudah, Anda dapat mengklik Add Root Node untuk melampirkan alur kerja ke node root ruang kerja.

    Node root ruang kerja diberi nama dalam format: workspace_name_root.

Konfigurasikan tugas sinkronisasi

Konfigurasikan node awal
  1. Di halaman orkestrasi alur kerja, arahkan kursor ke node workshop lalu klik Open Node.

  2. Di sisi kanan halaman pengeditan node workshop, klik Scheduling Settings dan konfigurasikan parameter yang relevan. Berikut adalah parameter utama untuk tutorial ini. Pertahankan nilai default untuk parameter yang tidak dijelaskan.

    Parameter pengaturan penjadwalan

    Deskripsi

    Scheduling Type

    Dalam tutorial ini, atur parameter ini ke Dry Run.

    Resource Group for Scheduling

    Dalam tutorial ini, pilih kelompok sumber daya arsitektur tanpa server yang dibuat di Buat kelompok sumber daya dan asosiasikan dengan ruang kerja.

    Node dependency configuration

    Karena workshop adalah node awal dan tidak memiliki dependensi hulu, Anda dapat mengklik Add Root Node untuk memicu alur kerja dari node root ruang kerja.

    Node root ruang kerja diberi nama: workspace_name_root.

  3. Di bilah alat node, klik Save untuk menyimpan node.

Konfigurasikan pipa sinkronisasi informasi produk (ods_item_info)
  1. Di halaman orkestrasi alur kerja, arahkan kursor ke node ods_item_info lalu klik Open Node.

  2. Konfigurasikan sumber data dan kelompok sumber daya.

    Parameter

    Deskripsi

    Source

    Sumber data: MySQL_Source.

    Destination

    Sumber data: Pilih sumber daya komputasi MaxCompute yang diasosiasikan selama Buat dan asosiasikan sumber daya komputasi MaxCompute. Dalam contoh ini, pilih MaxCompute_Source.

    Running Resources

    Pilih kelompok sumber daya arsitektur tanpa server yang dibeli selama Buat kelompok sumber daya dan asosiasikan dengan ruang kerja.

  3. Konfigurasikan solusi sinkronisasi.

    1. Configure Source and Destination

      Catatan

      Pertahankan nilai default untuk parameter yang tidak dijelaskan dalam tabel.

      Bagian konfigurasi

      Parameter

      Deskripsi konfigurasi

      Data Source

      Table

      item_info.

      Destination

      Table

      Klik Generate Destination Table Schema untuk membuat tabel MaxCompute dengan cepat. Tempel pernyataan DDL berikut ke bagian Table Creation Statement, lalu klik Create Table. Tabel ini digunakan untuk menerima informasi produk dari sumber.

      Pernyataan DDL

      CREATE TABLE IF NOT EXISTS ods_item_info(
        `id`                              BIGINT COMMENT '',
        `cate_id`                         BIGINT COMMENT '',
        `cate_name`                       STRING COMMENT '',
        `commodity_id`                    BIGINT COMMENT '',
        `commodity_name`                  STRING COMMENT '',
        `desc_path`                       STRING COMMENT '',
        `duration`                        BIGINT COMMENT '',
        `features`                        STRING COMMENT '',
        `gmt_create`                      DATETIME COMMENT '',
        `gmt_modified`                    DATETIME COMMENT '',
        `is_deleted`                      BIGINT COMMENT '',
        `is_virtual`                      STRING COMMENT '',
        `item_id`                         BIGINT COMMENT '',
        `item_status`                     BIGINT COMMENT '',
        `last_offline_time`               DATETIME COMMENT '',
        `last_online_quantity`            BIGINT COMMENT '',
        `last_online_time`                DATETIME COMMENT '',
        `pict_url`                        STRING COMMENT '',
        `reserve_price`                   DECIMAL(38,18) COMMENT '',
        `secure_trade_ems_post_fee`       DECIMAL(38,18) COMMENT '',
        `secure_trade_fast_post_fee`      DECIMAL(38,18) COMMENT '',
        `secure_trade_ordinary_post_fee`  DECIMAL(38,18) COMMENT '',
        `shop_id`                         BIGINT COMMENT '',
        `shop_nick`                       STRING COMMENT '',
        `sub_title`                       STRING COMMENT '',
        `title`                           STRING COMMENT ''
      )
      COMMENT ''
      PARTITIONED BY (pt STRING) 
      lifecycle 36500;

      Partition Information

      Dalam tutorial ini, masukkan ${bizdate}. Selama debugging, nilai konstan diberikan ke parameter bizdate untuk pengujian. Selama eksekusi terjadwal, nilai dinamis diberikan ke parameter bizdate. Untuk informasi lebih lanjut tentang format variabel dan metode konfigurasi yang didukung oleh Data Studio, lihat Konfigurasikan variabel.

    2. Verifikasi Destination Field Mapping dan Advanced Settings.

      DataWorks memetakan kolom sumber ke kolom tujuan untuk menulis data dari kolom sumber yang ditentukan ke kolom tujuan yang ditentukan. Anda juga dapat mengonfigurasi konkurensi tugas, kebijakan data kotor, dan pengaturan lainnya di bagian Advanced Settings di sisi kanan. Dalam tutorial ini, atur Policy for Dirty Data Records ke Disallow Dirty Data Records dan pertahankan default untuk pengaturan lainnya. Untuk informasi lebih lanjut, lihat Konfigurasikan tugas sinkronisasi batch tabel tunggal.

  4. Di bilah alat node, klik Save untuk menyimpan node.

Konfigurasikan pipa sinkronisasi data pesanan ( ods_trade_order)
  1. Di halaman orkestrasi alur kerja, arahkan kursor ke node ods_trade_order lalu klik Open Node.

  2. Konfigurasikan sumber data dan kelompok sumber daya.

    Parameter

    Deskripsi

    Source

    Sumber data: MySQL_Source.

    Destination

    Sumber data: Pilih sumber daya komputasi MaxCompute yang diasosiasikan selama Buat dan asosiasikan sumber daya komputasi MaxCompute. Dalam contoh ini, pilih MaxCompute_Source.

    Running Resources

    Pilih kelompok sumber daya arsitektur tanpa server yang dibeli selama Buat kelompok sumber daya dan asosiasikan dengan ruang kerja.

  3. Klik Next step lalu konfigurasikan tugas sinkronisasi.

    1. Configure Source and Destination

      Catatan

      Pertahankan nilai default untuk parameter yang tidak dijelaskan dalam tabel.

      Bagian konfigurasi

      Parameter

      Deskripsi konfigurasi

      Data Source

      Table

      trade_order

      Destination

      Table

      Klik Generate Destination Table Schema untuk membuat tabel MaxCompute dengan cepat. Tempel pernyataan DDL berikut ke bagian Table Creation Statement, lalu klik Create Table. Tabel ini digunakan untuk menerima informasi produk dari sumber.

      Pernyataan DDL

      CREATE TABLE IF NOT EXISTS ods_trade_order(
        `id`                BIGINT COMMENT '',
        `biz_type`          BIGINT COMMENT '',
        `buy_amount`        BIGINT COMMENT '',
        `buyer_id`          BIGINT COMMENT '',
        `buyer_memo`        STRING COMMENT '',
        `buyer_nick`        STRING COMMENT '',
        `end_time`          DATETIME COMMENT '',
        `gmt_create`        DATETIME COMMENT '',
        `gmt_modified`      DATETIME COMMENT '',
        `ip`                STRING COMMENT '',
        `is_parent`         BIGINT COMMENT '',
        `is_sub`            BIGINT COMMENT '',
        `item_id`           BIGINT COMMENT '',
        `item_price`        DECIMAL(38,18) COMMENT '',
        `logistics_status`  BIGINT COMMENT '',
        `memo`              STRING COMMENT '',
        `parent_order_id`   BIGINT COMMENT '',
        `pay_status`        BIGINT COMMENT '',
        `pay_time`          DATETIME COMMENT '',
        `seller_memo`       STRING COMMENT '',
        `shop_id`           BIGINT COMMENT '',
        `status`            BIGINT COMMENT '',
        `sub_order_id`      BIGINT COMMENT '',
        `total_fee`         DECIMAL(38,18) COMMENT ''
      )
      COMMENT ''
      PARTITIONED BY (pt STRING) 
      lifecycle 36500;

      Partition Information

      Dalam tutorial ini, masukkan ${bizdate}. Selama debugging, nilai konstan diberikan ke parameter bizdate untuk pengujian. Selama eksekusi terjadwal, nilai dinamis diberikan ke parameter bizdate. Untuk informasi lebih lanjut tentang format variabel dan metode konfigurasi yang didukung oleh Data Studio, lihat Konfigurasikan variabel.

    2. Verifikasi Destination Field Mapping dan Advanced Settings.

      DataWorks memetakan kolom sumber ke kolom tujuan untuk menulis data dari kolom sumber yang ditentukan ke kolom tujuan yang ditentukan. Anda juga dapat mengonfigurasi konkurensi tugas, kebijakan data kotor, dan pengaturan lainnya di bagian Advanced Settings di sisi kanan. Dalam tutorial ini, atur Policy for Dirty Data Records ke Disallow Dirty Data Records dan pertahankan default untuk pengaturan lainnya. Untuk informasi lebih lanjut, lihat Konfigurasikan tugas sinkronisasi batch tabel tunggal.

  4. Di bilah alat node, klik Save untuk menyimpan node.

Langkah 2: Pembersihan data

Setelah data disinkronkan dari MySQL ke MaxCompute, dua tabel tersedia: tabel informasi produk ods_item_info dan tabel informasi pesanan ods_trade_order. Gunakan Data Studio untuk membersihkan, memproses, dan menganalisis data ini untuk menghasilkan peringkat harian kategori produk terlaris.

Bangun pipa pemrosesan data

  1. Di panel navigasi kiri Data Studio, klik image untuk membuka halaman pengembangan data. Lalu, di bagian Project Directory, temukan alur kerja yang Anda buat, klik untuk membuka halaman orkestrasi alur kerja, lalu seret node SQL MaxCompute dari sisi kiri ke kanvas. Atur nama node.

    Tabel berikut mencantumkan contoh nama node dan tujuannya dalam tutorial ini:

    Jenis node

    Nama node

    Tujuan node

    image MaxCompute SQL

    dim_item_info

    Berdasarkan tabel ods_item_info, memproses data dimensi produk dan menghasilkan tabel dimensi informasi dasar produk dim_item_info.

    image MaxCompute SQL

    dwd_trade_order

    Berdasarkan tabel ods_trade_order, melakukan pembersihan data awal, transformasi, dan pemrosesan logika bisnis pada data transaksi pesanan terperinci dan menghasilkan tabel fakta detail pesanan dwd_trade_order.

    image MaxCompute SQL

    dws_daily_category_sales

    Berdasarkan tabel dwd_trade_order dan tabel dim_item_info, mengagregasi data terperinci yang telah dibersihkan dan distandarisasi dari lapisan DWD dan menghasilkan tabel agregat penjualan kategori produk harian dws_daily_category_sales.

    image MaxCompute SQL

    ads_top_selling_categories

    Berdasarkan tabel dws_daily_category_sales, menghasilkan tabel peringkat harian kategori produk terlaris ads_top_selling_categories.

  2. Tarik garis secara manual untuk menghubungkan node dan atur node hulu untuk setiap node. Hasil akhirnya adalah sebagai berikut:

    Catatan

    Dalam alur kerja, Anda dapat mengatur dependensi hulu dan hilir antar node dengan menggambar koneksi secara manual. Anda juga dapat menggunakan penguraian kode untuk secara otomatis mengidentifikasi dependensi node di node anak. Tutorial ini menggunakan koneksi manual. Untuk informasi lebih lanjut tentang penguraian kode, lihat Auto-parse dependencies.

Konfigurasikan node pemrosesan data

Konfigurasikan node dim_item_info

Berdasarkan tabel ods_item_info, node ini memproses data dimensi produk dan menghasilkan tabel dimensi informasi dasar produk dim_item_info.

  1. Di halaman orkestrasi alur kerja, arahkan kursor ke node dim_item_info lalu klik Open Node.

  2. Tempel kode berikut ke halaman pengeditan node.

    CREATE TABLE IF NOT EXISTS dim_item_info (
        gmt_modified                   STRING COMMENT 'Item last modified date',
        gmt_create                     STRING COMMENT 'Item creation time',
        item_id                        BIGINT COMMENT 'Item numeric ID',
        title                          STRING COMMENT 'Item title',
        sub_title                      STRING COMMENT 'Item subtitle',
        pict_url                       STRING COMMENT 'Main image URL',
        desc_path                      STRING COMMENT 'Item description path',
        item_status                    BIGINT COMMENT 'Item status: 1 - approved, 0 - not approved',
        last_online_time               DATETIME COMMENT 'Last listing time, item go-on-sale time',
        last_offline_time              DATETIME COMMENT 'Sale end time, indicates the end of a sales cycle, only applies to auction items',
        duration                       BIGINT COMMENT 'Validity period, sales cycle, only two values: 7 days or 14 days',
        reserve_price                  DOUBLE COMMENT 'Current price',
        secure_trade_ordinary_post_fee DOUBLE COMMENT 'Standard mail shipping fee',
        secure_trade_fast_post_fee     DOUBLE COMMENT 'Express shipping fee',
        secure_trade_ems_post_fee      DOUBLE COMMENT 'EMS shipping fee',
        last_online_quantity           BIGINT COMMENT 'Stock quantity at the last listing time',
        features                       STRING COMMENT 'Item features',
        cate_id                        BIGINT COMMENT 'Item leaf category ID',
        cate_name                      STRING COMMENT 'Item leaf category name',
        commodity_id                   BIGINT COMMENT 'Commodity ID',
        commodity_name                 STRING COMMENT 'Commodity name',
        is_virtual                     STRING COMMENT 'Whether it is a virtual item',
        shop_id                        BIGINT COMMENT 'Shop ID',
        shop_nick                      STRING COMMENT 'Shop nick',
        is_deleted                     BIGINT COMMENT 'Whether the category is deleted'
    )
    COMMENT 'Item basic information dimension table'
    PARTITIONED BY (pt STRING COMMENT 'Business date, yyyymmdd')
    LIFECYCLE 365;
    -- Insert data into dim_item_info table
    INSERT OVERWRITE TABLE dim_item_info PARTITION(pt='${bizdate}')
    SELECT
        gmt_create,
        gmt_modified,
        item_id,
        title,
        sub_title,
        pict_url,
        desc_path,
        item_status,
        last_online_time,
        last_offline_time,
        duration,
        cast(reserve_price as DOUBLE),
        cast(secure_trade_ordinary_post_fee as DOUBLE),
        cast(secure_trade_fast_post_fee as DOUBLE),
        cast(secure_trade_ems_post_fee as DOUBLE),
        last_online_quantity,
        features,
        cate_id,
        cate_name,
        commodity_id,
        commodity_name,
        is_virtual,
        shop_id,
        shop_nick,
        is_deleted
    FROM ods_item_info
    WHERE pt = '${bizdate}';
  3. Konfigurasikan parameter debug.

    Di sisi kanan halaman pengeditan node SQL MaxCompute, klik Run Configuration:

  4. Di bilah alat node, klik Save untuk menyimpan node.

Konfigurasikan node dwd_trade_order

Berdasarkan tabel ods_trade_order, node ini melakukan pembersihan data awal, transformasi, dan pemrosesan logika bisnis pada data transaksi pesanan terperinci dan menghasilkan tabel fakta detail pesanan dwd_trade_order.

  1. Di halaman orkestrasi alur kerja, arahkan kursor ke node dwd_trade_order lalu klik Open Node.

  2. Tempel kode berikut ke halaman pengeditan node.

    CREATE TABLE IF NOT EXISTS dwd_trade_order (
        id               BIGINT COMMENT 'Primary key, latest ID after deduplication',
        gmt_create       DATETIME COMMENT 'Creation time',
        gmt_modified     DATETIME COMMENT 'Modification time',
        sub_order_id     BIGINT COMMENT 'Sub-order ID',
        parent_order_id  BIGINT COMMENT 'Parent order ID',
        buyer_id         BIGINT COMMENT 'Buyer numeric ID',
        buyer_nick       STRING COMMENT 'Buyer nickname, null values handled',
        item_id          BIGINT COMMENT 'Item numeric ID',
        item_price       DECIMAL(38,18) COMMENT 'Item price, in cents',
        buy_amount       BIGINT COMMENT 'Purchase quantity',
        biz_type         BIGINT COMMENT 'Transaction type',
        memo             STRING COMMENT 'Memo, null values handled',
        pay_status       BIGINT COMMENT 'Payment status',
        logistics_status BIGINT COMMENT 'Logistics status',
        status           BIGINT COMMENT 'Status',
        seller_memo      STRING COMMENT 'Seller memo for the transaction',
        buyer_memo       STRING COMMENT 'Buyer memo for the transaction',
        clean_ip         STRING COMMENT 'Cleaned buyer IP, invalid formats filtered',
        end_time         DATETIME COMMENT 'Transaction end time',
        pay_time         DATETIME COMMENT 'Payment time',
        is_sub           BIGINT COMMENT 'Whether it is a sub-order, 1 indicates sub-order',
        is_parent        BIGINT COMMENT 'Whether it is a parent order, 1 indicates parent order',
        shop_id          BIGINT COMMENT 'Shop ID',
        total_fee        DECIMAL(38,18) COMMENT 'Sub-order fee after discounts and adjustments',
        is_large_order_flag BOOLEAN COMMENT 'Large order flag'
    )
    COMMENT 'Trade order detail fact table with preliminary cleansing and business logic processing'
    PARTITIONED BY (pt STRING COMMENT 'Business date, yyyymmdd')
    LIFECYCLE 365; -- Data lifecycle set to 365 days
    INSERT OVERWRITE TABLE dwd_trade_order PARTITION(pt='${bizdate}')
    SELECT
        MAX(id) AS id, -- Use the latest ID as the deduplication criterion
        gmt_create,
        gmt_modified,
        sub_order_id,
        parent_order_id,
        buyer_id,
        COALESCE(buyer_nick, '') AS buyer_nick, -- Handle null buyer_nick
        item_id,
        item_price,
        buy_amount,
        biz_type,
        COALESCE(memo, '') AS memo, -- Handle null memo
        pay_status,
        logistics_status,
        status,
        seller_memo,
        buyer_memo,
        CASE 
            WHEN ip LIKE '__.__.__.__' THEN NULL -- Filter invalid IP formats
            ELSE ip 
        END AS clean_ip,
        end_time,
        pay_time,
        is_sub,
        is_parent,
        shop_id,
        total_fee,
        CASE 
            WHEN total_fee >= 10000 THEN TRUE -- Orders over 10000 cents are considered large orders
            ELSE FALSE 
        END AS is_large_order_flag -- Add business logic flag
    FROM (
        SELECT
            *,
            ROW_NUMBER() OVER(PARTITION BY buyer_id, item_id, gmt_create ORDER BY id DESC) AS rn -- Row number for deduplication
        FROM ods_trade_order
        WHERE pt = '${bizdate}'
    ) AS sub_query
    WHERE rn = 1 -- Keep only the first record in each deduplication group
    GROUP BY 
        gmt_create,
        gmt_modified,
        sub_order_id,
        parent_order_id,
        buyer_id,
        buyer_nick,
        item_id,
        item_price,
        buy_amount,
        biz_type,
        memo,
        pay_status,
        logistics_status,
        status,
        seller_memo,
        buyer_memo,
        clean_ip,
        end_time,
        pay_time,
        is_sub,
        is_parent,
        shop_id,
        total_fee,
        is_large_order_flag;
  3. Konfigurasikan parameter debug.

    Di sisi kanan halaman pengeditan node SQL MaxCompute, klik Run Configuration:

  4. Di bilah alat node, klik Save untuk menyimpan node.

Konfigurasikan node dws_daily_category_sales

Berdasarkan tabel dwd_trade_order dan tabel dim_item_info, node ini mengagregasi data terperinci yang telah dibersihkan dan distandarisasi dari lapisan DWD dan menghasilkan tabel agregat penjualan kategori produk harian dws_daily_category_sales.

  1. Di halaman orkestrasi alur kerja, arahkan kursor ke node dws_daily_category_sales lalu klik Open Node.

  2. Tempel kode berikut ke halaman pengeditan node.

    CREATE TABLE IF NOT EXISTS dws_daily_category_sales (
        cate_id             BIGINT COMMENT 'Item leaf category ID',
        cate_name           STRING COMMENT 'Item leaf category name',
        total_sales_amount  DECIMAL(38,18) COMMENT 'Total sales amount by item category, in cents',
        order_count         BIGINT COMMENT 'Order count'
    )
    COMMENT 'Daily item category sales summary table'
    PARTITIONED BY (pt STRING COMMENT 'Business date, yyyymmdd')
    LIFECYCLE 365;
    INSERT OVERWRITE TABLE dws_daily_category_sales PARTITION(pt='${bizdate}')
    SELECT
        i.cate_id,
        i.cate_name,
        SUM(t.total_fee) AS total_sales_amount,
        COUNT(DISTINCT t.id) AS order_count
    FROM dwd_trade_order t
    JOIN dim_item_info i ON t.item_id = i.item_id AND t.pt = i.pt
    WHERE t.pt = '${bizdate}'
    GROUP BY t.pt, i.cate_id, i.cate_name;
  3. Konfigurasikan parameter debug.

    Di sisi kanan halaman pengeditan node SQL MaxCompute, klik Run Configuration:

  4. Di bilah alat node, klik Save untuk menyimpan node.

Konfigurasikan node ads_top_selling_categories

Berdasarkan tabel dws_daily_category_sales, node ini menghasilkan tabel peringkat harian kategori produk terlaris ads_top_selling_categories.

  1. Di halaman orkestrasi alur kerja, arahkan kursor ke node ads_top_selling_categories lalu klik Open Node.

  2. Tempel kode berikut ke halaman pengeditan node.

    CREATE TABLE IF NOT EXISTS ads_top_selling_categories (
        rank                BIGINT COMMENT 'Sales rank',
        cate_id             BIGINT COMMENT 'Item leaf category ID',
        cate_name           STRING COMMENT 'Item leaf category name',
        total_sales_amount  DECIMAL(38,18) COMMENT 'Total sales amount by item category, in cents',
        order_count         BIGINT COMMENT 'Order count'
    )
    COMMENT 'Daily top-selling item category ranking table'
    PARTITIONED BY (pt STRING COMMENT 'Business date, yyyymmdd');
    INSERT OVERWRITE TABLE ads_top_selling_categories PARTITION(pt='${bizdate}')
    SELECT
        rank,
        cate_id,
        cate_name,
        total_sales_amount,
        order_count
    FROM (
        SELECT
            DENSE_RANK() OVER(ORDER BY total_sales_amount DESC) AS rank,
            cate_id,
            cate_name,
            total_sales_amount,
            order_count
        FROM (
            SELECT
                cate_id,
                cate_name,
                SUM(total_sales_amount) AS total_sales_amount,
                SUM(order_count) AS order_count
            FROM dws_daily_category_sales
            WHERE pt = '${bizdate}'
            GROUP BY cate_id, cate_name
        ) agg_sub
    ) agg_outer
    WHERE rank <= 10;
  3. Konfigurasikan parameter debug.

    Di sisi kanan halaman pengeditan node SQL MaxCompute, klik Run Configuration:

  4. Di bilah alat node, klik Save untuk menyimpan node.

Langkah 3: Debug dan jalankan

Jalankan seluruh alur kerja untuk memverifikasi bahwa konfigurasi sudah benar sebelum menerapkannya ke lingkungan produksi.

  1. Di panel navigasi kiri Data Studio, klik image untuk membuka halaman pengembangan data. Lalu, di bagian Project Directory, temukan alur kerja yang Anda buat.

  2. Di bilah alat node, klik Run. Di Fill in the operation parameters, masukkan tanggal hari sebelumnya (misalnya, 20250416).

    Catatan

    Konfigurasi node alur kerja menggunakan parameter penjadwalan yang disediakan oleh DataWorks untuk penerusan parameter dinamis dalam kode. Selama debugging, Anda perlu memberikan nilai konstan ke parameter untuk pengujian.

  3. Klik Determine untuk membuka halaman debug dan jalankan.

  4. Tunggu hingga proses selesai. Hasil yang diharapkan adalah sebagai berikut:

    image

Langkah 4: Kueri dan visualisasi data

Hasil yang telah diproses sekarang berada di tabel ads_top_selling_categories. Kueri tabel ini untuk melihat hasil analisis.

  1. Klik ikon image di pojok kiri atas. Di halaman pop-up, klik All Products > DataAnalysis > SQL Query.

  2. Setelah My Files, klik image > Create File. Tentukan File Name kustom lalu klik Determine.

  3. Di halaman kueri SQL, masukkan pernyataan SQL berikut.

    SELECT * FROM ads_top_selling_categories WHERE pt=${bizdate};
  4. Di pojok kanan atas, pilih sumber data MaxCompute lalu klik Determine.

  5. Klik tombol Run di bagian atas. Di halaman Estimate Costs, klik Run.

  6. Di hasil kueri, klik image untuk melihat hasil grafik visual. Anda dapat mengklik image di pojok kanan atas grafik untuk menyesuaikan gaya grafik.

    Hasil grafik visual ditampilkan di bagian Copilot dalam format grafik (seperti grafik donat) yang menunjukkan distribusi jumlah pesanan, jumlah penjualan, dan metrik lainnya berdasarkan kategori.

  7. Anda juga dapat mengklik Save di pojok kanan atas grafik untuk menyimpan grafik sebagai kartu. Lalu, di panel navigasi kiri, klik Card (image) untuk melihatnya.

Langkah 5: Penjadwalan periodik

Untuk mendapatkan data penjualan terbaru setiap hari, terapkan alur kerja ke lingkungan produksi agar berjalan secara periodik sesuai jadwal.

Catatan

Saat mengonfigurasi sinkronisasi data dan pemrosesan data, Anda telah mengonfigurasi parameter terkait penjadwalan untuk alur kerja, node sinkronisasi, dan node pemrosesan data. Tidak diperlukan konfigurasi tambahan. Anda hanya perlu menerapkan alur kerja ke lingkungan produksi. Untuk informasi lebih lanjut tentang pengaturan penjadwalan, lihat Konfigurasikan pengaturan penjadwalan.

  1. Klik ikon image di pojok kiri atas. Di halaman pop-up, klik All Products > Data Development and O&M > DataStudio.

  2. Di panel navigasi kiri Data Studio, klik image untuk membuka halaman pengembangan data. Alihkan ke ruang kerja yang digunakan dalam tutorial ini. Lalu, di bagian Project Directory, temukan alur kerja yang Anda buat.

  3. Di bilah alat node, klik Publish. Di panel deploy, klik Start Release Production. Setelah Deploy Package Build dan Production Checker selesai, klik Create Deploy Task.

  4. Setelah status Deploy to Production berubah menjadi Completed, klik Go to Operation Center untuk membuka Operation Center.

  5. Di Auto Triggered Task O&M > Auto Triggered Task, Anda dapat melihat tugas terjadwal untuk alur kerja (alur kerja dalam tutorial ini diberi nama dw_quickstart).

  6. Untuk melihat detail tugas terjadwal untuk node anak dalam alur kerja, klik kanan tugas terjadwal alur kerja lalu pilih View Internal Tasks.

    Hasil yang diharapkan adalah sebagai berikut:

    image

Langkah selanjutnya

Lampiran: Pelepasan dan pembersihan resource

Untuk melepaskan resource yang dibuat dalam tutorial ini, lakukan langkah-langkah berikut:

  1. Hentikan tugas terjadwal.

    1. Masuk ke Konsol DataWorks. Di wilayah target, klik Data Development and O&M > Operation Center di panel navigasi kiri. Pilih ruang kerja dari daftar tarik-turun lalu klik Go to Operation Center.

    2. Di Auto Triggered Task O&M > Auto Triggered Task, pilih semua tugas terjadwal yang Anda buat sebelumnya (node root ruang kerja tidak perlu diundeploy), lalu klik Operation > Undeploy di bagian bawah.

  2. Hapus node pengembangan data dan putuskan asosiasi sumber daya komputasi MaxCompute.

    1. Buka halaman Ruang Kerja di konsol DataWorks. Di bilah navigasi atas, pilih wilayah yang diinginkan. Temukan ruang kerja yang diinginkan lalu pilih Shortcuts > Data Studio di kolom Actions.

    2. Di panel navigasi kiri Data Studio, klik image untuk membuka halaman pengembangan data. Lalu, di bagian Project Directory, temukan alur kerja yang Anda buat, klik kanan lalu klik Delete.

    3. Di panel navigasi kiri, klik image > Computing Resource Management. Temukan sumber daya komputasi MaxCompute yang diasosiasikan lalu klik Disassociate. Di dialog konfirmasi, pilih opsi dan ikuti petunjuk untuk menyelesaikan pemutusan asosiasi.

  3. Hapus sumber data MySQL.

    1. Masuk ke Konsol DataWorks. Di wilayah target, klik More > Management Center di panel navigasi kiri. Pilih ruang kerja dari daftar tarik-turun lalu klik Go to Management Center.

    2. Di panel navigasi kiri, klik Data Sources untuk membuka halaman Data Sources. Temukan sumber data MySQL yang Anda buat lalu klik Delete di kolom Operation. Ikuti petunjuk untuk menyelesaikan penghapusan.

  4. Hapus proyek MaxCompute.

    Buka halaman manajemen proyek MaxCompute. Temukan proyek MaxCompute yang Anda buat lalu klik Delete di kolom Operation. Ikuti petunjuk untuk menyelesaikan penghapusan.

  5. Hapus Internet NAT Gateway dan lepaskan EIP.

    1. Buka Konsol VPC - Internet NAT Gateway, lalu alihkan ke wilayah China (Shanghai) di bilah menu atas.

    2. Temukan Internet NAT Gateway yang Anda buat lalu klik image > Delete di kolom Operation. Di dialog konfirmasi, pilih Forcibly Delete, lalu klik Determine.

    3. Di panel navigasi kiri, klik Public Access > Elastic IP Address. Temukan EIP yang Anda buat lalu klik image > Instance Management > Release di kolom Operation. Di dialog konfirmasi, klik Determine.