GSP408

Ringkasan
BigQuery adalah database analisis Google yang terkelola sepenuhnya, tanpa pengoperasian (NoOps), dan hemat biaya. Dengan BigQuery, Anda dapat mengkueri data berskala terabyte tanpa perlu mengelola infrastruktur atau memiliki administrator database. BigQuery menggunakan SQL dan Anda dapat memanfaatkan model bayar sesuai penggunaan. Dengan BigQuery, Anda dapat berfokus pada analisis data untuk menemukan insight yang bermakna.
Set data e-commerce yang baru tersedia dan memiliki jutaan kumpulan data Google Analytics untuk Google Merchandise Store telah dimuat ke dalam BigQuery. Anda memiliki salinan set data tersebut untuk lab ini dan akan menjelajahi kolom dan baris yang tersedia untuk mendapatkan insight.
Lab ini akan memandu Anda memahami logika kueri pemecahan masalah dan menyediakan beragam aktivitas dalam konteks skenario dunia nyata. Di sepanjang lab ini, bayangkan Anda bekerja dengan seorang analis data baru di tim Anda yang memberikan kueri di bawah untuk menjawab beberapa pertanyaan terkait set data e-commerce Anda. Gunakan jawaban atas pertanyaan tersebut untuk memperbaiki kuerinya guna mendapatkan hasil yang bermakna.
Yang akan Anda pelajari
Di lab ini, Anda akan mempelajari cara melakukan tugas berikut:
- Menyematkan project ke hierarki resource BigQuery
- Menggunakan editor kueri dan validator kueri BigQuery untuk mengidentifikasi dan memecahkan masalah error logika dan sintaksis SQL
Penyiapan dan persyaratan
Sebelum mengklik tombol Start Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer yang dimulai saat Anda mengklik Start Lab akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab interaktif ini dapat Anda gunakan untuk melakukan aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
- Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
- Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Google Cloud Console
-
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri ada panel Lab Details yang berisi hal-hal berikut:
- Tombol Open Google Cloud console
- Waktu tersisa
- Kredensial sementara yang harus Anda gunakan untuk lab ini
- Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
-
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
-
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab Details.
-
Klik Next.
-
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab Details.
-
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
-
Klik halaman berikutnya:
- Setujui persyaratan dan ketentuan.
- Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
- Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
Tugas 1. Menyematkan project ke hierarki resource BigQuery
- Di Konsol Google Cloud, pada Navigation menu (
), klik BigQuery.
Kotak pesan Welcome to BigQuery pada Konsol Cloud akan terbuka.
Catatan: Kotak pesan Welcome to BigQuery pada Konsol Cloud menampilkan link ke panduan memulai dan update UI.
-
Klik Done.
-
Set data publik BigQuery tidak ditampilkan secara default. Untuk membuka project set data publik, salin data-to-insights (untuk ditempelkan dalam dialog pada langkah berikutnya).
-
Klik + Add > Star a project by name lalu tempel nama data-to-insights.
-
Klik Star.
Project data-to-insights
dicantumkan pada bagian Explorer.
Editor kueri dan validator kueri BigQuery
Untuk setiap aktivitas di bagian-bagian selanjutnya, lab ini menyediakan kueri dengan error umum yang harus Anda pecahkan. Lab akan mengarahkan Anda pada hal yang perlu diperhatikan serta menyarankan cara memperbaiki sintaksis dan menampilkan hasil yang bermakna.
Untuk mengikuti pemecahan masalah dan saran yang diberikan, salin dan tempel kueri ke editor kueri BigQuery. Jika terjadi error, Anda akan melihat tanda seru merah pada baris yang berisi error dan di validator kueri (pojok bawah).

Jika Anda menjalankan kueri yang berisi error, kueri tersebut akan gagal dan error-nya akan diuraikan di Job information.

Jika kueri bebas dari error, Anda akan melihat tanda centang hijau di validator kueri. Jika tanda centang hijau ditampilkan, klik Run untuk menjalankan kueri dan melihat hasil yang akan Anda dapatkan.

Catatan:
Untuk informasi tentang sintaksis, lihat Sintaksis Kueri SQL Standar.
Tugas 2. Menemukan jumlah total pelanggan yang menyelesaikan proses checkout
Sasaran Anda di bagian ini adalah membuat kueri yang memberikan jumlah pengunjung unik yang berhasil menyelesaikan proses checkout untuk situs Anda. Data ini terdapat dalam tabel rev_transactions yang disediakan tim analis data Anda. Data ini juga memberikan contoh kueri untuk membantu Anda memulai analisis, tetapi Anda tidak yakin apakah kueri tersebut ditulis dengan benar atau tidak.
Catatan:
Semua kueri harus dijalankan dan bebas error untuk mendapatkan skor penuh.
Memecahkan masalah kueri yang berisi error koma, alias, dan validator kueri
- Lihat kueri di bawah dan jawab pertanyaan berikut:
#standardSQL
SELECT FROM `data-to-inghts.ecommerce.rev_transactions` LIMIT 1000
- Bagaimana dengan kueri yang telah diperbarui ini?
#standardSQL
SELECT * FROM [data-to-insights:ecommerce.rev_transactions] LIMIT 1000
- Bagaimana dengan kueri yang menggunakan SQL Standar ini?
#standardSQL
SELECT FROM `data-to-insights.ecommerce.rev_transactions`
- Bagaimana dengan yang ini? Kueri ini memiliki kolom:
#standardSQL
SELECT
fullVisitorId
FROM `data-to-insights.ecommerce.rev_transactions`
- Bagaimana dengan yang ini? Kueri ini memiliki judul halaman:
#standardSQL
SELECT fullVisitorId hits_page_pageTitle
FROM `data-to-insights.ecommerce.rev_transactions` LIMIT 1000
- Bagaimana dengan yang ini? Koma yang hilang telah dikoreksi.
#standardSQL
SELECT
fullVisitorId
, hits_page_pageTitle
FROM `data-to-insights.ecommerce.rev_transactions` LIMIT 1000
Jawaban: Kueri ini menampilkan hasil, tetapi apakah Anda yakin pengunjung tidak dihitung dua kali? Selain itu, dengan hanya menampilkan satu baris, kueri ini menjawab pertanyaan berapa banyak pengunjung unik yang menyelesaikan proses checkout.
Di bagian berikutnya, Anda akan mempelajari cara menggabung hasil.
Memecahkan masalah kueri yang berisi error logika, pernyataan GROUP BY, dan filter karakter pengganti
- Gabung kueri berikut untuk menjawab pertanyaan: Berapa banyak pengunjung unik yang menyelesaikan proses checkout?
#standardSQL
SELECT
fullVisitorId
, hits_page_pageTitle
FROM `data-to-insights.ecommerce.rev_transactions` LIMIT 1000
- Bagaimana dengan yang ini? Fungsi agregasi
COUNT()
telah ditambahkan:
#standardSQL
SELECT
COUNT(fullVisitorId) AS visitor_count
, hits_page_pageTitle
FROM `data-to-insights.ecommerce.rev_transactions`
- Dalam kueri berikut, pernyataan
GROUP BY
dan DISTINCT
ditambahkan:
#standardSQL
SELECT
COUNT(DISTINCT fullVisitorId) AS visitor_count
, hits_page_pageTitle
FROM `data-to-insights.ecommerce.rev_transactions`
GROUP BY hits_page_pageTitle
Hasil 
Bagus. Hasilnya baik, tetapi terlihat aneh.
- Filter untuk hanya menampilkan "Checkout Confirmation" dalam hasil:
#standardSQL
SELECT
COUNT(DISTINCT fullVisitorId) AS visitor_count
, hits_page_pageTitle
FROM `data-to-insights.ecommerce.rev_transactions`
WHERE hits_page_pageTitle = "Checkout Confirmation"
GROUP BY hits_page_pageTitle
Klik Check my progress untuk memverifikasi tujuan.
Menemukan jumlah total pelanggan yang menyelesaikan proses checkout
Tugas 3. Menampilkan daftar kota dengan jumlah transaksi terbanyak di situs e-commerce Anda
Catatan:
Semua kueri harus dijalankan dan bebas error untuk mendapatkan skor penuh.
Memecahkan masalah pengurutan, kolom kalkulasi, dan pemfilteran setelah menggabung error
- Lengkapi kueri yang baru ditulis sebagian berikut:
SELECT
geoNetwork_city,
totals_transactions,
COUNT( DISTINCT fullVisitorId) AS distinct_visitors
FROM
`data-to-insights.ecommerce.rev_transactions`
GROUP BY
Solusi yang mungkin:
#standardSQL
SELECT
geoNetwork_city,
SUM(totals_transactions) AS totals_transactions,
COUNT( DISTINCT fullVisitorId) AS distinct_visitors
FROM
`data-to-insights.ecommerce.rev_transactions`
GROUP BY geoNetwork_city
- Perbarui kueri sebelumnya untuk mengurutkan kota teratas terlebih dahulu.
Solusi yang mungkin:
#standardSQL
SELECT
geoNetwork_city,
SUM(totals_transactions) AS totals_transactions,
COUNT( DISTINCT fullVisitorId) AS distinct_visitors
FROM
`data-to-insights.ecommerce.rev_transactions`
GROUP BY geoNetwork_city
ORDER BY distinct_visitors DESC
- Perbarui kueri Anda dan buat kolom kalkulasi baru untuk menampilkan jumlah rata-rata produk per pesanan menurut kota.
Solusi yang mungkin:
#standardSQL
SELECT
geoNetwork_city,
SUM(totals_transactions) AS total_products_ordered,
COUNT( DISTINCT fullVisitorId) AS distinct_visitors,
SUM(totals_transactions) / COUNT( DISTINCT fullVisitorId) AS avg_products_ordered
FROM
`data-to-insights.ecommerce.rev_transactions`
GROUP BY geoNetwork_city
ORDER BY avg_products_ordered DESC
Hasil

Filter hasil gabungan Anda agar hanya menampilkan kota yang memiliki lebih dari 20 avg_products_ordered.
- Apa yang salah dengan kueri berikut?
#standardSQL
SELECT
geoNetwork_city,
SUM(totals_transactions) AS total_products_ordered,
COUNT( DISTINCT fullVisitorId) AS distinct_visitors,
SUM(totals_transactions) / COUNT( DISTINCT fullVisitorId) AS avg_products_ordered
FROM
`data-to-insights.ecommerce.rev_transactions`
WHERE avg_products_ordered > 20
GROUP BY geoNetwork_city
ORDER BY avg_products_ordered DESC
Solusi yang mungkin:
#standardSQL
SELECT
geoNetwork_city,
SUM(totals_transactions) AS total_products_ordered,
COUNT( DISTINCT fullVisitorId) AS distinct_visitors,
SUM(totals_transactions) / COUNT( DISTINCT fullVisitorId) AS avg_products_ordered
FROM
`data-to-insights.ecommerce.rev_transactions`
GROUP BY geoNetwork_city
HAVING avg_products_ordered > 20
ORDER BY avg_products_ordered DESC
Klik Check my progress untuk memverifikasi tujuan.
Menampilkan daftar kota dengan jumlah transaksi terbanyak di situs e-commerce Anda
Tugas 4. Menemukan jumlah total produk di tiap kategori produk
Catatan:
Semua kueri harus dijalankan dan bebas error untuk mendapatkan skor penuh.
Menemukan produk terlaris menggunakan pemfilteran dengan nilai NULL
- Apa yang salah dengan kueri berikut? Bagaimana cara memperbaikinya?
#standardSQL
SELECT hits_product_v2ProductName, hits_product_v2ProductCategory
FROM `data-to-insights.ecommerce.rev_transactions`
GROUP BY 1,2
- Apa yang salah dengan kueri berikut?
#standardSQL
SELECT
COUNT(hits_product_v2ProductName) as number_of_products,
hits_product_v2ProductCategory
FROM `data-to-insights.ecommerce.rev_transactions`
WHERE hits_product_v2ProductName IS NOT NULL
GROUP BY hits_product_v2ProductCategory
ORDER BY number_of_products DESC
- Perbarui kueri sebelumnya agar hanya menghitung produk berbeda di setiap kategori produk.
Solusi yang mungkin:
#standardSQL
SELECT
COUNT(DISTINCT hits_product_v2ProductName) as number_of_products,
hits_product_v2ProductCategory
FROM `data-to-insights.ecommerce.rev_transactions`
WHERE hits_product_v2ProductName IS NOT NULL
GROUP BY hits_product_v2ProductCategory
ORDER BY number_of_products DESC
LIMIT 5
Catatan:
(not set) dapat mengindikasikan bahwa produk tidak memiliki kategori
${productitem.product.origCatName} adalah kode front-end untuk merender kategori yang dapat mengindikasikan bahwa skrip pelacakan Google Analytics dijalankan sebelum halaman dirender sepenuhnya
Klik Check my progress untuk memverifikasi tujuan.
Menemukan jumlah total produk di setiap kategori produk
Selamat!
Anda telah memecahkan masalah dan memperbaiki kueri yang rusak di SQL standar BigQuery. Ingatlah untuk menggunakan Validator Kueri guna menemukan sintaksis kueri yang salah, dan tetap cermati hasil kueri Anda meskipun kueri tersebut berhasil dijalankan.
Langkah berikutnya/Pelajari lebih lanjut
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 26 Agustus 2024
Lab Terakhir Diuji pada 26 Agustus 2024
Hak cipta 2025 Google LLC. Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.