Menggunakan Sheet yang Terhubung

Spreadsheet yang Terhubung menghadirkan skala BigQuery ke antarmuka Google Spreadsheet yang sudah dikenal. Dengan Sheet yang Terhubung, Anda dapat melihat pratinjau data BigQuery dan menggunakannya dalam tabel pivot, formula, dan diagram yang dibuat dari seluruh set data.

Anda juga dapat melakukan hal-hal berikut:

  • Berkolaborasi dengan partner, analis, atau pemangku kepentingan lainnya dalam antarmuka spreadsheet yang sudah familier.

  • Memastikan satu sumber tepercaya untuk analisis data tanpa ekspor spreadsheet tambahan.

  • Menyederhanakan alur kerja pelaporan dan dasbor Anda.

Sheet yang Terhubung menjalankan kueri BigQuery atas nama Anda, baik atas permintaan Anda maupun berdasarkan jadwal yang ditentukan. Hasil kueri tersebut disimpan di spreadsheet untuk analisis dan berbagi.

Contoh kasus penggunaan

Berikut adalah beberapa kasus penggunaan yang menunjukkan bagaimana Sheet yang Terhubung memungkinkan Anda menganalisis data dalam jumlah besar dalam satu spreadsheet, tanpa perlu memahami SQL.

  • Perencanaan bisnis: Buat dan siapkan set data, lalu izinkan orang lain menemukan insight dari data. Misalnya, analisis data penjualan untuk menentukan produk mana yang terjual lebih baik di berbagai lokasi.

  • Layanan pelanggan: Cari tahu toko mana yang memiliki keluhan terbanyak per 10.000 pelanggan.

  • Penjualan: Buat laporan keuangan dan penjualan internal, serta bagikan laporan pendapatan dengan Sales Rep.

Kontrol akses

Akses langsung ke set data dan tabel BigQuery dikontrol dalam BigQuery. Jika Anda ingin memberikan akses ke Google Spreadsheet saja kepada pengguna, bagikan spreadsheet dan jangan berikan akses BigQuery.

Pengguna dengan akses Google Spreadsheet saja dapat melakukan analisis di spreadsheet dan menggunakan fitur Google Spreadsheet lainnya, tetapi pengguna tersebut tidak dapat melakukan tindakan berikut:

  • Memuat ulang data BigQuery secara manual di spreadsheet.
  • Menjadwalkan pemuatan ulang data dalam spreadsheet.

Saat Anda memfilter data di Sheet yang Terhubung, kueri yang Anda kirim ke BigQuery akan dimuat ulang terhadap project yang Anda pilih. Anda dapat melihat kueri yang dijalankan dengan filter log berikut di project terkait:

resource.type="bigquery_resource"
protoPayload.metadata.firstPartyAppMetadata.sheetsMetadata.docId != NULL_VALUE

Kontrol Layanan VPC

Anda dapat menggunakan Kontrol Layanan VPC untuk membatasi akses ke resourceGoogle Cloud . Karena Kontrol Layanan VPC tidak mendukung Spreadsheet, Anda mungkin tidak dapat mengakses data BigQuery yang dilindungi oleh Kontrol Layanan VPC. Jika Anda memiliki izin yang diperlukan dan memenuhi batasan akses Kontrol Layanan VPC, Anda dapat mengonfigurasi perimeter Kontrol Layanan VPC agar mengizinkan kueri untuk dikeluarkan melalui Sheet yang Terhubung. Untuk melakukannya, Anda harus mengonfigurasi perimeter menggunakan hal berikut:

  • Tingkat akses atau aturan masuk untuk mengizinkan permintaan dari alamat IP tepercaya, identitas, dan perangkat klien tepercaya dari luar perimeter.
  • Aturan keluar untuk mengizinkan hasil kueri disalin ke spreadsheet pengguna.

Pelajari cara mengonfigurasi kebijakan traffic masuk dan keluar serta mengonfigurasi tingkat akses untuk mengonfigurasi aturan dengan benar. Untuk mengonfigurasi perimeter agar memungkinkan penyalinan data yang diperlukan, gunakan file YAML berikut:

# Allows egress to Sheets through the Connected Sheets feature
- egressTo:
    operations:
    - serviceName: 'bigquery.googleapis.com'
      methodSelectors:
      - permission: 'bigquery.vpcsc.importData'
    resources:
    - projects/628550087766 # Sheets-owned Google Cloud project
  egressFrom:
    identityType: ANY_USER_ACCOUNT

Sebelum memulai

Pertama, pastikan Anda memenuhi persyaratan untuk mengakses data BigQuery di Spreadsheet, seperti yang dijelaskan di bagian "Yang Anda perlukan" pada topik Google Workspace Memulai data BigQuery di Google Spreadsheet.

Jika Anda tidak memiliki Google Cloud project yang disiapkan untuk penagihan, ikuti langkah-langkah berikut:

  1. Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. BigQuery secara otomatis diaktifkan dalam project baru. Untuk mengaktifkan BigQuery dalam project yang sudah ada, buka

    Aktifkan BigQuery API.

    Peran yang diperlukan untuk mengaktifkan API

    Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin), yang berisi izin serviceusage.services.enable. Pelajari cara memberikan peran.

    Mengaktifkan API

Untuk menghindari penagihan berkelanjutan, Anda dapat menghapus resource yang Anda buat. Lihat Pembersihan untuk detail selengkapnya.

Membuka set data BigQuery dari Sheet yang Terhubung

Contoh berikut menggunakan set data publik untuk menunjukkan cara menghubungkan ke BigQuery dari Google Spreadsheet:

  1. Buat atau buka spreadsheet Google Spreadsheet.

  2. Klik Data, klik Data Connectors, lalu klik Connect to BigQuery.

  3. Pilih Google Cloud project yang mengaktifkan penagihan.

  4. Klik Public datasets.

  5. Di kotak penelusuran, ketik chicago, lalu pilih set data chicago_taxi_trips.

  6. Pilih tabel taxi_trips lalu klik Connect.

    Menghubungkan ke tabel

    Spreadsheet Anda akan terlihat seperti berikut:

    Data perjalanan taksi

Mulai menggunakan spreadsheet. Anda dapat membuat tabel pivot, formula, diagram, kolom kalkulasi, dan kueri terjadwal menggunakan teknik Google Spreadsheet yang familier. Untuk mengetahui informasi selengkapnya, lihat tutorial Sheet yang Terhubung.

Meskipun spreadsheet hanya menampilkan pratinjau 500 baris, semua tabel pivot, formula, dan diagram menggunakan seluruh kumpulan data. Jumlah maksimum baris untuk hasil yang ditampilkan untuk tabel pivot adalah 200.000.

Anda juga dapat mengekstrak data ke Google Spreadsheet. Jumlah maksimum baris dan sel untuk hasil yang ditampilkan untuk ekstrak data bergantung pada kondisi berikut:

  • Jika jumlah baris kurang dari atau sama dengan 50.000, maka tidak ada batas sel.
  • Jika jumlah baris lebih dari 50.000 tetapi kurang dari atau sama dengan 500.000, jumlah sel harus kurang dari atau sama dengan 5 juta.
  • Jika jumlah baris lebih dari 500.000, penarikan data tidak didukung.

Saat Anda menggunakan Sheet yang Terhubung untuk membuat diagram, tabel pivot, formula, atau sel terkomputasi lainnya dari data Anda, Sheet yang Terhubung menjalankan kueri di BigQuery atas nama Anda. Untuk melihat kueri ini, lakukan hal berikut:

  1. Pilih sel atau diagram yang Anda buat.
  2. Arahkan kursor ke Muat ulang.
  3. Opsional: Untuk memperbarui hasil kueri di Sheet yang Terhubung, klik Perbarui.
  4. Untuk melihat kueri di BigQuery, klik Detail kueri di BigQuery.

    Kueri akan terbuka di konsol Google Cloud .

Membuka tabel di Sheet yang Terhubung

Untuk membuka tabel di Sheet yang Terhubung, ikuti langkah-langkah berikut:

  1. Di konsol Google Cloud , buka halaman BigQuery.

    Buka BigQuery

  2. Di panel kiri, klik Explorer:

    Tombol yang ditandai untuk panel Explorer.

    Jika Anda tidak melihat panel kiri, klik Luaskan panel kiri untuk membuka panel.

  3. Di panel Explorer, luaskan project Anda, klik Set Data, lalu klik set data yang berisi tabel yang ingin Anda buka di Google Spreadsheet.

  4. Klik Overview > Tables, lalu di samping nama tabel, klik View actions, lalu pilih Open in > Connected Sheets.

Membuka kueri tersimpan di Sheet yang Terhubung

Pastikan Anda memiliki kueri tersimpan. Untuk mengetahui informasi selengkapnya, lihat Membuat kueri tersimpan.

Untuk membuka kueri tersimpan di Spreadsheet yang Terhubung, ikuti langkah-langkah berikut:

  1. Di konsol Google Cloud , buka halaman BigQuery.

    Buka BigQuery

  2. Di panel kiri, klik Explorer:

    Tombol yang ditandai untuk panel Explorer.

  3. Di panel Explorer, luaskan project Anda dan klik Queries. Temukan kueri tersimpan yang ingin Anda buka di Spreadsheet yang Terhubung.

  4. Klik Open actions di samping kueri tersimpan, lalu klik Open in > Connected Sheets.

    Atau, klik nama kueri tersimpan untuk membukanya di panel detail, lalu klik Open in > Connected Sheets.

Memantau penggunaan BigQuery dari Sheet yang Terhubung

Sebagai administrator BigQuery, Anda dapat memantau dan mengaudit konsumsi resource dari Sheet yang Terhubung untuk memahami pola penggunaan, mengelola biaya, dan mengidentifikasi laporan yang sering digunakan. Bagian berikut memberikan contoh kueri SQL untuk membantu Anda memantau penggunaan ini di tingkat organisasi dan project. Untuk mengetahui informasi selengkapnya, lihat Tampilan JOBS.

Semua kueri yang berasal dari Spreadsheet yang Terhubung diberi awalan ID tugas unik: sheets_dataconnector. Anda dapat menggunakan awalan ini untuk memfilter tugas di tampilan INFORMATION_SCHEMA.JOBS.

Menggabungkan penggunaan Sheet yang Terhubung menurut pengguna di tingkat organisasi

Kueri berikut memberikan ringkasan pengguna teratas yang menggunakan fitur Sheet yang Terhubung di organisasi Anda selama 30 hari terakhir, yang diurutkan berdasarkan total data yang ditagih. Kueri ini menggabungkan jumlah total kueri, total byte yang ditagih, dan total slot milidetik untuk setiap pengguna. Informasi ini berguna untuk memahami adopsi dan mengidentifikasi konsumen utama resource.

SELECT
  user_email,
  COUNT(*) AS total_queries,
  SUM(total_bytes_billed) AS total_bytes_billed,
  SUM(total_slot_ms) AS total_slot_ms
FROM
  `region-REGION_NAME.INFORMATION_SCHEMA.JOBS_BY_ORGANIZATION`
WHERE
  -- Filter for jobs created in the last 30 days
  creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
  -- Filter for jobs originating from Connected Sheets
  AND job_id LIKE 'sheets_dataconnector%'
  -- Filter for completed jobs
  AND state = 'DONE'
  AND (statement_type IS NULL OR statement_type <> 'SCRIPT')
GROUP BY
  1
ORDER BY
  total_bytes_billed DESC;

Ganti REGION_NAME dengan region untuk project Anda. Contoh, region-us.

Hasilnya akan terlihat mirip dengan berikut ini:

+---------------------+---------------+--------------------+-----------------+
| user_email          | total_queries | total_bytes_billed | total_slot_ms   |
+---------------------+---------------+--------------------+-----------------+
| alice@example.com   | 152           | 12000000000        | 3500000         |
| bob@example.com     | 45            | 8500000000         | 2100000         |
| charles@example.com | 210           | 1100000000         | 1800000         |
+---------------------+---------------+--------------------+-----------------+

Menemukan log tugas kueri Sheet yang Terhubung di tingkat organisasi

Kueri berikut memberikan log mendetail dari setiap tugas yang dijalankan oleh Spreadsheet yang Terhubung. Informasi ini berguna untuk mengaudit dan mengidentifikasi kueri spesifik yang berbiaya tinggi.

SELECT
  job_id,
  creation_time,
  user_email,
  project_id,
  total_bytes_billed,
  total_slot_ms
FROM
  `region-REGION_NAME.INFORMATION_SCHEMA.JOBS_BY_ORGANIZATION`
WHERE
  creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
  AND job_id LIKE 'sheets_dataconnector%'
  AND state = 'DONE'
  AND (statement_type IS NULL OR statement_type <> 'SCRIPT')
ORDER BY
  creation_time DESC;

Ganti REGION_NAME dengan region untuk project Anda. Contoh, region-us.

Hasilnya akan terlihat mirip dengan berikut ini:

+---------------------------------+---------------------------------+-----------------+------------+--------------------+---------------+
| job_id                          | creation_time                   | user_email      | project_id | total_bytes_billed | total_slot_ms |
+---------------------------------+---------------------------------+-----------------+------------+--------------------+---------------+
| sheets_dataconnector_bquxjob_1  | 2025-11-06 00:26:53.077000 UTC  | abc@example.com | my_project | 12000000000        | 3500000       |
| sheets_dataconnector_bquxjob_2  | 2025-11-06 00:24:04.294000 UTC  | xyz@example.com | my_project | 8500000000         | 2100000       |
| sheets_dataconnector_bquxjob_3  | 2025-11-03 23:17:25.975000 UTC  | bob@example.com | my_project | 1100000000         | 1800000       |
+---------------------------------+---------------------------------+-----------------+------------+--------------------+---------------+

Menggabungkan penggunaan Sheet yang Terhubung menurut pengguna di level project

Jika Anda tidak memiliki izin tingkat organisasi atau hanya perlu memantau project tertentu, jalankan kueri berikut untuk mengidentifikasi pengguna Lembar Terhubung teratas dalam project selama 30 hari terakhir. Kueri menggabungkan jumlah total kueri, total byte yang ditagih, dan total milidetik slot untuk setiap pengguna. Informasi ini berguna untuk memahami adopsi dan mengidentifikasi konsumen utama resource.

SELECT
  user_email,
  COUNT(*) AS total_queries,
  SUM(total_bytes_billed) AS total_bytes_billed,
  SUM(total_slot_ms) AS total_slot_ms
FROM
  -- This view queries the project you are currently running the query in.
  `region-REGION_NAME`.INFORMATION_SCHEMA.JOBS_BY_PROJECT
WHERE
  -- Filter for jobs created in the last 30 days
  creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
  -- Filter for jobs originating from Connected Sheets
  AND job_id LIKE 'sheets_dataconnector%'
  -- Filter for completed jobs
  AND state = 'DONE'
  AND (statement_type IS NULL OR statement_type <> 'SCRIPT')
GROUP BY
  user_email
ORDER BY
  total_bytes_billed DESC
LIMIT
  10;

Ganti REGION_NAME dengan region untuk project Anda. Contoh, region-us.

Hasilnya akan terlihat mirip dengan berikut ini:

+---------------------+---------------+--------------------+-----------------+
| user_email          | total_queries | total_bytes_billed | total_slot_ms   |
+---------------------+---------------+--------------------+-----------------+
| alice@example.com   | 152           | 12000000000        | 3500000         |
| bob@example.com     | 45            | 8500000000         | 2100000         |
| charles@example.com | 210           | 1100000000         | 1800000         |
+---------------------+---------------+--------------------+-----------------+

Menemukan log tugas kueri Sheet yang Terhubung di tingkat project

Jika Anda tidak memiliki izin tingkat organisasi atau hanya perlu memantau project tertentu, jalankan kueri berikut untuk melihat log mendetail semua kueri Spreadsheet yang Terhubung untuk project saat ini:

SELECT
  job_id,
  creation_time,
  user_email,
  total_bytes_billed,
  total_slot_ms,
  query
FROM
  -- This view queries the project you are currently running the query in.
  `region-REGION_NAME.INFORMATION_SCHEMA.JOBS_BY_PROJECT`
WHERE
  creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
  AND job_id LIKE 'sheets_dataconnector%'
  AND state = 'DONE'
  AND (statement_type IS NULL OR statement_type <> 'SCRIPT')
ORDER BY
  creation_time DESC;

Ganti REGION_NAME dengan region untuk project Anda. Contoh, region-us.

Hasilnya akan terlihat mirip dengan berikut ini:

+---------------------------------+---------------------------------+------------------+--------------------+-----------------+---------------------------------+
| job_id                          | creation_time                   | user_email       | total_bytes_billed | total_slot_ms   |  query                          |
+---------------------------------+---------------------------------+------------------+--------------------+-----------------+---------------------------------+
| sheets_dataconnector_bquxjob_1  | 2025-11-06 00:26:53.077000 UTC  | abc@example.com  | 12000000000        | 3500000         |  SELECT ... FROM dataset.table1 |
| sheets_dataconnector_bquxjob_2  | 2025-11-06 00:24:04.294000 UTC  | xyz@example.com  | 8500000000         | 2100000         |  SELECT ... FROM dataset.table2 |
| sheets_dataconnector_bquxjob_3  | 2025-11-03 23:17:25.975000 UTC  | bob@example.com  | 1100000000         | 1800000         |  SELECT ... FROM dataset.table3 |
+---------------------------------+---------------------------------+------------------+--------------------+-----------------+---------------------------------+

Pembersihan

Agar tidak menimbulkan tagihan ke akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini:

  1. Di Konsol Google Cloud , buka halaman Manage resources.

    Buka Kelola resource

  2. Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Delete.
  3. Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.

Langkah berikutnya