All Products
Search
Document Center

DataWorks:Node Function Compute

Last Updated:Feb 26, 2026

DataWorks menyediakan node Function Compute yang memungkinkan Anda menjalankan kode kustom sesuai kebutuhan bisnis. Node ini mendukung penjadwalan berkala sehingga menyederhanakan eksekusi tugas terjadwal, serta dapat digabungkan dengan jenis node DataWorks lainnya untuk membangun alur pemrosesan data yang lengkap. Topik ini menjelaskan cara membuat dan menggunakan node Function Compute.

Prasyarat

  • Function Compute telah diaktifkan.

    Anda harus mengaktifkan Function Compute sebelum dapat menggunakan node Function Compute di DataWorks. Setelah diaktifkan, pelajari fitur-fiturnya agar proses pengembangan berjalan lancar. Untuk informasi selengkapnya, lihat Aktifkan Function Compute dan Apa itu Function Compute?.

  • Layanan telah dibuat untuk memanggil fungsi tersebut.

    Layanan merupakan unit sumber daya dasar dalam Function Compute. Pada tingkat layanan, Anda dapat memberikan izin, mengonfigurasi log, dan membuat fungsi. Anda harus membuat layanan terlebih dahulu sebelum mengembangkan fungsi. Untuk informasi selengkapnya tentang cara membuat layanan, lihat Buat layanan.

  • Fungsi telah dibuat.

    Fungsi adalah unit dasar untuk penjadwalan dan eksekusi kode. Anda menulis kode berdasarkan antarmuka fungsi yang disediakan oleh Function Compute, lalu menerapkan kode tersebut sebagai fungsi. Untuk informasi selengkapnya tentang cara membuat fungsi, lihat Buat fungsi.

Informasi latar belakang

Function Compute adalah layanan komputasi yang sepenuhnya dikelola dan berbasis event-driven. Dengan Function Compute, Anda tidak perlu mengelola infrastruktur seperti server. Cukup tulis dan unggah kode atau gambar untuk mengelola layanan dan fungsi Anda. Function Compute mendukung dua jenis fungsi berikut:

  • Fungsi event: Digunakan dalam model event-driven di mana terjadinya suatu event akan memicu fungsi terkait.

  • Fungsi HTTP: Digunakan untuk skenario seperti membangun aplikasi web secara cepat.

Anda dapat mengonfigurasi layanan dan fungsi untuk dijalankan dalam node Function Compute, lalu menerbitkan node tersebut ke lingkungan produksi agar layanan dan fungsi tersebut dijalankan secara berkala.

Batasan

  • Batasan fitur

    DataWorks hanya mendukung pemanggilan event functions. DataWorks tidak mendukung pemanggilan HTTP functions. Oleh karena itu, jika Anda ingin menjadwalkan fungsi secara berkala di DataWorks, Anda harus membuat event function yang menangani permintaan event. Untuk informasi selengkapnya tentang jenis fungsi, lihat Jenis fungsi.

  • Ketersediaan wilayah

    Node Function Compute tersedia di ruang kerja pada wilayah-wilayah berikut: Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Beijing), Tiongkok (Shenzhen), Tiongkok (Chengdu), Tiongkok (Hong Kong), Singapura, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Jerman (Frankfurt), Inggris (London), AS (Silicon Valley), dan AS (Virginia).

Catatan penggunaan

  • Saat menggunakan node Function Compute, Anda harus memanggil event function dari layanan yang telah dibuat. Jika daftar layanan yang telah dibuat tidak muncul saat Anda memilih layanan, kemungkinan disebabkan oleh salah satu alasan berikut:

    • Akun Anda memiliki pembayaran tertunda. Tambahkan dana ke akun Anda, refresh halaman konfigurasi node, lalu coba lagi.

    • Pengguna saat ini tidak memiliki izin untuk mengambil daftar layanan. Hubungi Pemilik Akun Alibaba Cloud Anda untuk memberikan izin fc:ListServices atau kebijakan AliyunFCFullAccess ke akun Anda. Setelah izin diberikan, refresh halaman konfigurasi node dan coba lagi. Untuk informasi selengkapnya tentang cara memberikan izin, lihat Berikan izin kepada RAM user.

  • Jika suatu fungsi berjalan lebih dari 1 jam dalam node Function Compute DataWorks, Anda harus mengatur metode pemanggilan ke pemanggilan asinkron. Untuk informasi selengkapnya tentang pemanggilan asinkron di Function Compute, lihat Pemanggilan asinkron.

  • Jika RAM user mengembangkan node Function Compute, Anda harus memberikan izin kepada pengguna tersebut menggunakan kebijakan sistem atau kebijakan kustom berikut.

    Jenis kebijakan

    Deskripsi kebijakan

    Kebijakan sistem

    Saat menggunakan kebijakan sistem, berikan kebijakan izin berikut kepada pengguna: AliyunFCFullAccess, AliyunFCReadOnlyAccess, dan AliyunFCInvocationAccess.

    Kebijakan Kustom

    Izin umum yang diberikan melalui kebijakan kustom Function Compute adalah sebagai berikut:

    • fc:GetAsyncTask

    • fc:StopAsyncTask

    • fc:GetService

    • fc:ListServices

    • fc:GetFunction

    • fc:InvokeFunction

    • fc:ListFunctions

    • fc:GetFunctionAsyncInvokeConfig

    • fc:ListServiceVersions

    • fc:ListAliases

    • fc:GetAlias

    • fc:ListFunctionAsyncInvokeConfigs

    • fc:GetStatefulAsyncInvocation

    • fc:StopStatefulAsyncInvocation

    Catatan

    Untuk informasi selengkapnya tentang kebijakan izin Function Compute, lihat dokumen berikut:

Langkah 1: Buka halaman pembuatan node

  1. Masuk ke Konsol DataWorks. Di bilah navigasi atas, pilih wilayah yang diinginkan. Di panel navigasi kiri, pilih Data Development and O&M > Data Development. Pada halaman yang muncul, pilih ruang kerja yang diinginkan dari daftar drop-down, lalu klik Go to Data Development.

  2. Buka halaman pembuatan node.

    Di halaman DataStudio, Anda dapat membuat node Function Compute dengan salah satu metode berikut.函数计算节点创建入口

Langkah 2: Buat dan konfigurasikan node Function Compute

  1. Buat node Function Compute.

    Setelah membuka halaman pembuatan node, ikuti petunjuk di layar untuk mengonfigurasi informasi dasar node baru, seperti path dan nama. Lalu, buat node tersebut.

  2. Konfigurasikan parameter untuk node Function Compute.

    Di halaman pengeditan node, pilih fungsi yang akan dipanggil untuk tugas tersebut. Kemudian, konfigurasikan metode pemanggilan dan detail variabel sesuai kebutuhan bisnis Anda.配置节点参数

    Parameter

    Deskripsi

    Select Function

    Pilih fungsi yang akan dipanggil untuk tugas ini. Jika tidak ada fungsi yang tersedia, buatlah terlebih dahulu. Untuk informasi selengkapnya, lihat Buat fungsi.

    Catatan

    DataWorks hanya mendukung pemanggilan event functions. DataWorks tidak mendukung pemanggilan HTTP functions. Oleh karena itu, jika Anda ingin menjadwalkan fungsi secara berkala di DataWorks, Anda harus membuat event function yang menangani permintaan event. Untuk informasi selengkapnya tentang jenis fungsi, lihat Jenis fungsi.

    Dalam contoh ini, fungsi para_service_01_by_time_triggers dipilih. Saat fungsi ini dibuat, kode contoh untuk Time-triggered Function yang disediakan platform digunakan. Logika kodenya adalah sebagai berikut.

    import json
    import logging
    
    logger = logging.getLogger()
    
    def handler(event, context):
        logger.info('event: %s', event)
    
        # Parse the JSON
        evt = json.loads(event)
        triggerName = evt["triggerName"]
        triggerTime = evt["triggerTime"]
        payload = evt["payload"]
    
        logger.info('triggerName: %s', triggerName)
        logger.info("triggerTime: %s", triggerTime)
        logger.info("payload: %s", payload)
    
        return 'Timer Payload: ' + payload

    Untuk contoh kode fungsi lainnya, lihat Contoh kode.

    Select Version or Alias

    Pilih versi layanan atau alias yang akan digunakan saat memanggil fungsi. Versi default adalah LATEST.

    • Versi layanan

      Function Compute menyediakan fitur pengendalian versi pada tingkat layanan. Fitur ini memungkinkan Anda menerbitkan satu atau beberapa versi layanan. Saat Anda menerbitkan versi, Function Compute membuat Snapshot dari layanan tersebut. Snapshot mencakup konfigurasi layanan, kode fungsi, dan konfigurasi fungsi, tetapi tidak termasuk pemicu (trigger). Function Compute secara otomatis menetapkan nomor versi pada Snapshot tersebut untuk penggunaan di masa depan. Untuk informasi selengkapnya tentang cara menerbitkan versi, lihat Terbitkan versi.

    • Alias versi

      Function Compute memungkinkan Anda membuat alias untuk versi layanan. Alias mengarah ke versi tertentu. Anda dapat menggunakan alias untuk dengan mudah menerapkan fitur seperti penerbitan, rollback, dan rilis canary. Alias tidak dapat eksis tanpa layanan atau versi. Saat Anda menggunakan alias untuk mengakses layanan atau fungsi, Function Compute akan menyelesaikan alias tersebut ke versi yang dituju. Pemanggil tidak perlu mengetahui versi spesifik yang dituju oleh alias tersebut. Untuk informasi selengkapnya tentang cara membuat alias, lihat Buat alias.

    Invocation Method

    Fungsi dapat dipanggil dengan cara berikut:

    • Pemanggilan sinkron: Event langsung memicu fungsi. Function Compute menjalankan fungsi dan menunggu respons. Setelah fungsi dipanggil, Function Compute langsung mengembalikan hasil eksekusi.

    • Pemanggilan asinkron: Function Compute menyimpan permintaan event secara persisten dan segera mengembalikan respons, tanpa menunggu permintaan dieksekusi.

      • Jika fungsi memerlukan waktu lama untuk dijalankan, mengonsumsi banyak sumber daya, atau memiliki logika yang rentan error, Anda dapat menggunakan pemanggilan asinkron untuk meningkatkan kecepatan respons program dan menangani lonjakan traffic secara lebih andal.

      • Untuk tugas Function Compute yang berjalan lebih dari 1 jam, gunakan pemanggilan asinkron.

    Variables

    Tetapkan nilai variabel dalam fungsi sesuai aplikasi Anda. Variabel ini sesuai dengan konten di bagian Test Function > Configure Test Event pada tab halaman detail fungsi tujuan di Konsol Function Compute.

    Dalam contoh ini, parameter berikut diteruskan ke variabel fungsi para_service_01_by_time_triggers. Dalam parameter tersebut, variabel bernama bizdate didefinisikan dalam format ${}. Variabel ini harus diberi nilai di Langkah 4.

    {
        "payload": "payload1",
        "triggerTime": "${bizdate}",
        "triggerName": "triggerName1"
    }
  3. Opsional: Uji node Function Compute.

    Setelah mengonfigurasi node Function Compute, klik ikon 运行. Anda kemudian dapat menentukan kelompok sumber daya untuk tugas tersebut dan memberikan nilai konstan pada variabel kode untuk menguji logika node. Format parameternya adalah key=value. Untuk memasukkan beberapa parameter, pisahkan dengan koma (,).

    Catatan

    Untuk informasi selengkapnya tentang cara menguji tugas, lihat Uji tugas.

  4. Konfigurasikan properti penjadwalan berkala node.

    DataWorks menyediakan parameter penjadwalan yang memungkinkan Anda meneruskan parameter secara dinamis dalam skenario penjadwalan. Setelah menentukan variabel fungsi di halaman pengeditan node, buka tab Scheduling Configuration untuk memberikan nilai pada variabel tersebut. Contoh ini menetapkan variabel bizdate ke hari sebelumnya. Artinya, saat node dijalankan, data yang diproses berasal dari hari sebelumnya. Untuk informasi selengkapnya tentang cara mengonfigurasi parameter penjadwalan, lihat Konfigurasi parameter penjadwalan.配置节点周期性调度 Untuk informasi selengkapnya tentang properti penjadwalan node, lihat Ikhtisar properti penjadwalan tugas.

Langkah 3: Commit dan terbitkan node

Node Function Compute harus di-commit dan diterbitkan ke lingkungan produksi sebelum dapat dijadwalkan dan dijalankan secara otomatis.

  1. Simpan dan commit node.

    Klik ikon 保存 dan 提交 di Bilah alat untuk menyimpan dan meng-commit node. Saat meng-commit node, masukkan deskripsi perubahan sesuai permintaan. Anda juga dapat memilih apakah akan melakukan tinjauan kode dan pengujian asap.

    Catatan
    • Anda harus mengatur Rerun Property dan Upstream Dependencies untuk node tersebut dalam konfigurasi penjadwalan sebelum dapat meng-commit node.

    • Jika Anda mengaktifkan tinjauan kode, kode node yang diajukan oleh developer harus disetujui oleh reviewer sebelum dapat diterbitkan. Untuk informasi selengkapnya, lihat Tinjauan kode.

    • Untuk memastikan tugas node terjadwal berjalan sesuai harapan, kami menyarankan Anda melakukan pengujian asap pada tugas tersebut sebelum menerbitkannya. Untuk informasi selengkapnya, lihat Pengujian asap.

  2. Opsional: Terbitkan node.

    Jika Anda menggunakan ruang kerja dalam mode standar, klik Publish di pojok kanan atas untuk menerbitkan node setelah di-commit. Untuk informasi selengkapnya, lihat Ruang kerja dalam mode standar dan Terbitkan tugas.

Langkah selanjutnya