Tim BigQuery telah mengembangkan kemampuan untuk memperlakukan Google Spreadsheet seperti tabel dalam database. Artinya, Anda dapat menggabungkan tabel BigQuery dengan miliaran baris dengan tabel pemetaan 100 baris yang Anda ketik ke dalam spreadsheet dalam satu kueri.
Fitur ini memungkinkan Anda mengonfigurasi model data, membuat pipeline data untuk data ad hoc, atau membandingkan angka terbaru dengan sasaran dan proyeksi terbaru Anda.
Contoh
Misalnya, Anda mungkin ingin membuat model nama pengguna di Looker yang dikumpulkan menggunakan formulir Google.
Untuk mengumpulkan dan membuat model informasi di Looker, Anda harus melakukan langkah-langkah berikut:
- Dengan Google Formulir, kumpulkan data ke dalam spreadsheet Google. Setiap pengiriman akan menambahkan baris di sheet.
- Bagikan spreadsheet dengan akun layanan yang Anda gunakan untuk terhubung ke Looker, atau berikan akses kepada pengguna dengan link (hanya lihat).
- Pastikan Drive API dan Sheets API diaktifkan untuk project Anda.
- Buat tabel dari antarmuka BigQuery yang mendapatkan kontennya dari spreadsheet.
- Di project Looker, buat model data yang menggabungkan tabel spreadsheet dengan data pengguna lain yang mungkin sudah Anda kumpulkan, seperti lokasi pengguna. Anda juga dapat menggunakan SQL untuk menormalisasi nama yang berasal dari database. Data dapat di-cache di BigQuery untuk menghindari beban berat pada spreadsheet.
Berikut adalah contoh tampilan LookML yang dihasilkan:
explore: names_sheet { persist_for: "60 seconds" join: names_facts { sql_on: ${names_sheet.normalized_name} = ${names_facts.normalized_name} ;; sql_where: ${names_facts.city} ;; relationship: one_to_one } view_name: names_sheet { derived_table: { persist_for: "2 minutes" sql: SELECT row_number() OVER() as id, name, UPPER(CASE WHEN REGEXP_MATCH(name, r'\,') THEN REGEXP_EXTRACT(name, r', (\w+)') ELSE REGEXP_EXTRACT(name, r'^(\w+)') END ) as normalized_name FROM namesheet.names ;; } dimension: id { type: number } dimension: name { order_by_field: id # keep the rows in the original order } dimension: normalized_name { } measure: count { type: count drill_fields: [id, name, names_facts.city] } measure: count_from_new_york_city { type: count filters: [names_facts.city: "New York City"] } measure: percentage_from_new_york_city { type: number sql: ${count_from_new_york_city}/${count} ;; value_format_name: percent_2 } measure: average_age_median { type: average sql: ${names_facts.age_median} ;; value_format: "0000" } } }
Dari model ini, Anda dapat membuat Jelajahan dengan data Anda dan membuat Tampilan serta dasbor yang menampilkan metrik tentang semua nama pengguna yang telah Anda kumpulkan dari Google Formulir dan dimasukkan ke Google Spreadsheet, serta informasi lain tentang setiap pengguna.