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.

Model serverless

Managed Service untuk Apache Spark serverless adalah model Managed Service untuk Apache Spark modern dengan eksekusi otomatis. Model ini memungkinkan Anda 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 menghapusnya. Anda tidak membuat atau mengelola resource cluster atau tugas; layanan ini akan melakukan pekerjaan untuk Anda.
  • Sesi interaktif: Sesi interaktif menyediakan lingkungan langsung sesuai permintaan untuk analisis data eksploratif, 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.
  • Template sesi: Template sesi adalah konfigurasi yang dapat digunakan kembali yang dapat Anda gunakan untuk menentukan sesi interaktif. Template berisi setelan sesi, seperti properti Spark dan dependensi library. Anda menggunakan template untuk membuat lingkungan sesi interaktif untuk pengembangan, biasanya dalam notebook Jupyter.

Model berbasis cluster

Managed Service untuk Apache Spark di cluster adalah cara standar dan berpusat pada infrastruktur untuk menggunakan Managed Service untuk Apache Spark. Model ini memberi Anda kontrol penuh atas kumpulan virtual machine khusus untuk tugas pemrosesan data.

  • 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. Daripada 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). Template ini dapat menentukan dependensi antar-tugas, misalnya untuk menjalankan tugas machine learning hanya setelah tugas pembersihan data berhasil diselesaikan. Alur kerja yang menggunakan template dapat berjalan di cluster yang ada atau di cluster sementara (ephemeral) yang dibuat untuk menjalankan alur kerja, lalu dihapus setelah alur kerja selesai. Anda dapat menggunakan template untuk menjalankan alur kerja yang ditentukan kapan saja diperlukan.
  • Kebijakan penskalaan otomatis: Kebijakan penskalaan otomatis berisi aturan yang Anda tentukan untuk menambahkan atau menghapus mesin pekerja 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 Managed Service untuk Apache Spark serverless ditautkan ke lingkungan pengembangan terintegrasi tempat Anda dapat menulis dan menjalankan kode.

  • BigQuery Studio &Workbench: Ini adalah lingkungan notebook dan analisis terpadu. Lingkungan ini 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 menjalankan kode pada set data besar.
  • Plugin JupyterLab Managed Service untuk Apache Spark: JupyterLabextension resmi ini bertindak sebagai panel kontrol untuk Managed Service untuk Apache Spark serverless di dalam lingkungan notebook Anda. Plugin ini menyederhanakan alur kerja Anda dengan memungkinkan Anda menjelajahi, membuat, dan mengelola cluster serta mengirimkan tugas tanpa harus keluar dari antarmuka Jupyter.
  • Konektor Python Managed Service untuk Apache Spark Connect: 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 pekerja terpisah. Sebagai gantinya, cluster virtual menyediakan kumpulan node dalam cluster GKE. Tugas Managed Service untuk Apache Spark di GKE dijalankan sebagai pod di kumpulan node ini. Kumpulan node dan penjadwalan pod di kumpulan node dikelola oleh Managed Service untuk Apache Spark di GKE.