Ikhtisar
MaxFrame adalah framework komputasi terdistribusi dari Alibaba Cloud MaxCompute yang menyediakan antarmuka pemrograman Python. Framework ini mengatasi dua tantangan utama dalam pemrosesan data Python tradisional: hambatan kinerja dan perpindahan data yang tidak efisien. Dengan MaxFrame, Anda dapat memproses dan menganalisis data berskala petabyte secara langsung di MaxCompute untuk eksplorasi data visual, komputasi ilmiah, pembelajaran mesin, dan pengembangan AI.
Kasus penggunaan
Eksplorasi data interaktif
Jelajahi, manipulasi, dan visualisasikan set data berukuran besar secara real-time tanpa batasan memori, sebagaimana Anda lakukan di Jupyter Notebook lokal.
Pra-pemrosesan data skala besar (ETL)
Gantikan logika SQL+UDF yang kompleks dengan kode Python yang ekspresif dan mudah dipelihara untuk pembersihan data multi-terabyte, konversi format, dan rekayasa fitur—dengan kinerja eksekusi terdistribusi.
AI dan pembelajaran mesin
MaxFrame menyatukan pemrosesan data dan pelatihan model. Siapkan data pelatihan secara efisien dan gunakan fitur image untuk mengimpor library seperti Scikit-learn dan XGBoost guna mendukung alur kerja AI end-to-end.
Catatan penggunaan
Wilayah yang didukung
China (Hangzhou), China (Shanghai), China (Beijing), China (Shenzhen), China (Hong Kong), Jepang (Tokyo), Singapura, Indonesia (Jakarta), Jerman (Frankfurt), AS (Silicon Valley), dan AS (Virginia).
Lingkungan yang didukung
-
Lingkungan pengembangan Python lokal.
-
MaxCompute Notebook.
-
DataWorks Notebook.
-
Node tugas PyODPS 3 Pengembangan Data DataWorks.
Penagihan
MaxFrame menagih berdasarkan penggunaan sumber daya komputasi per pekerjaan. Layanan ini mendukung penagihan dan subscription.
-
Subscription: Pekerjaan menggunakan kuota kelompok sumber daya yang telah dibeli tanpa biaya tambahan.
Keunggulan utama
MaxFrame menawarkan keunggulan utama dibandingkan alat Python lainnya untuk MaxCompute:
-
API kompatibel dengan Pandas: Migrasikan kode Pandas yang sudah ada ke MaxCompute dengan perubahan minimal, sehingga mengurangi biaya pembelajaran dan migrasi.
-
Eksekusi terdistribusi di sisi server: Pekerjaan dijalankan di dalam kluster MaxCompute tanpa menarik data ke mesin lokal Anda, menghilangkan hambatan memori klien dan memungkinkan pemrosesan skala petabyte.
-
Sumber daya komputasi elastis: Dibangun di atas arsitektur serverless MaxCompute, MaxFrame mengalokasikan sumber daya sesuai permintaan. Proses data dalam skala apa pun tanpa perlu mengelola kluster.
-
Lingkungan pengembangan yang disederhanakan: Lingkungan bawaan Python 3.7 dan Python 3.11 dengan library pra-instal seperti Pandas dan XGBoost. Tambahkan dependensi pihak ketiga melalui anotasi sederhana—tanpa perlu pengemasan manual atau unggah UDF.
Tabel berikut membandingkan MaxFrame dengan alat pengembangan Python lainnya:
|
Item Perbandingan |
MaxFrame |
PyODPS |
Mars |
SQL+UDF |
|
API Pengembangan |
Kompatibel dengan Pandas. |
Sintaksis dan API sangat berbeda dari Pandas DataFrame. |
Memerlukan penggunaan dua set API: SQL dan Python. |
|
|
Pemrosesan data |
Data tetap di server saat waktu proses—tidak perlu transfer lokal, sehingga meningkatkan efisiensi eksekusi. |
Metode |
Eksekusi terdistribusi hanya untuk beberapa operator. Memerlukan pembuatan kluster selama inisialisasi; lambat dengan stabilitas rendah. |
Pekerjaan terdistribusi melalui MaxCompute SQL. |
|
Sumber daya komputasi |
Tidak dibatasi oleh sumber daya lokal, sehingga mengatasi hambatan Python single-machine. |
Dibatasi oleh sumber daya lokal. |
Dibatasi oleh ukuran sumber daya. Worker, CPU, dan memori harus ditentukan. |
Komputasi elastis untuk pekerjaan SQL melalui serverless MaxCompute. |
|
Pengalaman pengembangan |
Pengembangan interaktif dan penjadwalan offline siap pakai. Library umum sudah tersedia. Kelola dependensi melalui anotasi—tanpa pengemasan manual. |
Pengembangan interaktif dan penjadwalan offline siap pakai. |
Memerlukan penyiapan lingkungan runtime dan peluncuran kluster Mars. |
Dependensi UDF Python harus dikemas dan diunggah secara manual. |
Cara kerja
MaxFrame menyembunyikan kompleksitas komputasi terdistribusi. Alur kerjanya adalah:
-
Pengiriman kode: Tulis dan jalankan kode Python di klien seperti Notebook. SDK MaxFrame menangkap dan mengirimkan kode tersebut ke MaxCompute.
-
Penguraian dan optimasi: Mesin eksekusi MaxCompute mengurai sintaksis, mengoptimalkan logika, dan mengubah pekerjaan menjadi rencana fisik paralel.
-
Eksekusi terdistribusi: Tugas yang telah dioptimalkan didistribusikan ke node komputasi di kluster MaxCompute, yang membaca data dan melakukan komputasi secara paralel.
-
Pengembalian hasil: Hasil diagregasi dan dikembalikan ke klien Anda.