Alat analisis terprogram

Dokumen ini menjelaskan beberapa cara untuk menulis dan menjalankan kode untuk menganalisis data yang dikelola di BigQuery.

Meskipun SQL adalah bahasa kueri yang andal, bahasa pemrograman seperti Python, Java, atau R menyediakan sintaksis dan beragam fungsi statistik bawaan yang mungkin dianggap analis data lebih ekspresif dan lebih mudah dimanipulasi untuk jenis analisis data tertentu.

Demikian pula, meskipun spreadsheet digunakan secara luas, lingkungan pemrograman lain seperti notebook terkadang dapat menawarkan lingkungan yang lebih fleksibel untuk melakukan analisis dan eksplorasi data yang kompleks.

Notebook Colab Enterprise

Anda dapat menggunakan notebook Colab Enterprise di BigQuery untuk menyelesaikan alur kerja analisis dan machine learning (ML) dengan menggunakan SQL, Python, serta paket dan API umum lainnya. Notebook menawarkan kolaborasi dan pengelolaan yang lebih baik dengan opsi berikut:

  • Bagikan notebook kepada pengguna dan grup tertentu dengan Identity and Access Management (IAM).
  • Tinjau histori versi notebook.
  • Kembalikan ke atau cabang dari versi notebook sebelumnya.

Notebook adalah aset kode BigQuery Studio yang didukung oleh Dataform. Kueri tersimpan juga merupakan aset kode. Semua aset kode disimpan di region default. Mengupdate region default akan mengubah region untuk semua aset kode yang dibuat setelah waktu tersebut.

Kemampuan notebook hanya tersedia di Konsol Google Cloud.

Notebook di BigQuery menawarkan manfaat berikut:

  • BigQuery DataFrames terintegrasi dengan notebook dan tidak memerlukan penyiapan. BigQuery DataFrames adalah API Python yang dapat Anda gunakan untuk menganalisis data BigQuery dalam skala besar menggunakan pandas DataFrame dan scikit-learn API.
  • Pengembangan kode pendukung yang didukung oleh AI generatif Gemini.
  • Kemampuan untuk menyimpan, membagikan, dan mengelola versi notebook.
  • Kemampuan untuk menggunakan matplotlib, seaborn, dan library populer lainnya untuk memvisualisasikan data kapan saja dalam alur kerja Anda.

DataFrame BigQuery

BigQuery DataFrames adalah kumpulan library Python open source yang memungkinkan Anda memanfaatkan pemrosesan data BigQuery menggunakan API Python yang sudah dikenal. BigQuery DataFrames menerapkan API pandas dan scikit-learn dengan mendorong pemrosesan ke BigQuery melalui konversi SQL. Dengan desain ini, Anda dapat menggunakan BigQuery untuk menjelajahi dan memproses terabyte data, serta melatih model ML, semuanya dengan Python API.

BigQuery DataFrame menawarkan manfaat berikut:

  • Lebih dari 750 API pandas dan scikit-learn yang diimplementasikan melalui konversi SQL transparan ke BigQuery dan BigQuery ML API.
  • Penundaan eksekusi kueri untuk meningkatkan performa.
  • Memperluas transformasi data dengan fungsi Python yang ditentukan pengguna agar Anda dapat memproses data di cloud. Fungsi ini di-deploy secara otomatis sebagai fungsi jarak jauh BigQuery.
  • Integrasi dengan Vertex AI untuk memungkinkan Anda menggunakan model Gemini untuk pembuatan teks.

Solusi analisis terprogram lainnya

Solusi analisis terprogram berikut juga tersedia di BigQuery.

Notebook Jupyter

Jupyter adalah aplikasi open source berbasis web untuk memublikasikan notebook yang berisi kode aktif, deskripsi tekstual, dan visualisasi. Data scientist, spesialis machine learning, dan siswa biasanya menggunakan platform ini untuk tugas seperti pembersihan dan transformasi data, simulasi numerik, pemodelan statistik, visualisasi data, dan ML.

Notebook Jupyter dibuat di atas kernel IPython, shell interaktif yang andal, yang dapat berinteraksi langsung dengan BigQuery menggunakan IPython Magics untuk BigQuery. Atau, Anda juga dapat mengakses BigQuery dari instance notebook Jupyter dengan menginstal library klien BigQuery yang tersedia. Anda dapat memvisualisasikan data BigQuery GIS dengan notebook Jupyter melalui ekstensi GeoJSON. Untuk mengetahui detail selengkapnya tentang integrasi BigQuery, lihat tutorial Memvisualisasikan data BigQuery di notebook Jupyter.

Diagram notebook Jupyter yang menunjukkan visualisasi data GIS BigQuery.

JupyterLab adalah antarmuka pengguna berbasis web untuk mengelola dokumen dan aktivitas seperti notebook Jupyter, editor teks, terminal, dan komponen kustom. Dengan JupyterLab, Anda dapat menata beberapa dokumen dan aktivitas secara berdampingan di area kerja dengan tab dan pemisah.

JupyterLab: menggunakan tab dan pemisah untuk menata beberapa dokumen dan aktivitas secara berdampingan di area kerja.

Anda dapat men-deploy notebook Jupyter dan lingkungan JupyterLab di Google Cloud menggunakan salah satu produk berikut:

Apache Zeppelin

Apache Zeppelin adalah project open source yang menawarkan notebook berbasis web untuk analisis data. Anda dapat men-deploy instance Apache Zeppelin di Dataproc dengan menginstal komponen opsional Zeppelin. Secara default, notebook disimpan di Cloud Storage di bucket staging Dataproc, yang ditentukan oleh pengguna atau dibuat otomatis saat cluster dibuat. Anda dapat mengubah lokasi notebook dengan menambahkan properti zeppelin:zeppelin.notebook.gcs.dir saat membuat cluster. Untuk informasi selengkapnya tentang cara menginstal dan mengonfigurasi Apache Zeppelin, lihat Panduan komponen Zeppelin. Sebagai contoh, lihat Menganalisis set data BigQuery menggunakan Interpreter BigQuery untuk Apache Zeppelin.

Analisis SQL dari data tabel yang ditunjukkan di Zeppelin.

Apache Hadoop, Apache Spark, dan Apache Hive

Sebagai bagian dari migrasi pipeline analisis data, Anda mungkin ingin memigrasikan beberapa tugas Apache Hadoop, Apache Spark, atau Apache Hive lama yang perlu memproses data secara langsung dari data warehouse Anda. Misalnya, Anda dapat mengekstrak fitur untuk workload machine learning Anda.

Dataproc memungkinkan Anda men-deploy cluster Hadoop dan Spark yang terkelola sepenuhnya secara efisien dan hemat biaya. Dataproc terintegrasi dengan konektor BigQuery open source. Konektor ini menggunakan BigQuery Storage API, yang melakukan streaming data secara paralel langsung dari BigQuery melalui gRPC.

Saat memigrasikan workload Hadoop dan Spark yang ada ke Dataproc, Anda dapat melihat apakah dependensi workload Anda tercakup dalam versi Dataproc yang didukung. Jika perlu menginstal software kustom, Anda dapat mempertimbangkan untuk membuat image Dataproc Anda sendiri, menulis tindakan inisialisasi Anda sendiri, atau menyebutkan persyaratan paket Python kustom.

Untuk memulai, lihat panduan memulai Dataproc dan contoh kode konektor BigQuery.

Apache Beam

Apache Beam adalah framework open source yang kaya dengan rangkaian dasar windowing dan analisis sesi, serta ekosistem konektor sumber dan sink, termasuk konektor untuk BigQuery. Apache Beam memungkinkan Anda untuk mengubah dan memperkaya data baik secara streaming (real time) maupun batch (historis) dengan keandalan dan ekspresif yang sama.

Dataflow adalah layanan terkelola sepenuhnya untuk menjalankan tugas Apache Beam dalam skala besar. Pendekatan serverless Dataflow memangkas beban operasional dengan performa, penskalaan, ketersediaan, keamanan, dan kepatuhan yang ditangani secara otomatis sehingga Anda dapat fokus pada pemrograman, bukan pengelolaan cluster server.

Grafik eksekusi dengan transformasi komposit yang diperluas (MakeMapView). Subtransformasi yang membuat input tambahan (CreateDataflowView) dipilih, dan metrik input tambahan ditampilkan di tab Langkah.

Anda dapat mengirimkan tugas Dataflow dengan berbagai cara, baik melalui antarmuka command line, Java SDK, atau Python SDK.

Jika Anda ingin memigrasikan kueri dan pipeline data dari framework lain ke Apache Beam dan Dataflow, baca tentang model pemrograman Apache Beam dan jelajahi dokumentasi Dataflow resmi.

RStudio

Data scientist sering menggunakan bahasa pemrograman R untuk membuat alat analisis data dan aplikasi statistik. RStudio mengembangkan alat gratis dan terbuka untuk R dan produk profesional yang siap digunakan perusahaan agar tim dapat menskalakan dan membagi pekerjaan. Produk RStudio, seperti RStudio Server Pro, menyederhanakan analisis data dengan R dan menyediakan alat yang andal dalam melakukan publikasi dan berbagi.

RStudio Server Pro adalah lingkungan pengembangan terintegrasi (IDE) sesuai permintaan yang berlisensi komersial. Alat ini menawarkan kemampuan yang ditemukan di IDE open source RStudio yang populer, ditambah dengan kemudahan siap pakai, keamanan yang ditingkatkan, kemampuan untuk mengelola beberapa versi dan sesi R, dan lain-lain.

Anda dapat men-deploy komponen RStudio Server Pro untuk Google Cloud dari Cloud Marketplace. Versi ini identik dengan RStudio Server Pro, tetapi dengan kemudahan-kemudahan untuk data scientist, termasuk pra-penginstalan beberapa versi R dan library sistem umum. Versi ini juga mencakup bigrquery, paket BigQuery untuk R, yang menyediakan backend DBI dan dplyr yang memungkinkan Anda berinteraksi dengan BigQuery menggunakan SQL tingkat rendah atau verb dplyr tingkat tinggi. Paket ini menyederhanakan penanganan data yang disimpan di BigQuery dengan memungkinkan Anda mengkueri tabel BigQuery dan mengambil metadata tentang project, set data, tabel, dan tugas Anda. Untuk mempelajari lebih lanjut, lihat panduan resmi tentang Memulai RStudio Server Pro untuk Google Cloud dan FAQ RStudio Server Pro untuk Google Cloud ini.

Anda juga dapat menginstal RStudio Server versi open source di cluster Dataproc. Keuntungan menjalankan RStudio di Dataproc adalah Anda dapat memanfaatkan Penskalaan otomatis Dataproc. Dengan penskalaan otomatis, Anda bisa memiliki ukuran cluster minimum saat mengembangkan logika SparkR. Setelah mengirimkan tugas untuk pemrosesan skala besar, Anda tidak perlu melakukan apa pun yang berbeda atau mengkhawatirkan modifikasi server. Setelah Anda mengirimkan tugas SparkR ke RStudio, cluster Dataproc akan diskalakan untuk memenuhi kebutuhan tugas Anda dalam interval yang Anda tetapkan. Untuk detail lebih lanjut tentang integrasi RStudio dengan Dataproc, lihat pengumuman resmi.

Resource lainnya

BigQuery menawarkan beragam library klien dalam berbagai bahasa pemrograman seperti Java, Go, Python, JavaScript, PHP, dan Ruby. Beberapa framework analisis data seperti pandas menyediakan plugin yang berinteraksi langsung dengan BigQuery. Untuk beberapa contoh praktis, lihat tutorial Memvisualisasikan data BigQuery di notebook Jupyter.

Terakhir, jika Anda lebih memilih untuk menulis program di lingkungan shell, Anda dapat menggunakan alat command line bq.