Membuat dan memperbarui penghitung di Bigtable
Pelajari cara membuat dan memperbarui penghitung di Bigtable menggunakan agregat,
sel tabel yang menggabungkan nilai pada waktu penulisan. Panduan memulai ini menggunakan Google Cloud CLI dan cbt
CLI untuk membuat tiga penghitung:
- Penghitung yang menyimpan total berjalan
- Penghitung yang melacak nilai minimum dari semua nilai yang ditambahkan
- Penghitung yang melacak maksimum semua nilai yang ditambahkan
Sebelum memulai
-
Sign in to your Google Account.
If you don't already have one, sign up for a new account.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Update and install
gcloud
components:gcloud components update
gcloud components install cbt -
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Bigtable API and Cloud Bigtable Admin API APIs:
gcloud services enable bigtable.googleapis.com
bigtableadmin.googleapis.com - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Update and install
gcloud
components:gcloud components update
gcloud components install cbt -
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Bigtable API and Cloud Bigtable Admin API APIs:
gcloud services enable bigtable.googleapis.com
bigtableadmin.googleapis.com - Jalankan perintah berikut untuk memastikan gcloud CLI sudah
yang terbaru dan menyertakan
CLI
cbt
:gcloud components update
gcloud components install cbt
Membuat instance Bigtable
Gunakan perintah
bigtable instances create
untuk membuat instance.gcloud bigtable instances create counters-quickstart-instance \ --display-name="Counters quickstart instance" \ --cluster-config=id="counters-quickstart-cluster",zone="us-east1-c"
Menghubungkan ke instance
Konfigurasikan
cbt
CLI untuk menggunakan project dan instance Anda dengan membuat file.cbtrc
.echo project = PROJECT_ID >> ~/.cbtrc && echo instance = counters-quickstart-instance >> ~/.cbtrc
Ganti PROJECT_ID dengan ID project yang Anda gunakan.
Pastikan Anda menyiapkan file
.cbtrc
dengan benar.cat ~/.cbtrc
Terminal menampilkan isi file
.cbtrc
, yang terlihat mirip dengan berikut:project = PROJECT_ID instance = counters-quickstart-instance
Sekarang Anda dapat menggunakan
cbt
CLI dengan instance Anda.
Membuat tabel dengan keluarga kolom gabungan
Gunakan perintah
cbt createtable
untuk membuat tabel bernamacounters_quickstart_table
yang memiliki tiga keluarga kolom agregat. Konfigurasikan setiap grup kolom dengan jenis agregasi yang berbeda:- Grup kolom
max_family
adalah jenisMax
dengan jenis inputInteger
. - Grup kolom
min_family
adalah jenisMin
dengan jenis inputInteger
. - Grup kolom
sum_family
adalah jenisSum
dengan jenis inputInteger
.
cbt createtable counters_quickstart_table families=sum_family:never:intsum,min_family:never:intmin,max_family:never:intmax
- Grup kolom
Buat daftar keluarga kolom dengan menjalankan perintah
cbt ls
.cbt ls counters_quickstart_table
Shell menampilkan output yang mirip dengan berikut ini:
Family Name GC Policy ----------- --------- max_family <never> min_family <never> sum_family <never>
Membuat penghitung di tabel
Gunakan perintah
cbt addtocell
untuk menulis nilai awal5
ke kolom baru di setiap tiga grup kolom, menggunakan kunci barisrow-key1
dan stempel waktu0
. Operasi ini membuat sel gabungan, yang Anda gunakan sebagai penghitung.cbt addtocell counters_quickstart_table row-key1 sum_family:sum_column=5@0 cbt addtocell counters_quickstart_table row-key1 min_family:min_column=5@0 cbt addtocell counters_quickstart_table row-key1 max_family:max_column=5@0
Membaca data
Untuk melihat nilai penghitung sebagai bilangan bulat, bukan byte, tentukan file
yaml
yang dapat digunakan olehcbt
CLI untuk memformat output. Jalankan perintah berikut:echo "families:" > cbtformat.yaml echo " max_family:" >> cbtformat.yaml echo " default_encoding: BigEndian" >> cbtformat.yaml echo " default_type: INT64" >> cbtformat.yaml echo " min_family:" >> cbtformat.yaml echo " default_encoding: BigEndian" >> cbtformat.yaml echo " default_type: INT64" >> cbtformat.yaml echo " sum_family:" >> cbtformat.yaml echo " default_encoding: BigEndian" >> cbtformat.yaml echo " default_type: INT64" >> cbtformat.yaml
Pastikan Anda menyiapkan file
cbtformat.yaml
dengan benar.cat ~/cbtformat.yaml
Terminal menampilkan isi file
cbtformat.yaml
, yang terlihat mirip dengan yang berikut:families: max_family: default_encoding: BigEndian default_type: INT64 min_family: default_encoding: BigEndian default_type: INT64 sum_family: default_encoding: BigEndian default_type: INT64
Gunakan perintah
cbt read
untuk meneruskan fileyaml
dan membaca data yang Anda tambahkan ke tabel. Tabel kini memiliki tiga kolom, masing-masing dengan jenis agregasi yang berbeda.cbt read counters_quickstart_table format-file=$HOME/cbtformat.yaml
Shell menampilkan output yang mirip dengan berikut ini. Nilai diformat sebagai bilangan bulat, dan stempel waktu dalam format UTC.
row-key1 max_family:max_column @ 1970/01/01-00:00:00.000000 5 min_family:min_column @ 1970/01/01-00:00:00.000000 5 sum_family:sum_column @ 1970/01/01-00:00:00.000000 5
Memperbarui penghitung
Tambahkan nilai 3 ke setiap kolom dalam tabel, menggunakan stempel waktu yang sama yang Anda gunakan saat membuat sel. Di setiap kolom, nilai sel digabungkan dengan nilai yang ada berdasarkan jenis agregasi sel.
cbt addtocell counters_quickstart_table row-key1 sum_family:sum_column=3@0 cbt addtocell counters_quickstart_table row-key1 min_family:min_column=3@0 cbt addtocell counters_quickstart_table row-key1 max_family:max_column=3@0
Gunakan kembali perintah
cbt read
untuk membaca data dalam tabel. Setiap sel kini berisi nilai gabungan.cbt read counters_quickstart_table format-file=$HOME/cbtformat.yaml
sum_column
berisi jumlah 5 dan 3 (8),min_column
berisi minimum dari dua nilai yang ditulis ke dalamnya (3), danmax_column
berisi maksimum dari dua nilai yang ditulis ke dalamnya (5).row-key1 max_family:max_column @ 1970/01/01-00:00:00.000000 5 min_family:min_column @ 1970/01/01-00:00:00.000000 3 sum_family:sum_column @ 1970/01/01-00:00:00.000000 8
Opsional: Buat kueri tabel di konsol Google Cloud dengan SQL.
Di konsol Google Cloud, buka halaman Bigtable instance.
Pilih
counters-quickstart-instance
dari daftar.Di menu navigasi, klik Bigtable Studio.
Klik tab Editor.
Tempel kueri ini ke editor:
SELECT * FROM `counters_quickstart_table`
Klik Run. Hasil kueri ditampilkan dalam tabel Results dan terlihat mirip dengan berikut:
_key max_family min_family sum_family row-key1 { "max_column": 5 } { "min_column": 5 } { "sum_column": 8 }
Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, hapus project Google Cloud yang berisi resource tersebut.
Di terminal, hapus tabel
counters_quickstart_table
:cbt deletetable counters_quickstart_table
Hapus instance:
cbt deleteinstance counters-quickstart-instance
Hapus file
.cbtrc
:rm ~/.cbtrc
Hapus file pemformatan:
rm ~/cbtformat.yaml
Opsional: Cabut kredensial dari gcloud CLI:
gcloud auth revoke