DataStudio memungkinkan Anda mengelola resource dalam proyek MaxCompute. Anda dapat membuat resource dari file lokal atau file Object Storage Service (OSS) dan mendaftarkannya sebagai fungsi untuk digunakan dalam node pengembangan data. Topik ini menjelaskan cara membuat berbagai jenis resource dan fungsi MaxCompute di Resource Management.
Prasyarat
Anda telah menyambungkan resource komputasi MaxCompute.
Anda telah mengembangkan file resource. File tersebut dapat diunggah dari mesin lokal atau diambil dari Object Storage Service (OSS). Jika Anda membuat resource dengan mengunggah file dari OSS, pastikan kondisi berikut terpenuhi.
Anda telah mengaktifkan OSS, membuat bucket, dan menyimpan file resource yang ingin diunggah ke dalam bucket tersebut. Untuk informasi selengkapnya, lihat Buat bucket dan Simple upload.
CatatanUntuk informasi lebih lanjut tentang file resource yang didukung, lihat Deskripsi resource.
Akun Alibaba Cloud yang Anda gunakan untuk mengunggah file harus memiliki izin untuk mengakses bucket target. Untuk mencegah masalah izin, berikan izin kepada akun terkait sebelum mengunggah file.
Buka Resource Management
Buka halaman Workspaces di Konsol DataWorks. Di bilah navigasi atas, pilih wilayah yang diinginkan. Temukan ruang kerja yang diinginkan dan pilih di kolom Actions.
Di panel navigasi kiri, klik ikon Resource Management
untuk membuka halaman Resource Management.Di halaman Resource Management, klik ikon
untuk membuat resource atau fungsi baru. Atau, Anda dapat terlebih dahulu mengklik New Folder untuk mengorganisasi resource Anda. Kemudian, klik kanan folder target, pilih New, lalu pilih jenis resource atau fungsi yang akan dibuat.
Buat dan kelola resource
Deskripsi resource
Resource merupakan dasar untuk mengimplementasikan fitur user-defined function (UDF) atau MapReduce di MaxCompute. Di DataStudio, Anda dapat menggunakan antarmuka visual untuk mengunggah resource yang disimpan di mesin lokal atau di OSS. Resource ini dapat dibaca dan digunakan selama eksekusi UDF dan MapReduce. Jenis resource MaxCompute berikut ini didukung.
Mengunggah resource ke MaxCompute menggunakan DataWorks dikenai biaya penyimpanan MaxCompute.
Jenis Sumber Daya | Deskripsi |
Python | Menyimpan kode Python yang digunakan untuk mendaftarkan UDF Python. Ekstensi nama file adalah |
JAR | Paket JAR Java yang telah dikompilasi digunakan untuk menjalankan program Java. Ekstensi nama file adalah |
Archive | Hanya file terkompresi seperti |
File | Saat Anda membuat resource bertipe |
Batasan
Perhatikan batasan berikut saat mengunggah resource:
Ukuran sumber daya:
Edit online: Resource Python maksimal 10 MB. Resource File maksimal 500 KB.
Unggah dari mesin lokal: Anda dapat mengunggah resource hingga 500 MB.
Unggah dari OSS: Anda dapat mengunggah resource hingga 500 MB.
Penerbitan resource: Jika Anda menggunakan ruang kerja mode standar, Anda harus menerbitkan resource ke lingkungan produksi agar berlaku.
CatatanInformasi sumber data mungkin berbeda antara lingkungan pengembangan dan produksi. Sebelum melakukan kueri tabel atau resource di suatu lingkungan, pastikan informasi sumber data untuk lingkungan tersebut.
Manajemen resource: Di DataWorks, Anda hanya dapat melihat dan mengelola resource yang diunggah melalui antarmuka DataWorks.
Buat sumber daya
Resource MaxCompute dapat diunggah dari mesin lokal atau dari OSS. Anda dapat langsung mereferensikan resource yang telah dibuat dalam pengembangan data atau membuat fungsi darinya.
Di halaman Resource Management, pada kotak dialog Create Resource and Function yang muncul, konfigurasikan Type, Path, dan Name resource.
Unggah file lokal atau file OSS sebagai sumber. Tabel berikut menjelaskan parameter utama untuk mengunggah resource.
Item konfigurasi
Deskripsi konfigurasi
File Source
Sumber file objek. Sumber yang didukung adalah Local dan OSS.
File Content
Jika Anda memilih Local, di Upload File, klik Click To Upload untuk mengunggah file lokal.
Jika Anda memilih OSS, pilih file OSS yang sesuai dari daftar drop-down Select File.
Data Source
Pilih sumber data tempat resource MaxCompute yang diunggah berasal.
Di bilah alat atas, klik Save lalu Publish resource tersebut. Hanya resource yang telah diterbitkan yang dapat digunakan dalam Data Development.
Gunakan resource
Setelah membuat resource, Anda dapat mereferensikannya dalam node pengembangan data. Untuk melakukannya, klik Resource Management di panel navigasi kiri, temukan resource target, klik kanan, lalu pilih Reference Resource. Setelah resource berhasil direferensikan, kode dalam format ##@resource_reference{"Nama Resource"} akan ditambahkan ke node Anda.
Sebagai contoh, node PyODPS 3 menampilkan kode sebagai ##@resource_reference{"example.py"}. Format tampilan bervariasi tergantung jenis node.
Atau, Anda dapat membuat fungsi dari resource tersebut lalu menggunakannya dalam node developer.
Kelola resource
Di DataWorks, Anda hanya dapat melihat dan mengelola resource yang diunggah melalui antarmuka visual. Di halaman Resource Management, klik resource untuk melakukan operasi manajemen.
Lihat versi historis: Lihat dan bandingkan versi resource yang telah diterbitkan untuk melihat perubahan di antara versi tersebut.
CatatanUntuk membandingkan versi, Anda harus memilih minimal dua versi.
Hapus resource: Operasi ini menghapus resource dari lingkungan pengembangan. Untuk menghapus resource dari lingkungan produksi, Anda harus menerbitkan perubahan ini. Setelah tugas penerbitan berhasil, resource juga akan dihapus dari lingkungan produksi. Untuk informasi selengkapnya, lihat Publish a task.
Lihat resource lainnya.
MaxCompute mungkin berisi resource yang diunggah menggunakan metode selain DataWorks. Anda dapat melihat resource tersebut dengan cara berikut.
Gunakan data catalog untuk melihat semua resource dalam proyek MaxCompute.
Setelah Anda menambahkan proyek MaxCompute ke data catalog, Anda dapat membuka folder MaxCompute yang sesuai di data catalog dan melihat semua resource dalam proyek saat ini di direktori resource.
Gunakan node MaxCompute SQL untuk melihat resource lain dalam proyek MaxCompute.
Lihat semua resource dalam proyek saat ini. Saat Anda membuat skrip MaxCompute SQL di Data Development dan mengeksekusi perintah ini, sistem akan mengakses resource komputasi MaxCompute yang telah disambungkan ke lingkungan pengembangan secara default.
list resources;Lihat semua resource dalam proyek tertentu.
use MaxCompute_project_name; list resources;
Untuk informasi lebih lanjut tentang operasi perintah, lihat Resource operations.
Buat dan kelola fungsi
Sebelum membuat fungsi, pastikan Anda telah membuat resource.
Untuk menyiapkan file resource MaxCompute, lihat UDF Development (Java) dan UDF Development (Python 3).
Deskripsi fungsi
Di DataStudio, Anda dapat mendaftarkan resource sebagai fungsi di Resource and Function Management. Dalam Data Development atau kueri SQL, Anda juga dapat membuat fungsi dari resource yang telah diunggah dan diterbitkan, membuat fungsi embedded menggunakan JAVA, PYTHON2, atau PYTHON3, atau langsung menggunakan fungsi bawaan MaxCompute.
Buat fungsi
Di halaman Resource Management, pada kotak dialog New Resource and Function yang muncul, konfigurasikan Type, Path, dan Name fungsi.
Buat resource fungsi dan konfigurasikan informasinya.
Sebelum mengonfigurasi fungsi MaxCompute, pastikan Anda telah mendaftarkan proyek MaxCompute sebagai resource komputasi di DataWorks dan telah mengunggah resource MaxCompute. Tabel berikut menjelaskan parameter utama untuk fungsi MaxCompute.
Parameter
Deskripsi
Function Type
Pilih jenis fungsi. Nilai yang valid: MATH (fungsi operasi matematika), AGGREGATE (fungsi agregat), STRING (fungsi pemrosesan string), DATE (fungsi tanggal), ANALYTIC (fungsi jendela), dan OTHER (fungsi lain).
Class Name
Nama kelas UDF, dalam format
nama_resource.nama_kelas. Nama resource dapat berupa nama paket Java atau nama resource Python.Saat Anda membuat user-defined function di DataWorks, Anda dapat menggunakan resource MaxCompute bertipe JAR dan Python. Konfigurasi nama kelas berbeda untuk jenis resource yang berbeda:
Saat tipe resource adalah JAR, Class Name harus dalam format
packageName.ActualClassName. Anda dapat memperoleh nilai ini dariIntelliJ IDEAmenggunakan pernyataanCopy Reference.Sebagai contoh, jika
com.aliyun.odps.examples.udfadalah nama paket Java danUDAFExampleadalah nama kelas aktual, parameter Class Name diatur menjadicom.aliyun.odps.examples.udf.UDAFExample.Ketika tipe sumber daya adalah Python, format untuk Class Name adalah
PythonResourceName.ActualClassName.Sebagai contoh, jika nama resource Python adalah
LcLognormDist_shdan nama kelas aktual adalahLcLognormDist_sh, parameter Class Name diatur menjadiLcLognormDist_sh.LcLognormDist_sh.
CatatanJangan tambahkan akhiran
.jaratau.pysaat memasukkan nama resource.Resource harus diajukan dan diterbitkan sebelum dapat digunakan.
Type
Pilih Resource Function atau Embedded Function:
Jika Anda memilih Resource Function, Anda hanya perlu mengonfigurasi Resource List.
Saat Anda memilih embedded function, selain memilih Resources, Anda juga perlu mengonfigurasi Language (
JAVA,PYTHON2, atauPYTHON3) dan Code.
Resource List
Pilih resource yang akan digunakan untuk mendaftarkan fungsi.
Mode visualisasi: Anda hanya dapat memilih resource yang telah diunggah atau ditambahkan ke DataWorks.
Mode skrip: Anda dapat memasukkan semua resource dalam sumber data yang sesuai. Jika UDF memanggil beberapa resource, pisahkan dengan koma (,).
CatatanAnda tidak perlu memasukkan path resource yang telah ditambahkan.
Untuk resource yang tidak didukung DataWorks untuk diunggah melalui fitur visualisasi, seperti resource tabel, atau resource yang telah diunggah ke MaxCompute melalui metode lain dan tidak dikelola oleh visualisasi DataWorks, Anda dapat memasukkannya secara manual dalam mode skrip.
Command Format
Contoh cara menggunakan UDF ini.
Di bilah alat atas, klik Save lalu Publish fungsi tersebut. Hanya fungsi yang telah diterbitkan yang dapat digunakan dalam Data Development.
Gunakan fungsi
Gunakan user-defined function
Setelah fungsi dibuat dan diterbitkan, Anda dapat langsung mereferensikannya dalam pengembangan data atau kueri SQL.
Saat mengedit node pengembangan data, klik Resource Management di panel navigasi kiri. Kemudian, temukan resource atau fungsi target, klik kanan, lalu pilih Reference Function.
Setelah fungsi berhasil direferensikan, nama user-defined function akan otomatis dimasukkan ke halaman edit node, misalnya
example_function().Saat mengedit kueri SQL, Anda dapat langsung menggunakan fungsi yang telah dibuat.
SELECT example_function(column_name) FROM table;Gunakan fungsi bawaan
DataWorks mendukung dua jenis fungsi: user-defined function dan fungsi bawaan MaxCompute. Anda dapat melihat fungsi bawaan berdasarkan jenis atau melihatnya secara alfabetis.
Catatan: Untuk informasi tentang catatan penggunaan fungsi bawaan, lihat Notes.
Batasan: Untuk informasi tentang batasan fungsi bawaan, lihat Limits of JSON functions dan Limits of string functions.
Anda dapat melihat fungsi bawaan dengan salah satu dari tiga cara berikut:
Gunakan perintah berikut dalam node MaxCompute SQL untuk melihat fungsi bawaan.
show builtin functions [<function_name>]; --<function_name> adalah nama fungsi bawaan tertentu.Catatan<function_name>adalah placeholder. Ganti dengan nama fungsi bawaan.Jika Anda menggunakan klien MaxCompute (odpscmd) untuk menjalankan perintah
show builtin functions;, versi odpscmd harus 0.43.0 atau lebih baru.
Untuk kasus penggunaan khas fungsi bawaan, lihat:
Untuk memecahkan masalah yang Anda temui saat menggunakan fungsi bawaan, lihat:
Kelola fungsi
Di halaman Resource Management, klik fungsi untuk melakukan operasi manajemen.
Lihat versi historis: Klik tombol Version di sisi kanan halaman edit fungsi. Anda dapat melihat dan membandingkan versi fungsi yang tersimpan atau diterbitkan untuk melihat perubahan di antara versi tersebut.
CatatanUntuk membandingkan versi, Anda harus memilih minimal dua versi.
Hapus fungsi: Klik kanan fungsi target lalu pilih Delete.
Untuk menghapus fungsi dari lingkungan produksi, Anda harus menerbitkan perubahan ini. Setelah tugas penerbitan berhasil, fungsi juga akan dihapus dari lingkungan produksi. Untuk informasi selengkapnya, lihat Publish a task.
Lihat daftar user-defined function
// Lihat fungsi dalam proyek resource komputasi MaxCompute yang disambungkan ke ruang kerja DataWorks saat ini.
SHOW FUNCTIONS;Lihat detail user-defined function
Gunakan perintah
DESCRIBEatau singkatannyaDESC, diikuti nama fungsi, untuk melihat detail user-defined function.// Gunakan bentuk singkat untuk melihat detail user-defined function DESC FUNCTION <function_name>;Di DataWorks, jika logika pemrosesan yang dibutuhkan dalam alur kerja bisnis Anda tidak dapat diimplementasikan oleh fungsi yang ada, Anda dapat menulis user-defined function MaxCompute. Anda kemudian dapat mengunggah dan mengaitkan resource yang sesuai, seperti paket JAR dan file Python, untuk memperluas kemampuan pemrosesan data Anda.
FAQ
T: Setelah saya mengunggah resource melalui DataWorks dan mendefinisikannya sebagai user-defined function (UDF), apakah saya dapat menggunakannya dalam kueri SQL DataAnalysis dan node ODPS SQL di Data Development?
J: Ya, bisa. UDF yang didaftarkan melalui DataWorks disimpan dalam proyek MaxCompute. Oleh karena itu, Anda dapat menggunakannya baik di node MaxCompute SQL maupun di SQL Query (Legacy) DataAnalysis.