Topik ini menjelaskan cara menggunakan node Function Compute di DataWorks untuk memanggil layanan Function Compute dan secara berkala menambahkan watermark ke file PDF tambahan di Object Storage Service (OSS).
Informasi latar belakang
DataWorks memungkinkan Anda menggunakan node Function Compute untuk memanggil layanan Function Compute. Anda dapat melakukan konfigurasi kustom untuk berbagai fitur dalam layanan Function Compute, lalu menggunakan node Function Compute di DataWorks untuk memanggil layanan tersebut.
Prasyarat
DataWorks telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan DataWorks.
Function Compute telah diaktifkan. Untuk informasi lebih lanjut, lihat Buat Fungsi dengan Cepat.
OSS telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan OSS. Bucket telah dibuat, dan file PDF yang ingin ditambahkan watermark telah diunggah ke bucket. Dalam contoh ini, direktori bernama 2023-08-15 dibuat di bucket
bucket-test222, dan file bernama example.pdf diunggah ke direktori tersebut.
Batasan
Batasan pada Fitur
DataWorks hanya memungkinkan Anda memanggil Fungsi Event. Jika Anda ingin menjadwalkan pemrosesan event secara berkala di DataWorks, Anda harus membuat fungsi event daripada fungsi HTTP untuk memproses permintaan event di Function Compute. Untuk informasi lebih lanjut tentang jenis fungsi lainnya, lihat Pemilihan Jenis Fungsi.
Batasan pada Wilayah
Anda hanya dapat menggunakan fitur yang disediakan oleh node Function Compute di workspace yang berada di wilayah berikut: China (Hangzhou), China (Shanghai), China (Beijing), , China (Shenzhen), China (Chengdu), China (Hong Kong), Singapura, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Jerman (Frankfurt), Inggris (London), AS (Silicon Valley), dan AS (Virginia).
Langkah 1: Buat aplikasi Function Compute
Masuk ke Konsol Function Compute. Di panel navigasi sebelah kiri, klik Applications.
Di halaman Aplikasi, klik Create Application. Di halaman Buat Aplikasi, pilih Use a Template to Create an Application. Di kotak pencarian, masukkan start-pdf-watermark dan klik ikon pencarian. Gerakkan pointer ke template aplikasi start-pdf-watermark yang muncul setelah pencarian dan klik Create Now.
CatatanAnda dapat mengunjungi GitHub untuk melihat kode sumber dari template aplikasi start-pdf-watermark. Logika implementasi aplikasi adalah menambahkan watermark tertentu ke file PDF di OSS dan menulis kembali file PDF dengan watermark ke jalur OSS yang sama.
Di halaman Create Application, konfigurasikan parameter.
Parameter
Deskripsi
Deployment Type
Atur nilainya menjadi Directly Deploy.
Application Name
Sistem secara otomatis menghasilkan nama yang memenuhi persyaratan terkait. Anda dapat mengubah nama sesuai dengan kebutuhan bisnis Anda.
Role Name
AliyunFCServerlessDevsRole dipilih secara default. Anda dapat mengubah kebijakan yang dilampirkan ke peran sesuai dengan kebutuhan bisnis Anda.
Ketika Anda menyebarkan aplikasi di Pusat Aplikasi Serverless, pastikan bahwa Function Compute diberi izin yang diperlukan. Misalnya, beberapa izin diperlukan ketika Anda menyebarkan sumber daya layanan dan fungsi tertentu serta mengakses layanan Alibaba Cloud lainnya, seperti Virtual Private Cloud (VPC), File Storage NAS (NAS), dan Simple Log Service. Pertama-tama, Anda harus mengasosiasikan peran RAM dengan aplikasi atau lingkungan dan menetapkan Function Compute sebagai layanan tepercaya. Kemudian, Pusat Aplikasi dapat memanggil operasi AssumeRole untuk mendapatkan Token Layanan Keamanan (STS) dan mengambil alih peran RAM untuk mengakses layanan Alibaba Cloud.
Untuk menyederhanakan otorisasi, Serverless Application Center menyediakan peran default AliyunFCServerlessDevsRole. Peran ini memiliki izin pada beberapa sumber daya Alibaba Cloud yang diakses oleh Service Application Center. Anda dapat masuk ke Konsol Resource Access Management (RAM) untuk melihat izin dari peran AliyunFCServerlessDevsRole.
Region
Wilayah tempat Anda ingin membuat aplikasi. Setelah Anda memilih wilayah, hanya bucket OSS di wilayah yang dipilih yang tersedia untuk parameter OSS bucket name.
Function name
Sistem secara otomatis menghasilkan nama yang memenuhi persyaratan terkait. Anda dapat mengubah nama sesuai dengan kebutuhan bisnis Anda.
Time Zone
Zona waktu tempat wilayah yang dipilih berada dipilih secara default. Anda dapat mengubah nilainya sesuai dengan kebutuhan bisnis Anda.
OSS bucket name
Nama bucket OSS yang ingin Anda gunakan. Hanya bucket OSS yang berada di wilayah yang ditentukan oleh parameter Wilayah yang tersedia.
RAM's ARN
AliyunFCDefaultRole dipilih secara default. Anda dapat mengubah nilainya sesuai dengan kebutuhan bisnis Anda.
Untuk menyederhanakan operasi otorisasi, Function Compute menyediakan peran layanan default bernama AliyunFCDefaultRole. Peran ini memiliki izin pada sumber daya Alibaba Cloud tertentu yang Function Compute perlu akses. Untuk informasi tentang cara membuat peran layanan default AliyunFcDefaultRole dan menetapkan peran, lihat bagian Langkah 1: Aktifkan Function Compute di topik "Buat fungsi dengan cepat".
CatatanJika sistem memberi tahu bahwa aplikasi memerlukan izin tambahan saat Anda membuat aplikasi, Anda dapat mengklik Authorize untuk mendapatkan izin yang diperlukan.
Klik Create and Deploy Default Environment. Jika Deployed ditampilkan di sebelah Status Penyebaran di sisi kanan halaman detail yang muncul, aplikasi telah dibuat dan disebar.

Di halaman Aplikasi, temukan aplikasi yang dibuat dan klik nama aplikasi. Tab Detail Lingkungan akan muncul.

Di bagian Resource Information dari tab Environment Details, klik nilai dari Function untuk pergi ke halaman detail fungsi.

Di halaman detail fungsi, klik tab Test Function. Di tab Uji Fungsi, perluas Konfigurasi Acara Tes dan konfigurasikan parameter berikut.

Event name: Masukkan nama untuk acara tes di bidang Nama Acara.
Event content: Masukkan kode dalam format JSON di editor kode. Dalam contoh ini, kode berikut dimasukkan.
PentingJika Anda langsung menyalin kode berikut, Anda harus menghapus garis miring ke depan (
/) dan komentar setelah garis miring ke depan (/). Jika tidak, kode tersebut mungkin gagal dalam verifikasi format JSON.// Kode berikut memberikan contoh cara menambahkan watermark DataWorks ke file PDF bernama example.pdf di jalur 2023-08-15/. Font watermark adalah Helvetica, dan ukuran font adalah 30. Untuk informasi tentang parameter dalam kode, lihat komentar parameter. { "pdf_file": "2023-08-15/example.pdf", // Jalur file PDF di bucket OSS. "mark_text": "DataWorks", // Teks watermark. Jika Anda ingin menambahkan watermark ke file PDF, parameter ini diperlukan. "pagesize": [595.275590551181, 841.8897637795275], // Opsional. Nilai default adalah ukuran kertas A4 (21 cm, 29.7 cm). 1 cm setara dengan 28.346456692913385 poin. "font": "Helvetica", // Opsional. Font watermark. Nilai default adalah Helvetica. Jika Anda ingin menambahkan watermark dalam bahasa Cina ke file PDF, Anda dapat mengatur parameter ini ke zenhei atau microhei. "font_size": 20, // Opsional. Ukuran font watermark. Nilai default adalah 30. "font_color": [0, 0, 0], // Warna font watermark, dalam format RGB. Warna default adalah hitam. "rotate": 30, // Opsional. Sudut rotasi watermark. Nilai default adalah 0. "opacity": 0.1, // Opsional. Transparansi watermark. Nilai default adalah 0.1. Nilai 1 menunjukkan bahwa watermark tidak transparan. "density": [198.4251968503937, 283.46456692913387] // Kepadatan watermark. Nilai default adalah [141.73228346456693, 141.73228346456693], yang menunjukkan interval 7 cm pada sumbu X dan interval 10 cm pada sumbu Y antara teks watermark. }
Klik Test Function. Jika kode berhasil dijalankan, Anda dapat melihat file PDF yang telah ditambahkan watermark di jalur OSS yang ditentukan. Dalam contoh ini, file
example-out.pdfdihasilkan.
Anda dapat melihat file PDF sumber dan file PDF yang dihasilkan di OSS.

Langkah 2: Buat dan konfigurasikan node Function Compute di konsol DataWorks
Masuk ke Konsol DataWorks.
Di bilah navigasi atas, pilih wilayah yang Anda tentukan di Langkah 1: Buat Aplikasi Function Compute.
Di panel navigasi sebelah kiri, pilih Data Development and O&M > Data Development. Di halaman Pengembangan Data, pilih workspace yang diinginkan dari daftar drop-down dan klik Pergi ke Pengembangan Data.
Di panel Scheduled Workflow halaman DataStudio, temukan alur kerja yang diinginkan, klik namanya, klik kanan General, dan pilih Buat Node > Function Compute. Di kotak dialog Buat Node, konfigurasikan parameter Nama dan klik Confirm. Node Function Compute dibuat.
Di tab konfigurasi node Function Compute, konfigurasikan parameter.

Parameter
Deskripsi
Select Function
Pilih nama fungsi yang Anda tentukan di Sublangkah 3 di Langkah 1. Untuk informasi tentang cara membuat fungsi, lihat Kelola fungsi.
CatatanDataWorks hanya memungkinkan Anda memanggil fungsi event. Jika Anda ingin menjadwalkan pemrosesan event secara berkala di DataWorks, Anda harus membuat fungsi event daripada fungsi HTTP untuk memproses permintaan event di Function Compute. Untuk informasi lebih lanjut tentang jenis fungsi lainnya, lihat Pemilihan jenis fungsi.
Select Version Or Alias
Pilih versi atau alias layanan yang ingin Anda gunakan untuk pemanggilan fungsi selanjutnya. Jika Anda memilih Versi Default, parameter Versi akan ditampilkan, dan nilai parameter Versi tetap sebagai LATEST. Dalam contoh ini, Default Version dipilih.
Versi layanan
Function Compute menyediakan fitur penomoran versi tingkat layanan, yang memungkinkan Anda merilis satu atau lebih versi untuk layanan. Versi mirip dengan snapshot layanan yang berisi informasi seperti pengaturan layanan, dan kode serta pengaturan fungsi yang termasuk dalam layanan. Versi tidak berisi informasi pemicu. Saat Anda merilis versi, sistem menghasilkan snapshot untuk layanan dan menetapkan nomor versi yang terkait dengan snapshot untuk digunakan di masa mendatang. Untuk informasi lebih lanjut tentang cara merilis versi, lihat Kelola versi.
Alias versi
Function Compute memungkinkan Anda membuat alias untuk versi layanan. Alias menunjuk ke versi tertentu dari layanan. Anda dapat menggunakan alias untuk dengan mudah melakukan rilis versi, rollback, atau rilis canary. Alias bergantung pada layanan atau versi. Saat Anda menggunakan alias untuk mengakses layanan atau fungsi, Function Compute mengurai alias menjadi versi yang ditunjuk oleh alias. Dengan cara ini, pemanggil tidak perlu mengetahui versi spesifik yang ditunjuk oleh alias. Untuk informasi tentang cara membuat alias, lihat Kelola alias.
Invocation Method
Dalam contoh ini, Synchronous Invocation dipilih. Untuk informasi lebih lanjut tentang metode pemanggilan, lihat Pemanggilan Sinkron dan topik-topik dalam direktori Pemanggilan Asinkron.
Pemanggilan Sinkron: Saat Anda memanggil fungsi secara sinkron, sebuah event langsung memicu fungsi tersebut, dan Function Compute mengeksekusi fungsi serta menunggu respons. Setelah fungsi dipanggil, Function Compute mengembalikan hasil eksekusi fungsi.
Pemanggilan Asinkron: Saat Anda memanggil fungsi secara asinkron, Function Compute segera mengembalikan respons setelah permintaan disimpan, bukan hanya setelah eksekusi permintaan selesai.
Jika fungsi Anda memiliki logika yang memakan waktu, sumber daya, atau rentan terhadap kesalahan, Anda dapat menggunakan metode ini untuk memungkinkan program Anda merespons lonjakan lalu lintas dengan cara yang efisien dan andal.
Kami merekomendasikan Anda menggunakan metode ini untuk tugas Function Compute yang durasi berjalannya melebihi satu jam.
Variable
Parameter yang ditetapkan sebagai nilai variabel yang digunakan dalam kode untuk memanggil fungsi. Dalam contoh ini, konten JSON yang Anda konfigurasikan di Sublangkah 7 di Langkah 1 dimodifikasi dan digunakan untuk menambahkan watermark ke file PDF tambahan di OSS setiap hari.
// Kode berikut memberikan contoh cara menambahkan watermark ke file PDF bernama example.pdf di jalur yang dalam format ${current_date}/. { "pdf_file": "${current_date}/example.pdf", // Jalur file PDF di bucket OSS. "mark_text": "DataWorks", // Teks watermark. Jika Anda ingin menambahkan watermark ke file PDF, parameter ini diperlukan. "pagesize": [595.275590551181, 841.8897637795275], // Opsional. Nilai default adalah ukuran kertas A4 (21 cm, 29.7 cm). 1 cm setara dengan 28.346456692913385 poin. "font": "Helvetica", // Opsional. Font watermark. Nilai default adalah Helvetica. Jika Anda ingin menambahkan watermark dalam bahasa Cina ke file PDF, Anda dapat mengatur parameter ini ke zenhei atau microhei. "font_size": 20, // Opsional. Ukuran font watermark. Nilai default adalah 30. "font_color": [0, 0, 0], // Warna font watermark, dalam format RGB. Warna default adalah hitam. "rotate": 30, // Opsional. Sudut rotasi watermark. Nilai default adalah 0. "opacity": 0.1, // Opsional. Transparansi watermark. Nilai default adalah 0.1. Nilai 1 menunjukkan bahwa watermark tidak transparan. "density": [198.4251968503937, 283.46456692913387] // Kepadatan watermark. Nilai default adalah [141.73228346456693, 141.73228346456693], yang menunjukkan interval 7 cm pada sumbu X dan interval 10 cm pada sumbu Y antara teks watermark. }CatatanNilai dari
pdf_filedalam format${current_date}/example.pdf.${current_date}menunjukkan bahwa variabel bernamacurrent_datedigunakan.Saat DataWorks menjalankan tugas pada node Function Compute, DataWorks mengganti
${current_date}dengan nilai aktual. Anda dapat mengonfigurasi variabel saat mengonfigurasi parameter penjadwalan untuk node Function Compute. Misalnya, jika DataWorks menjalankan tugas pada node Function Compute pada 15 Agustus 2023, nilai daripdf_fileadalah2023-08-15/example.pdf. Jika DataWorks menjalankan tugas pada node Function Compute pada 16 Agustus 2023, nilai daripdf_fileadalah2023-08-16/example.pdf.DataWorks dapat menjalankan tugas pada node Function Compute untuk menambahkan watermark ke file PDF tambahan setiap hari hanya jika sistem bisnis menghasilkan file PDF tambahan di jalur OSS tertentu setiap hari berdasarkan aturan waktu tertentu sebelum waktu penjadwalan node Function Compute.
Untuk contoh ini, Anda harus mengunggah file PDF ke jalur dalam format
/${current_date}/di OSS sebelum DataWorks mulai menjalankan tugas pada node Function Compute. Misalnya, Anda dapat mengunggah file PDF bernama example.pdf ke jalur2023-08-15/.
Opsional. Debug dan jalankan tugas pada node Function Compute. Setelah konfigurasi selesai, klik ikon
di bilah alat atas tab konfigurasi node Function Compute. Di kotak dialog Parameter Runtime, pilih grup sumber daya yang ingin Anda gunakan untuk menjalankan tugas pada node Function Compute, tetapkan konstanta ke variabel yang Anda gunakan sebagai nilai, lalu klik Konfirmasi untuk menguji apakah logika kode node Function Compute benar. Sebagai contoh, jika Anda menetapkan 2023-08-15 ke variabel ${current_date}sebagai nilainya, DataWorks menjalankan tugas pada node Function Compute untuk menambahkan watermark ke file example.pdf yang disimpan di jalur2023-08-15/.Konfigurasikan properti penjadwalan untuk node Function Compute untuk menjadwalkan dan menjalankan tugas pada node secara berkala. DataWorks menyediakan parameter penjadwalan, yang digunakan untuk menerapkan pengoperan parameter dinamis dalam kode node di skenario penjadwalan. Anda dapat mengklik Properties di panel navigasi sebelah kanan tab konfigurasi node Function Compute. Di bagian Scheduling Parameter tab Properti, Anda dapat mengonfigurasi parameter penjadwalan untuk node Function Compute. Dalam contoh ini, parameter penjadwalan
current_dateditambahkan, dan$[yyyy-mm-dd]ditetapkan ke parameter penjadwalan sebagai nilainya. yyyy-mm-dd menunjukkan tahun, bulan, dan hari ketika tugas dijalankan pada node Function Compute. Untuk informasi lebih lanjut tentang konfigurasi parameter penjadwalan, lihat Format yang Didukung untuk Parameter Penjadwalan. Untuk informasi lebih lanjut tentang properti penjadwalan, lihat Ikhtisar.
3. Komit dan sebarkan node Function Compute
Node Function Compute hanya dapat dijadwalkan secara otomatis setelah dikomit dan disebar ke lingkungan produksi.
Simpan dan komit node Function Compute.
Klik ikon
dan
di bilah alat atas tab konfigurasi node Function Compute untuk menyimpan dan mengkomit node Function Compute. Saat Anda mengkomit node, masukkan deskripsi perubahan sesuai petunjuk dan tentukan apakah akan melakukan tinjauan kode dan pengujian asap.CatatanAnda hanya dapat mengkomit node setelah mengonfigurasi parameter Rerun dan Parent Nodes di tab Properti.
Jika fitur tinjauan kode diaktifkan, node hanya dapat disebar setelah kode node disetujui oleh peninjau yang ditentukan. Untuk informasi lebih lanjut, lihat Tinjauan Kode.
Untuk memastikan bahwa node yang Anda buat dapat dijalankan sesuai harapan, kami sarankan Anda melakukan pengujian asap sebelum menyebarkan node. Untuk informasi lebih lanjut, lihat Lakukan Pengujian Asap.
Opsional. Sebarkan node Function Compute.
Jika workspace yang Anda gunakan berada dalam mode standar, Anda harus mengklik Deploy di pojok kanan atas untuk menyebarkan node setelah Anda mengkomitnya. Untuk informasi lebih lanjut, lihat Perbedaan antara Workspace dalam Mode Dasar dan Workspace dalam Mode Standar dan Sebarkan Node.
Apa yang Harus Dilakukan Selanjutnya
Setelah Anda mengkomit dan menyebarkan node Function Compute ke Pusat Operasi di lingkungan produksi, Anda dapat melakukan operasi O&M pada node di Pusat Operasi. Untuk informasi lebih lanjut, lihat Lakukan Operasi O&M Dasar pada Node yang Dipicu Otomatis.
Setelah Anda mempelajari langkah-langkah dasar membuat dan menggunakan node Function Compute, Anda dapat mengikuti praktik terbaik untuk mendapatkan pengetahuan mendalam tentang node Function Compute. Untuk informasi lebih lanjut, lihat Tambahkan Watermark ke File PDF secara Dinamis dengan Menggunakan Node Function Compute di DataWorks.