Melihat rekomendasi partisi dan cluster
Dokumen ini menjelaskan cara kerja pemberi rekomendasi cluster dan partisi, serta cara melihat rekomendasi dan insight Anda.
Pemberi rekomendasi partisi dan cluster BigQuery menghasilkan rekomendasi partisi atau cluster untuk mengoptimalkan tabel BigQuery Anda. Pemberi rekomendasi menganalisis alur kerja di tabel BigQuery Anda dan menawarkan rekomendasi untuk lebih mengoptimalkan alur kerja dan membuat kueri biaya dengan lebih baik menggunakan partisi tabel atau pengelompokan tabel.
Untuk mengetahui informasi selengkapnya tentang layanan Pemberi rekomendasi, lihat Ringkasan pemberi rekomendasi.
Cara kerja pemberi rekomendasi
Untuk menghasilkan rekomendasi, pemberi rekomendasi partisi dan cluster menggunakan data eksekusi workload project dari 30 hari terakhir untuk menganalisis setiap tabel BigQuery guna menemukan konfigurasi partisi dan pengelompokan yang kurang optimal. Pemberi rekomendasi juga menggunakan machine learning untuk memprediksi seberapa banyak eksekusi workload yang dapat dioptimalkan dengan konfigurasi partisi atau cluster yang berbeda. Jika pemberi rekomendasi mendapati bahwa partisi atau pengelompokan tabel menghasilkan penghematan yang signifikan, pemberi rekomendasi akan menghasilkan rekomendasi. Pemberi rekomendasi pembuatan partisi dan cluster akan menghasilkan jenis rekomendasi berikut:
Jenis tabel yang ada | Subjenis rekomendasi | Contoh rekomendasi |
---|---|---|
Tidak dipartisi, tidak dikelompokkan | Partisi | "Hemat sekitar 64 slot jam per bulan dengan membuat partisi pada column_C by DAY" |
Tidak dipartisi, tidak dikelompokkan | Cluster | "Hemat sekitar 64 jam slot per bulan dengan membuat cluster pada column_C" |
Dipartisi, tidak dikelompokkan | Cluster | "Hemat sekitar 64 jam slot per bulan dengan membuat cluster pada column_C" |
Setiap rekomendasi terdiri dari tiga bagian:
- Panduan untuk partisi atau cluster tabel tertentu
- Kolom tertentu dalam tabel untuk melakukan partisi atau cluster
- Estimasi penghematan bulanan untuk penerapan rekomendasi
Untuk menghitung potensi penghematan workload, pemberi rekomendasi mengasumsikan bahwa data histori workload eksekusi dari 30 hari terakhir mewakili workload mendatang.
API pemberi rekomendasi juga menampilkan informasi workload tabel dalam bentuk insight. Insight adalah temuan yang membantu Anda memahami workload project, yang memberikan lebih banyak konteks tentang bagaimana rekomendasi partisi atau cluster dapat meningkatkan biaya workload.
Batasan
Pemberi rekomendasi partisi dan cluster mengecualikan kueri legacy SQL dalam analisisnya.
Pemberi rekomendasi pembuatan partisi dan pengelompokan tidak mendukung resource yang disimpan di region berikut:
europe-central2
,europe-west8
,europe-west9
,europe-west12
,europe-north1
,europe-southwest1
us-east1
,us-east5
,us-south1
me-central1
,me-central2
,me-west1
australia-southeast2
southamerica-west1
Sebelum memulai
Sebelum dapat melihat rekomendasi partisi dan cluster, Anda harus mengaktifkan Recommender API.
Izin yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk mengakses rekomendasi partisi dan cluster,
minta administrator untuk memberi Anda
BigQuery Partitioning Clustering Recommender Viewer (roles/recommender.bigqueryPartitionClusterViewer
) Peran IAM.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Peran yang telah ditentukan ini berisi izin yang diperlukan untuk mengakses rekomendasi partisi dan cluster. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk mengakses rekomendasi partisi dan cluster:
-
recommender.bigqueryPartitionClusterRecommendations.get
-
recommender.bigqueryPartitionClusterRecommendations.list
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran yang telah ditetapkan sebelumnya.
Untuk mengetahui informasi lebih lanjut tentang peran dan izin IAM di BigQuery, baca Pengantar IAM.
Melihat rekomendasi
Bagian ini menjelaskan cara melihat rekomendasi dan insight partisi dan cluster menggunakan Konsol Google Cloud, Google Cloud CLI, atau Recommender API.
Pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud, buka halaman BigQuery.
Untuk membuka tab rekomendasi, klik > Lihat semua rekomendasi.
RekomendasiTab rekomendasi mencantumkan semua rekomendasi yang tersedia untuk project Anda.
Di panel Optimalkan biaya workload BigQuery, klik Lihat semua.
Tabel rekomendasi biaya mencantumkan semua rekomendasi yang dihasilkan untuk project saat ini. Misalnya, screenshot berikut menunjukkan bahwa pemberi rekomendasi menganalisis tabel
example_table
, lalu merekomendasikan pengelompokan kolomexample_column
untuk menyimpan perkiraan jumlah byte dan slot.Untuk melihat informasi selengkapnya tentang insight dan rekomendasi tabel, klik rekomendasi.
gcloud
Untuk melihat rekomendasi partisi atau cluster untuk project tertentu, gunakan
perintah gcloud recommender recommendations list
:
gcloud recommender recommendations list \ --project=PROJECT_NAME \ --location=REGION_NAME \ --recommender=google.bigquery.table.PartitionClusterRecommender \ --format=FORMAT_TYPE \
Ganti kode berikut:
PROJECT_NAME
: nama project yang berisi tabel BigQuery AndaREGION_NAME
: region tempat project Anda beradaFORMAT_TYPE
: format output gcloud CLI yang didukung—misalnya, JSON
Properti | Relevan untuk subjenis | Deskripsi |
---|---|---|
recommenderSubtype |
Partisi atau cluster | Menunjukkan jenis rekomendasi. |
content.overview.partitionColumn |
Partisi | Nama kolom partisi yang direkomendasikan. |
content.overview.partitionTimeUnit |
Partisi | Unit waktu partisi yang direkomendasikan. Misalnya, DAY berarti
rekomendasinya adalah memiliki partisi harian di kolom yang direkomendasikan. |
content.overview.clusterColumns |
Cluster | Nama kolom cluster yang direkomendasikan. |
- Untuk mengetahui informasi selengkapnya tentang kolom lain dalam respons pemberi rekomendasi, lihat Resource REST:
projects.locations.recommendersrecommendation
. - Untuk informasi selengkapnya tentang penggunaan Recommender API, lihat Menggunakan API - Rekomendasi.
Untuk melihat insight tabel menggunakan gcloud CLI, gunakan perintah gcloud recommender insights list
:
gcloud recommender insights list \ --project=PROJECT_NAME \ --location=REGION_NAME \ --insight-type=google.bigquery.table.StatsInsight \ --format=FORMAT_TYPE \
Ganti kode berikut:
PROJECT_NAME
: nama project yang berisi tabel BigQuery AndaREGION_NAME
: region tempat project Anda beradaFORMAT_TYPE
: format output gcloud CLI yang didukung—misalnya, JSON
Properti | Relevan untuk subjenis | Deskripsi |
---|---|---|
content.existingPartitionColumn |
Cluster | Kolom partisi yang ada, jika ada |
content.tableSizeTb |
Semua | Ukuran tabel dalam terabyte |
content.bytesReadMonthly |
Semua | Byte bulanan yang dibaca dari tabel |
content.slotMsConsumedMonthly |
Semua | Slot bulanan dalam milidetik yang terpakai oleh workload yang berjalan di tabel |
content.queryJobsCountMonthly |
Semua | Jumlah tugas bulanan yang berjalan di tabel |
- Untuk mengetahui informasi selengkapnya tentang kolom lain dalam respons insight, lihat Resource REST:
projects.locations.insightTypes.insights
. - Untuk informasi selengkapnya tentang penggunaan insight, lihat Menggunakan API - Insight.
REST API
Untuk melihat rekomendasi partisi atau cluster untuk project tertentu, gunakan REST API. Dengan setiap perintah, Anda harus menyediakan token autentikasi, yang bisa Anda dapatkan menggunakan gcloud CLI. Untuk mengetahui informasi lebih lanjut mengenai cara mendapatkan token autentikasi, baca Metode untuk mendapatkan token ID.
Anda dapat menggunakan permintaan curl list
untuk melihat semua rekomendasi untuk
project tertentu:
curl -H "Authorization: Bearer $GCLOUD_AUTH_TOKEN" -H "x-goog-user-project: PROJECT_NAME" https://recommender.googleapis.com/v1/projects/my-project/locations/us/recommenders/google.bigquery.table.PartitionClusterRecommender/recommendations
Ganti kode berikut:
GCLOUD_AUTH_TOKEN
: nama token akses gcloud CLI yang validPROJECT_NAME
: nama project yang berisi tabel BigQuery Anda
Properti | Relevan untuk subjenis | Deskripsi |
---|---|---|
recommenderSubtype |
Partisi atau cluster | Menunjukkan jenis rekomendasi. |
content.overview.partitionColumn |
Partisi | Nama kolom partisi yang direkomendasikan. |
content.overview.partitionTimeUnit |
Partisi | Unit waktu partisi yang direkomendasikan. Misalnya, DAY berarti
rekomendasinya adalah memiliki partisi harian di kolom yang direkomendasikan. |
content.overview.clusterColumns |
Cluster | Nama kolom cluster yang direkomendasikan. |
- Untuk mengetahui informasi selengkapnya tentang kolom lain dalam respons pemberi rekomendasi, lihat Resource REST:
projects.locations.recommendersrecommendation
. - Untuk informasi selengkapnya tentang penggunaan Recommender API, lihat Menggunakan API - Rekomendasi.
Untuk melihat insight tabel menggunakan REST API, jalankan perintah berikut:
curl -H "Authorization: Bearer $GCLOUD_AUTH_TOKEN" -H "x-goog-user-project: PROJECT_NAME" https://recommender.googleapis.com/v1/projects/my-project/locations/us/insightTypes/google.bigquery.table.StatsInsight/insights
Ganti kode berikut:
GCLOUD_AUTH_TOKEN
: nama token akses gcloud CLI yang validPROJECT_NAME
: nama project yang berisi tabel BigQuery Anda
Properti | Relevan untuk subjenis | Deskripsi |
---|---|---|
content.existingPartitionColumn |
Cluster | Kolom partisi yang ada, jika ada |
content.tableSizeTb |
Semua | Ukuran tabel dalam terabyte |
content.bytesReadMonthly |
Semua | Byte bulanan yang dibaca dari tabel |
content.slotMsConsumedMonthly |
Semua | Slot bulanan dalam milidetik yang terpakai oleh workload yang berjalan di tabel |
content.queryJobsCountMonthly |
Semua | Jumlah tugas bulanan yang berjalan di tabel |
- Untuk mengetahui informasi selengkapnya tentang kolom lain dalam respons insight, lihat Resource REST:
projects.locations.insightTypes.insights
. - Untuk informasi selengkapnya tentang penggunaan insight, lihat Menggunakan API - Insight.
Pemecahan masalah
Masalah: Tidak ada rekomendasi yang muncul untuk tabel tertentu.
Rekomendasi partisi dan cluster mungkin tidak muncul dalam situasi berikut:
- Ukuran tabel kurang dari 10 GB.
- Tabel ini memiliki biaya tulis yang tinggi dari operasi bahasa pengolahan data (DML).
- Tabel tidak dibaca dalam 30 hari terakhir.
- Estimasi penghematan bulanan terlalu tidak signifikan (penghematan kurang dari 1 slot jam).
- Tabel sudah dikelompokkan.
Harga
Tidak ada biaya atau dampak buruk terhadap performa workload jika Anda melihat rekomendasi.