Petunjuk dan persyaratan penyiapan lab
Lindungi akun dan progres Anda. Selalu gunakan jendela browser pribadi dan kredensial lab untuk menjalankan lab ini.

Mempercepat Kueri Analisis menggunakan Columnar Engine AlloyDB

Lab 25 menit universal_currency_alt 1 Kredit show_chart Pengantar
info Lab ini mungkin menggabungkan alat AI untuk mendukung pembelajaran Anda.
Konten ini belum dioptimalkan untuk perangkat seluler.
Untuk pengalaman terbaik, kunjungi kami dengan komputer desktop menggunakan link yang dikirim melalui email.

GSP1087

Logo lab mandiri Google Cloud

Ringkasan

AlloyDB untuk PostgreSQL adalah layanan database yang kompatibel dengan PostgreSQL dan terkelola sepenuhnya untuk workload database perusahaan Anda yang paling berat. AlloyDB menggabungkan fitur-fitur terbaik Google dengan salah satu mesin database open source terpopuler, PostgreSQL, untuk memberikan performa, skala, dan ketersediaan yang unggul.

Columnar Engine dapat secara signifikan meningkatkan kecepatan pemrosesan pemindaian, penggabungan, dan agregasi SQL oleh AlloyDB. Columnar Engine menyediakan fitur berikut: 1) penyimpanan kolom yang berisi data tabel untuk kolom yang dipilih, yang disusun ulang ke dalam format berorientasi kolom dan 2) mesin eksekusi dan perencana kueri berbasis kolom untuk mendukung penggunaan penyimpanan kolom dalam kueri.

Di lab ini, Anda akan mempelajari fitur Columnar Engine AlloyDB.

Yang akan Anda lakukan

Di lab ini, Anda akan mempelajari cara melakukan tugas berikut:

  • Membuat Set Data Dasar Pengukuran untuk Menguji Columnar Engine
  • Menjalankan Pengujian Dasar Pengukuran
  • Memverifikasi Flag Database untuk Columnar Engine
  • Menetapkan atau Memverifikasi Ekstensi Database untuk Columnar Engine
  • Menguji Columnar Engine

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

  1. 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
  2. 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.
  3. 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.

  4. Klik Next.

  5. Salin Password di bawah dan tempel ke dialog Welcome.

    {{{user_0.password | "Password"}}}

    Anda juga dapat menemukan Password di panel Lab Details.

  6. 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.
  7. 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. Ikon Navigation menu dan kolom Search

Mengaktifkan Cloud Shell

Cloud Shell adalah mesin virtual yang dilengkapi dengan berbagai alat pengembangan. Mesin virtual ini menawarkan direktori beranda persisten berkapasitas 5 GB dan berjalan di Google Cloud. Cloud Shell menyediakan akses command-line untuk resource Google Cloud Anda.

  1. Klik Activate Cloud Shell Ikon Activate Cloud Shell di bagian atas Konsol Google Cloud.

  2. Klik jendela berikut:

    • Lanjutkan melalui jendela informasi Cloud Shell.
    • Beri otorisasi ke Cloud Shell untuk menggunakan kredensial Anda guna melakukan panggilan Google Cloud API.

Setelah terhubung, Anda sudah diautentikasi, dan project ditetapkan ke Project_ID, . Output berisi baris yang mendeklarasikan Project_ID untuk sesi ini:

Project Cloud Platform Anda dalam sesi ini disetel ke {{{project_0.project_id | "PROJECT_ID"}}}

gcloud adalah alat command line untuk Google Cloud. Alat ini sudah terinstal di Cloud Shell dan mendukung pelengkapan command line.

  1. (Opsional) Anda dapat menampilkan daftar nama akun yang aktif dengan perintah ini:
gcloud auth list
  1. Klik Authorize.

Output:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} Untuk menetapkan akun aktif, jalankan: $ gcloud config set account `ACCOUNT`
  1. (Opsional) Anda dapat menampilkan daftar ID project dengan perintah ini:
gcloud config list project

Output:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Catatan: Untuk mendapatkan dokumentasi gcloud yang lengkap di Google Cloud, baca panduan ringkasan gcloud CLI.

Tugas 1. Membuat Set Data Dasar Pengukuran untuk Menguji Columnar Engine

Di lingkungan lab ini, cluster dan instance AlloyDB disediakan saat Anda memulai lab.

  1. Di Konsol Google Cloud, klik Navigation menu Ikon Navigation menu > View all products. Kemudian, di bagian Databases, pilih AlloyDB for PostgreSQL.

Di halaman AlloyDB, ada cluster bernama lab-cluster dan instance bernama lab-instance. Perlu waktu beberapa menit untuk membuat dan menginisialisasi instance sepenuhnya.

Tunggu hingga Anda melihat tanda centang hijau (status Siap) di samping instance bernama lab-instance di kolom Resource name sebelum Anda melanjutkan ke langkah berikutnya.

  1. Di baris untuk instance bernama lab-instance, di bagian Private IP address, salin Private IP address (seperti 10.100.0.2) ke file teks agar Anda dapat menempelkan nilai tersebut pada langkah berikutnya. Jangan sertakan titik dua dan nomor port (:5432).

Untuk mengevaluasi kemampuan Columnar Engine, Anda memerlukan set data berukuran besar untuk mengukur performa. Pada langkah berikutnya, Anda akan menggunakan alat PostgreSQL, yaitu pgbench, untuk membuat set data sintetis guna mengevaluasi Columnar Engine.

  1. Dari Navigation menu (Ikon Navigation menu), di bagian Compute Engine, klik VM instances.

  2. Untuk instance bernama alloydb-client, di kolom Connect, klik SSH untuk membuka jendela terminal.

  3. Tentukan variabel lingkungan berikut dengan mengganti ALLOYDB_ADDRESS dengan alamat Private IP instance AlloyDB.

export ALLOYDB=ALLOYDB_ADDRESS
  1. Jalankan perintah berikut untuk menyimpan alamat Private IP instance AlloyDB di VM klien AlloyDB agar tetap ada selama lab.
echo $ALLOYDB > alloydbip.txt
  1. Langkah pertama dalam menggunakan pgbench adalah membuat dan mengisi tabel sampel. Jalankan perintah berikut untuk membuat set empat tabel. Anda akan diminta memasukkan sandi pengguna postgres, yaitu Change3Me.

Tabel terbesar pgbench_accounts akan dimuat dengan 50 juta baris. Operasi ini membutuhkan waktu beberapa menit hingga selesai.

pgbench -h $ALLOYDB -U postgres -i -s 500 -F 90 -n postgres dropping old tables... NOTICE: table "pgbench_accounts" does not exist, skipping NOTICE: table "pgbench_branches" does not exist, skipping NOTICE: table "pgbench_history" does not exist, skipping NOTICE: table "pgbench_tellers" does not exist, skipping creating tables... generating data (client-side)... 50000000 of 50000000 tuples (100%) done (elapsed 91.26 s, remaining 0.00 s) creating primary keys... done in 167.61 s (drop tables 0.00 s, create tables 0.01 s, client-side generate 93.16 s, primary keys 74.43 s).
  1. Buat koneksi ke klien psql dan jalankan kueri berikut untuk memverifikasi jumlah baris dalam tabel pgbench_accounts. Anda akan diminta memasukkan sandi pengguna postgres, yaitu Change3Me.
psql -h $ALLOYDB -U postgres select count (*) from pgbench_accounts; count ---------- 50000000 (1 row)

Klik Periksa progres saya untuk memverifikasi tujuan. Membuat set data dasar pengukuran

Tugas 2. Menjalankan Pengujian Dasar Pengukuran

Untuk tujuan evaluasi, Anda dapat menjalankan kueri yang sangat sederhana yang melakukan pemindaian berurutan, lalu menggunakan rencana kueri penjelasan untuk kueri tersebut sebelum dan setelah menambahkan tabel pengujian ke Columnar Engine.

  1. Kembali ke shell alloydb-client. Klien psql harus tetap aktif. Jika tidak, hubungkan kembali menggunakan petunjuk di Tugas 1. Jalankan kueri berikut untuk mengaktifkan pengaturan waktu untuk semua operasi kueri.
\timing on
  1. Selanjutnya, jalankan kueri berikut untuk mengevaluasi runtime. Kueri ini melakukan pemindaian berurutan pada seluruh tabel pgbench_accounts.

Catatan: Contoh kueri ini memiliki batas 20 baris yang ditampilkan karena ini untuk tujuan demonstrasi.

SELECT aid, bid, abalance FROM pgbench_accounts WHERE bid < 189 OR abalance > 100 LIMIT 20; aid | bid | abalance -----+-----+---------- 1 | 1 | 0 2 | 1 | 0 3 | 1 | 0 4 | 1 | 0 5 | 1 | 0 6 | 1 | 0 7 | 1 | 0 8 | 1 | 0 9 | 1 | 0 10 | 1 | 0 11 | 1 | 0 12 | 1 | 0 13 | 1 | 0 14 | 1 | 0 15 | 1 | 0 16 | 1 | 0 17 | 1 | 0 18 | 1 | 0 19 | 1 | 0 20 | 1 | 0 (20 rows)
  1. Jalankan kueri berikut untuk membuat rencana penjelasan untuk kueri yang tidak dibatasi. Nilai Anda akan terlihat mirip dengan yang ada di contoh output, tetapi akan bervariasi karena pembuatan data bersifat acak.
Catatan: Anda mungkin harus menekan tombol spasi untuk melihat rencana penjelasan kueri berikutnya. EXPLAIN (ANALYZE,COSTS,SETTINGS,BUFFERS,TIMING,SUMMARY,WAL,VERBOSE) SELECT count(*) FROM pgbench_accounts WHERE bid < 189 OR abalance > 100; QUERY PLAN --------------------------------------------------------------------------------------------------------------- --------------------------------------------------- Finalize Aggregate (cost=1242226.53..1242226.54 rows=1 width=8) (actual time=11010.409..11014.083 rows=1 loop s=1) Output: count(*) Buffers: shared hit=20921 read=888170 I/O Timings: read=19536.769 -> Gather (cost=1242226.32..1242226.53 rows=2 width=8) (actual time=11010.398..11014.075 rows=3 loops=1) Output: (PARTIAL count(*)) Workers Planned: 2 Workers Launched: 2 Buffers: shared hit=20921 read=888170 I/O Timings: read=19536.769 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ !! Section removed for pasting !! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Filter: ((pgbench_accounts.bid < 189) OR (pgbench_accounts.abalance > 100)) Rows Removed by Filter: 10400000 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ !! Section removed for pasting !! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Buffers: shared hit=6 Planning Time: 0.117 ms Execution Time: 11014.169 ms (38 rows)
  1. Pada hasilnya, perhatikan nilai Planning Time dan Execution Time. Dalam contoh output, Planning Time-nya adalah 0,117 milidetik dan Execution Time-nya adalah 11.014,169 milidetik atau 11,014 detik. Nilai Anda akan terlihat mirip dengan yang ada di contoh output, tetapi akan bervariasi karena pembuatan data bersifat acak.

  2. Salin nilai Planning Time dan Execution Time dari kueri yang Anda jalankan ke file teks agar Anda dapat membandingkannya nanti dengan hasil setelah Columnar Engine diaktifkan. Anda juga dapat menyalin seluruh hasil rencana kueri ke file teks.

  3. Tekan tombol Q untuk menutup rencana kueri.

Tugas 3. Memverifikasi Flag Database untuk Columnar Engine

Dalam tugas ini, Anda akan memeriksa flag database Columnar Engine di instance Anda.

  1. Di Konsol Google Cloud, klik Navigation menu (Ikon Navigation menu) > View all products. Kemudian, di bagian Databases, pilih AlloyDB for PostgreSQL.

  2. Pada baris untuk instance bernama lab-instance, klik Actions (ikon dengan tiga titik vertikal), lalu klik Edit.

  3. Luaskan bagian yang bernama Advanced Configuration Options.

  4. Di bagian Flags, klik Add a database flag.

  5. Klik Choose a flag untuk menjelajahi daftar flag yang tersedia guna mengetahui opsi yang didukung.

Perhatikan bahwa flag bernama google_columnar_engine.enabled sudah diaktifkan (status on). Anda tidak akan menambahkan flag ekstra sebagai bagian dari lab ini.

  1. Klik Cancel untuk keluar dari halaman instance Edit.

Tugas 4. Menetapkan atau Memverifikasi Ekstensi Database untuk Columnar Engine

Melanjutkan bagian sebelumnya, dalam tugas ini, Anda akan menyiapkan ekstensi database guna mengaktifkan fitur Columnar Engine sepenuhnya untuk cluster AlloyDB.

Tidak seperti mengonfigurasi flag, Anda harus terhubung ke instance melalui klien psql untuk mengaktifkan ekstensi database.

  1. Kembali ke shell alloydb-client. Klien psql harus tetap aktif. Jika tidak, hubungkan kembali menggunakan petunjuk di Tugas 1.

  2. Pastikan Anda terhubung ke database postgres dengan menjalankan kueri berikut.

\c postgres
  1. Jalankan kueri sistem berikut untuk melihat detail tentang ekstensi yang diaktifkan di database.
Catatan: Daftar ekstensi Anda mungkin berbeda. \dx List of installed extensions Name | Version | Schema | Description ------------------------+---------+------------+--------------------------------------- google_columnar_engine | 1.0 | public | Google extension for columnar engine google_db_advisor | 1.0 | public | Google extension for Database Advisor hypopg | 1.3.2 | public | Hypothetical indexes for PostgreSQL plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language (4 rows)
  1. Jika google_columnar_engine muncul dalam daftar, lanjutkan ke tugas berikutnya (Tugas 5). Jika google_columnar_engine tidak muncul dalam daftar, jalankan perintah berikut.
CREATE EXTENSION IF NOT EXISTS google_columnar_engine;
  1. Jalankan kembali kueri ekstensi untuk mengonfirmasi bahwa ekstensi google_columnar_engine diaktifkan.
\dx

Tugas 5. Menguji Columnar Engine

Karena tabel utama Anda ( pgbench_accounts) relatif kecil, Anda dapat menambahkannya langsung ke Columnar Engine untuk evaluasi. Dalam deployment di dunia nyata, Anda akan menggunakan framework rekomendasi Columnar Engine untuk mengidentifikasi secara otomatis kolom yang paling banyak digunakan di semua tabel yang akan memberikan manfaat paling besar jika dikelola oleh mesin.

  1. Kembali ke shell alloydb-client. Jalankan kueri berikut untuk menambahkan pgbench_accounts ke columnar engine. Kueri ini membutuhkan waktu beberapa menit hingga selesai.
SELECT google_columnar_engine_add('pgbench_accounts');
  1. Selanjutnya, jalankan kueri rencana penjelasan yang sama seperti yang Anda lakukan sebelumnya untuk melihat efek Columnar Engine. Nilai Anda akan terlihat mirip dengan yang ada di contoh output, tetapi akan bervariasi karena pembuatan data bersifat acak.
EXPLAIN (ANALYZE,COSTS,SETTINGS,BUFFERS,TIMING,SUMMARY,WAL,VERBOSE) SELECT count(*) FROM pgbench_accounts WHERE bid < 189 OR abalance > 100; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Finalize Aggregate (cost=142400.72..142400.73 rows=1 width=8) (actual time=75.948..78.680 rows=1 loops=1) Output: count(*) -> Gather (cost=142400.51..142400.72 rows=2 width=8) (actual time=71.555..78.667 rows=3 loops=1) Output: (PARTIAL count(*)) Workers Planned: 2 Workers Launched: 2 -> Partial Aggregate (cost=141400.51..141400.52 rows=1 width=8) (actual time=45.768..45.771 rows=1 loops=3) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Section removed for pasting ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Rows Removed by Columnar Filter: 10400000 Rows Aggregated by Columnar Scan: 4505600 Columnar cache search mode: native ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Section removed for pasting ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Buffers: shared hit=22 read=3 dirtied=1 I/O Timings: read=0.560 Planning Time: 2.022 ms Execution Time: 78.804 ms (29 rows)
  1. Pada hasilnya, perhatikan nilai Planning Time dan Execution Time. Dalam contoh Pasca-Columnar Engine, Planning Time-nya adalah 2.022 milidetik dan Execution Time-nya adalah 78.804 milidetik. Nilai Anda akan terlihat mirip dengan yang ada di contoh output, tetapi akan bervariasi karena pembuatan data bersifat acak.

  2. Dari contoh yang diberikan, perbedaan antara Execution Time (Waktu Eksekusi) Pra-Columnar Engine dan Pasca-Columnar Engine adalah 10.935,365 milidetik atau 10,9 detik. Hal itu merupakan penurunan 141 kali. Dalam contoh Pasca-Columnar Engine, perhatikan juga bahwa lebih dari 4,5 juta baris digabungkan menggunakan pemindaian berbasis kolom, bukan mesin database inti.

Klik Periksa progres saya untuk memverifikasi tujuan. Menguji Columnar Engine

Catatan: Jika setelah menyelesaikan semua tugas dan skor Anda tidak sepenuhnya diperbarui, perluas kotak Checkpoint penilaian (sidebar kuning di sisi kanan halaman), lalu klik Periksa progres saya untuk setiap tugas agar skor diperbarui.

Selamat!

Anda telah mempelajari berbagai fitur canggih dari Columnar Engine AlloyDB.

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 16 Januari 2025

Lab Terakhir Diuji pada 15 Desember 2025

Hak cipta 2026 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.

Sebelum memulai

  1. Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
  2. Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
  3. Di kiri atas layar, klik Start lab untuk memulai

Gunakan penjelajahan rahasia

  1. Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
  2. Klik Open console dalam mode pribadi

Login ke Konsol

  1. Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
  2. Setujui persyaratan, dan lewati halaman resource pemulihan
  3. Jangan klik End lab kecuali jika Anda sudah menyelesaikan lab atau ingin mengulanginya, karena tindakan ini akan menghapus pekerjaan Anda dan menghapus project

Konten ini tidak tersedia untuk saat ini

Kami akan memberi tahu Anda melalui email saat konten tersedia

Bagus!

Kami akan menghubungi Anda melalui email saat konten tersedia

Satu lab dalam satu waktu

Konfirmasi untuk mengakhiri semua lab yang ada dan memulai lab ini

Gunakan penjelajahan rahasia untuk menjalankan lab

Menggunakan jendela Samaran atau browser pribadi adalah cara terbaik untuk menjalankan lab ini. Langkah ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa, yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.