Konsep utama Managed Service untuk Apache Spark

Dokumen ini menjelaskan konsep utama, elemen penyusun dasar, fitur inti, dan manfaat Managed Service untuk Apache Spark. Memahami dasar-dasar ini akan membantu Anda menggunakan Managed Service untuk Apache Spark secara efektif untuk tugas pemrosesan data Anda.

Model serverless

Managed Service untuk Apache Spark serverless adalah model Managed Service untuk Apache Spark modern dengan eksekusi otomatis. Dengan layanan ini, Anda dapat menjalankan tugas tanpa menyediakan, mengelola, atau menskalakan infrastruktur yang mendasarinya: Managed Service untuk Apache Spark menangani detailnya untuk Anda.

  • Batch: Batch (juga disebut workload batch) adalah padanan serverless dari tugas Managed Service untuk Apache Spark. Anda mengirimkan kode, seperti tugas Spark, ke layanan. Managed Service untuk Apache Spark menyediakan resource yang diperlukan sesuai permintaan, menjalankan tugas, lalu menghentikannya. Anda tidak perlu membuat atau mengelola resource cluster atau tugas; layanan akan melakukan pekerjaan tersebut untuk Anda.

  • Sesi interaktif: Sesi interaktif menyediakan lingkungan live on-demand untuk analisis data eksplorasi, biasanya dalam notebook Jupyter. Sesi interaktif memberikan kemudahan ruang kerja serverless sementara yang dapat Anda gunakan untuk menjalankan kueri dan mengembangkan kode tanpa harus menyediakan dan mengelola resource cluster dan notebook.

  • Profil runtime (template sesi): Profil runtime (disebut template sesi di Google Cloud CLI dan Dataproc API) adalah konfigurasi yang dapat digunakan kembali dan dapat Anda gunakan untuk menentukan sesi interaktif. Profil berisi setelan sesi, seperti tingkat komputasi, konfigurasi eksekutor, properti Spark, dan dependensi library. Anda menggunakan profil runtime untuk membuat lingkungan sesi interaktif untuk pengembangan, biasanya dalam notebook Jupyter.

Model berbasis cluster

Managed Service untuk Apache Spark di cluster adalah cara standar yang berfokus pada infrastruktur untuk menggunakan Managed Service untuk Apache Spark. Layanan ini memberi Anda kontrol penuh atas sekumpulan virtual machine khusus untuk tugas pemrosesan data Anda.

  • Cluster: Cluster adalah mesin pemrosesan data pribadi Anda, yang terdiri dari Google Cloud virtual machine. Anda membuat cluster untuk menjalankan framework open source seperti Apache Spark dan Apache Hadoop. Anda memiliki kontrol penuh atas ukuran cluster, jenis mesin, dan konfigurasi.
  • Tugas: Tugas adalah tugas tertentu, seperti skrip PySpark atau kueri Hadoop. Alih-alih menjalankan tugas langsung di cluster, Anda mengirimkan tugas ke Managed Service untuk Apache Spark, yang mengelola eksekusi tugas untuk Anda. Anda dapat mengirimkan beberapa tugas ke cluster.
  • Template Alur Kerja: Template alur kerja adalah definisi yang dapat digunakan kembali yang mengatur serangkaian tugas (alur kerja). Alat ini dapat menentukan dependensi antar-tugas, misalnya untuk menjalankan tugas machine learning hanya setelah tugas pembersihan data berhasil diselesaikan. Alur kerja yang di-template dapat berjalan di cluster yang ada atau di cluster sementara (efemeral) yang dibuat untuk menjalankan alur kerja, lalu dihapus setelah alur kerja selesai. Anda dapat menggunakan template untuk menjalankan alur kerja yang ditentukan kapan pun diperlukan.
  • Kebijakan penskalaan otomatis: Kebijakan penskalaan otomatis berisi aturan yang Anda tentukan untuk menambahkan atau menghapus mesin worker dari cluster berdasarkan workload cluster guna mengoptimalkan biaya dan performa cluster secara dinamis.

Penyesuaian lingkungan

Managed Service untuk Apache Spark di cluster menawarkan fitur dan komponen cluster yang dapat Anda gunakan untuk menyesuaikan lingkungan aplikasi.

Lingkungan notebook dan pengembangan

Notebook dan IDE serverless Managed Service untuk Apache Spark ditautkan ke lingkungan pengembangan terintegrasi tempat Anda dapat menulis dan mengeksekusi kode.

  • BigQuery Studio & Workbench: Ini adalah lingkungan notebook dan analisis terpadu. Notebook interaktif memungkinkan Anda menulis kode (misalnya di notebook Jupyter) dan menggunakan cluster Managed Service untuk Apache Spark atau sesi serverless sebagai mesin backend yang andal untuk mengeksekusi kode Anda pada set data besar.
  • Plugin JupyterLab Managed Service untuk Apache Spark: JupyterLabextension resmi ini berfungsi sebagai panel kontrol untuk Managed Service untuk Apache Spark serverless di dalam lingkungan notebook Anda. Alat ini menyederhanakan alur kerja Anda dengan memungkinkan Anda menjelajahi, membuat, dan mengelola cluster serta mengirimkan tugas tanpa harus keluar dari antarmuka Jupyter.
  • Google Cloud Data Agent Kit: Data Agent Kit memungkinkan data scientist, engineer, dan developer mengelola seluruh siklus proses workload data mereka dalam IDE. Data Agent Kit memberikan dukungan untuk Managed Service untuk Apache Spark, sehingga Anda dapat mengembangkan kode, membuat sesi interaktif, dan membangun pipeline langsung dari VS Code atau CLI agentic yang didukung.
  • Managed Service for Apache Spark Connect Python Connector: Library Python ini menyederhanakan proses penggunaan Spark Connect dengan Managed Service untuk Apache Spark. Library ini menangani autentikasi dan konfigurasi endpoint, sehingga jauh lebih mudah untuk menghubungkan lingkungan Python lokal Anda, seperti notebook atau IDE, ke cluster Managed Service untuk Apache Spark jarak jauh untuk pengembangan interaktif.

Model container

Managed Service untuk Apache Spark di Google Kubernetes Engine men-deploy cluster virtual Managed Service untuk Apache Spark di cluster GKE. Tidak seperti cluster Managed Service untuk Apache Spark, cluster virtual Managed Service untuk Apache Spark tidak menyediakan VM master dan worker yang terpisah. Sebagai gantinya, mereka menyediakan node pool dalam cluster GKE. Tugas Managed Service untuk Apache Spark di GKE dijalankan sebagai pod di node pool ini. Node pool dan penjadwalan pod di node pool dikelola oleh Managed Service untuk Apache Spark di GKE.