Pengenalan fungsi
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 langsung memproses dan menganalisis data besar berskala petabyte di MaxCompute, serta melakukan eksplorasi dan analitik data visual, komputasi ilmiah, pembelajaran mesin, dan pengembangan AI—memenuhi permintaan yang terus meningkat akan pemrosesan data besar dan pengembangan AI yang efisien dalam ekosistem Python.
Skenario
Eksplorasi data interaktif
MaxFrame memberikan pengalaman lancar tanpa batasan memori. Anda dapat mengeksplorasi, memanipulasi, dan memvisualisasikan set data masif secara real-time, sebagaimana dilakukan di Jupyter Notebook lokal.
Pra-pemrosesan data skala besar (ETL)
Untuk tugas-tugas seperti pembersihan data mentah multi-terabyte, konversi format, rekayasa fitur, dan lainnya, Anda dapat menggantikan logika SQL+UDF yang kompleks dengan kode Python yang lebih ekspresif dan mudah dipelihara—sekaligus memanfaatkan kinerja tinggi dari eksekusi terdistribusi.
AI dan pembelajaran mesin
Dalam alur kerja pengembangan model, MaxFrame menyatukan pemrosesan data dan pelatihan model. Gunakan MaxFrame untuk menyiapkan data pelatihan secara efisien dan menggabungkannya dengan fitur image untuk mengimpor pustaka seperti Scikit-learn dan XGBoost, sehingga memungkinkan alur kerja AI end-to-end.
Cakupan
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.
DataWorks Data Development node tugas PyODPS 3.
Penagihan
Penagihan MaxFrame didasarkan pada penggunaan sumber daya komputasi per pekerjaan. MaxFrame mendukung kedua metode penagihan: dan subscription.
Subscription: Pekerjaan menggunakan kuota dari kelompok sumber daya yang telah dibeli tanpa biaya tambahan.
Untuk informasi selengkapnya, lihat Analisis detail tagihan dan penggunaan MaxCompute.
Keunggulan utama
Dibandingkan alat pengembangan Python lainnya, MaxFrame lebih selaras dengan kebiasaan pengembangan yang sudah dikenal, memungkinkan pemrosesan data yang lebih efisien, menyediakan sumber daya komputasi yang lebih elastis, serta memberikan pengalaman pengembangan yang lebih nyaman.
API kompatibel dengan Pandas: MaxFrame menyediakan API yang sangat kompatibel dengan Pandas, mendukung migrasi lancar kode yang sudah ada ke platform MaxCompute serta secara signifikan mengurangi biaya pembelajaran dan migrasi.
Eksekusi terdistribusi di sisi server: Pekerjaan MaxFrame dijalankan langsung di dalam kluster MaxCompute. Data tidak perlu ditarik ke mesin lokal, sehingga menghilangkan hambatan kinerja akibat memori klien yang tidak mencukupi dan memungkinkan pemrosesan data berskala petabyte secara efisien.
Sumber daya komputasi elastis: MaxFrame mengandalkan arsitektur serverless MaxCompute untuk mengalokasikan sumber daya komputasi sesuai kebutuhan, memungkinkan Anda memproses tugas data dalam skala apa pun tanpa perlu mengelola kluster.
Lingkungan pengembangan yang disederhanakan: MaxFrame menyediakan lingkungan bawaan Python 3.7 dan Python 3.11 dengan pustaka umum seperti Pandas dan XGBoost yang telah dipra-instal. Kelola dependensi pihak ketiga dengan anotasi sederhana, sehingga menyederhanakan konfigurasi lingkungan dan manajemen dependensi dibandingkan pengemasan dan pengunggahan manual dependensi user-defined function (UDF).
Tabel berikut membandingkan alat ini dengan alat pengembangan Python lainnya:
Item Perbandingan | MaxFrame | PyODPS | Mars | SQL+UDF |
API Pengembangan | Kompatibel dengan Pandas. | Sintaks dan API berbeda signifikan dari Pandas DataFrame. | Memerlukan penggunaan dua set API: SQL dan Python. | |
Pemrosesan data | Pada waktu proses, data diproses di server dan tidak perlu ditarik ke mesin lokal. Hal ini mengurangi transfer data lokal yang tidak perlu dan meningkatkan efisiensi eksekusi pekerjaan. | Metode | Eksekusi terdistribusi hanya didukung untuk beberapa operator. Pembuatan kluster diperlukan saat inisialisasi, yang lambat dan memiliki stabilitas rendah. | Mendukung pekerjaan terdistribusi berdasarkan kemampuan SQL MaxCompute. |
Sumber daya komputasi | Tidak dibatasi oleh ukuran sumber daya lokal, sehingga mengatasi hambatan kinerja single-machine pada Python. | Dibatasi oleh ukuran sumber daya lokal. | Dibatasi oleh ukuran sumber daya. Ukuran worker, CPU, dan memori harus ditentukan. | Memungkinkan komputasi elastis untuk pekerjaan SQL berdasarkan kemampuan serverless MaxCompute. |
Pengalaman pengembangan | Lingkungan pengembangan interaktif siap pakai dan kemampuan penjadwalan offline. Pustaka umum telah tersedia bawaan. Kelola dependensi pihak ketiga menggunakan anotasi, tanpa perlu pengemasan manual. | Lingkungan pengembangan interaktif siap pakai dan kemampuan penjadwalan offline. | Memerlukan persiapan lingkungan runtime yang sesuai dan peluncuran kluster Mars. | Paket dependensi untuk UDF Python harus dikemas dan diunggah secara manual. |
Cara kerja
MaxFrame menyembunyikan kompleksitas komputasi terdistribusi dari pengguna. Alur kerja otomatisnya adalah sebagai berikut:
Pengiriman kode: Tulis dan jalankan kode Python pada klien, seperti Notebook. Kit pengembangan perangkat lunak (SDK) MaxFrame menangkap kode tersebut dan mengirimkannya ke MaxCompute.
Penguraian dan optimasi: Setelah mesin eksekusi MaxCompute menerima pekerjaan, sistem melakukan penguraian sintaks dan optimasi logis. Selanjutnya, pekerjaan tersebut diubah menjadi rencana fisik yang dapat dieksekusi secara paralel.
Eksekusi terdistribusi: Tugas yang telah dioptimalkan didistribusikan ke banyak node komputasi di kluster MaxCompute. Node-node tersebut langsung membaca data dan melakukan komputasi paralel.
Pengembalian hasil: Setelah komputasi selesai, hasilnya diagregasi dan dikembalikan ke klien Anda.