Membuat dan mengelola tabel
Halaman ini menjelaskan cara membuat dan menjalankan operasi pada tabel Bigtable menggunakan Konsol Google Cloud, Google Cloud CLI, atau CLI cbt
.
CLI cbt
mendukung beberapa perintah yang tidak dijelaskan di halaman ini. Lihat
referensi cbt
untuk mengetahui daftar lengkap perintah.
Anda juga dapat membuat dan mengelola tabel secara terprogram dengan library klien atau API layanan Cloud Bigtable.
Untuk mendapatkan petunjuk tentang cara membuat dan mengelola tampilan tabel yang sah, lihat tampilan yang sah.
Sebelum memulai
Jika Anda berencana untuk bekerja dengan tabel menggunakan alat command line, ikuti langkah-langkah di bagian ini.
Instal gcloud CLI.
Opsional: Jika Anda berencana menggunakan CLI
cbt
, ikuti petunjuk di bagian Menginstal CLIcbt
, termasuk langkah untuk membuat file.cbtrc
.Petunjuk CLI
cbt
di halaman ini mengasumsikan bahwa Anda telah menetapkan project ID dan ID instance di file.cbtrc
. Atau, Anda dapat menggunakan flag-project
dan-instance
untuk menetapkan nilai ini setiap kali Anda menjalankan perintah CLIcbt
.
Membuat tabel
Saat membuat tabel, Anda tidak perlu menentukan grup kolom yang akan digunakan dalam tabel. Anda dapat menambahkan atau menghapus grup kolom nanti.
Konsol
Untuk membuat tabel baru dalam sebuah instance:
Buka daftar instance Bigtable di Konsol Google Cloud.
Klik instance yang tabelnya ingin Anda lihat.
Klik Tables di panel kiri.
Halaman Tables menampilkan daftar tabel dalam instance.
Masukkan ID tabel untuk tabel.
Tambahkan grup kolom (opsional).
Anda dapat menambahkan kolom sekarang atau nanti. Sebuah tabel harus memiliki setidaknya satu kelompok kolom sebelum Anda dapat menulis data ke dalamnya. Tabel harus memiliki setidaknya satu grup kolom sebelum Anda dapat menulis data ke tabel itu atau membaca aliran perubahan dari tabel itu.
Opsional: Aktifkan aliran data perubahan untuk tabel. Sebelum mengaktifkan aliran data perubahan, pastikan Anda memahami dampaknya, termasuk peningkatan biaya penyimpanan dan persyaratan penggunaan profil aplikasi. Untuk meninjau detail ini, lihat Ringkasan aliran data perubahan.
Pilih Aktifkan aliran data perubahan.
Di kolom Waktu habis masa berlaku, masukkan angka dari 1 sampai 7 untuk menentukan jumlah hari saat data aliran data perubahan harus dipertahankan.
Klik Create.
Klik Buat tabel.
gcloud
Untuk membuat tabel, jalankan perintah berikut. Buka bagian gcloud bigtable instances tables create untuk mengetahui daftar opsi lengkap.
gcloud bigtable instances tables create TABLE_ID \
--instance=INSTANCE_ID \
--project=PROJECT_ID \
--column-families=COLUMN-FAMILIES
Ganti kode berikut:
- TABLE_ID: ID unik untuk tabel baru
- INSTANCE_ID: ID instance
- PROJECT_ID: project yang akan berisi tabel baru
- COLUMN-FAMILIES: daftar yang dipisahkan koma untuk nama keluarga kolom. Anda dapat menambahkan grup kolom lainnya nanti.
Opsional:
Agar tabel tidak dihapus, tambahkan perintah dengan
--deletion-protection
. Jika Anda tidak menerapkan setelan ini, tabel dapat dihapus. Anda juga dapat mengizinkan penghapusan tabel secara eksplisit dengan menambahkan--no-deletion-protection
.Guna mengaktifkan aliran data perubahan untuk tabel, tentukan periode retensi data untuk data aliran perubahan. Sebelum mengaktifkan aliran data perubahan, pastikan Anda memahami dampaknya, termasuk peningkatan biaya penyimpanan dan persyaratan penggunaan profil aplikasi. Untuk meninjau detail ini, lihat Ringkasan aliran perubahan.
--change-stream-retention-period=RETENTION_PERIOD
Ganti RETENTION_PERIOD dengan durasi waktu BigQuery harus menyimpan data aliran data perubahan untuk tabel tersebut. Waktunya harus dari satu hingga tujuh hari. Unit yang dapat diterima adalah hari (d), jam (jam), menit (m), dan detik (dtk). Contoh:
48h
atau6d
Agar Bigtable mengambil cadangan harian tabel Anda, gunakan perintah berikut:
gcloud bigtable instances tables create TABLE_ID \ --instance=INSTANCE_ID \ --project=PROJECT_ID \ --column-families=COLUMN-FAMILIES \ --enable-automated-backup
cbt
Gunakan perintah berikut dan ganti TABLE_NAME
dengan nama tabel Anda. Anda tidak dapat menggunakan CLI cbt
untuk membuat tabel dengan aliran perubahan yang diaktifkan.
cbt createtable TABLE_ID
Opsional: Untuk membuat grup kolom gabungan (Pratinjau) dalam tabel, tambahkan nama kelompok kolom dengan :instsum
untuk jumlah bilangan bulat, yang mengganti FAMILY_NAME
dengan nama kelompok kolom agregat yang baru. Perintah berikut akan membuat grup kolom agregat dengan kebijakan pembersihan sampah memori never
.
cbt createtable TABLE_ID families=FAMILY_NAME:never:intsum
Jika Anda tidak sengaja menghapus tabel, jangan mencoba membuat tabel yang dihapus secara manual. Gunakan perintah gcloud CLI bigtable instances tables undelete
untuk memulihkan tabel.
Opsional: Memisahkan tabel berdasarkan baris key
Salah satu fitur Bigtable sebagai layanan terkelola sepenuhnya adalah pemisahan tabel secara otomatis di beberapa node. Fitur ini mengoptimalkan performa dengan mendistribusikan secara merata jumlah data yang disimpan di setiap node dan menjaga agar baris yang sering diakses tetap tersebar, jika memungkinkan.
Saat membuat tabel menggunakan gcloud CLI, CLI cbt
, atau library klien Cloud Bigtable, Anda dapat memilih kunci baris untuk membagi tabel terlebih dahulu. Misalnya, Anda dapat menetapkan baris tertentu untuk membagi tabel terlebih dahulu jika
akan menulis banyak baris ke tabel. Anda dapat menyediakan hingga 100 kunci
baris tempat pemisahan awal harus dilakukan.
Memisahkan tabel terlebih dahulu tidaklah penting, tetapi hal ini bermanfaat karena memberikan informasi Bigtable tentang tempat beban dan jejak data kemungkinan akan terdapat saat tabel dibuat. Pra-pemisahan mencegah Bigtable membagi tabel dan menyeimbangkan kembali beban sekaligus saat data tiba.
Tabel tidak tetap dibagi berdasarkan kunci baris yang Anda pilih untuk dipecah sebelumnya saat Anda membuat tabel. Bigtable pada akhirnya membagi tabel Anda berdasarkan kunci baris yang berbeda, berdasarkan banyaknya data yang ada dalam tabel dan seberapa sering setiap baris diakses.
Konsol
Anda tidak dapat membagi baris lebih dahulu saat membuat tabel menggunakan Konsol Google Cloud.
gcloud
Untuk memisahkan tabel berdasarkan row key, jalankan perintah berikut. Buka bagian gcloud bigtable instances tables create untuk mengetahui daftar opsi lengkap.
gcloud bigtable instances tables create TABLE_ID\
--instance=INSTANCE_ID \
--project=PROJECT_ID \
--column-families=COLUMN-FAMILIES \
--splits=SPLITS
Ganti kode berikut:
- TABLE_ID: ID unik untuk tabel baru
- INSTANCE_ID: ID instance
- PROJECT_ID: project yang akan berisi tabel baru
- COLUMN-FAMILIES: daftar yang dipisahkan koma untuk nama keluarga kolom. Anda dapat menambahkan grup kolom lainnya nanti.
- SPLITS: kunci baris tempat tabel awalnya harus
dipisahkan—misalnya,
10,20
.
cbt
Untuk memisahkan tabel terlebih dahulu berdasarkan row key, gunakan sintaksis berikut untuk membuat tabel. Ganti [TABLE_NAME]
dengan nama tabel dan [SPLITS]
dengan daftar awalan kunci baris yang dipisahkan koma yang akan digunakan untuk pemisahan sebelumnya.
```
cbt createtable [TABLE_NAME] splits=[SPLITS]
```
Misalnya, untuk memisahkan tabel my-table
terlebih dahulu di kunci baris yang dimulai dengan 10
dan 20
:
```
cbt createtable my-table splits=10,20
```
Mengubah grup kolom di tabel
Anda dapat menambahkan grup kolom di tabel yang sudah ada. Jika tabel tidak mengaktifkan perlindungan penghapusan, Anda dapat menghapus kelompok kolom dalam tabel.
Tambahkan grup kolom
Konsol
Buka daftar instance Bigtable di Konsol Google Cloud.
Klik instance yang tabelnya ingin Anda lihat.
Klik Tables di panel kiri.
Halaman Tables menampilkan daftar tabel dalam instance.
Klik
Edit untuk tabel yang ingin Anda ubah.Untuk setiap grup kolom yang ingin Anda tambahkan, lengkapi hal berikut:
- Klik Tambahkan jenis kolom.
- Berikan ID unik untuk grup kolom.
- Tetapkan kebijakan pembersihan sampah memori untuk kelompok kolom.
- Klik Done.
- Klik Save.
gcloud
Anda tidak dapat menggunakan gcloud CLI untuk menambahkan grup kolom ke tabel.
cbt
Untuk menambahkan grup kolom ke tabel, gunakan perintah berikut, dengan mengganti [TABLE_NAME]
dengan nama tabel dan [FAMILY_NAME]
dengan nama grup kolom:
cbt createfamily [TABLE_NAME] [FAMILY_NAME]
Misalnya, untuk menambahkan grup kolom cf1
dan cf2
ke tabel my-table
:
cbt createfamily my-table cf1
cbt createfamily my-table cf2
Opsional: Untuk menambahkan grup kolom agregat (Pratinjau) ke tabel, tambahkan nama kelompok kolom dengan :instsum
untuk jumlah bilangan bulat, yang mengganti FAMILY_NAME
dengan nama grup kolom gabungan baru. Perintah berikut akan membuat tabel yang memiliki
grup kolom agregat dengan kebijakan pembersihan sampah memori never
.
cbt createtable TABLE_ID families=FAMILY_NAME:never:intsum
Menghapus grup kolom
Anda dapat menghapus grup kolom di tabel yang tidak mengaktifkan perlindungan penghapusan.
Konsol
Buka daftar instance Bigtable di Konsol Google Cloud.
Klik instance yang tabelnya ingin Anda lihat.
Klik Tables di panel kiri.
Halaman Tables menampilkan daftar tabel dalam instance.
Klik
Edit untuk tabel yang ingin Anda ubah.Untuk setiap grup kolom yang ingin Anda hapus, lengkapi hal berikut:
- Arahkan kursor mouse ke baris untuk grup kolom yang ingin Anda hapus.
- Klik .
Klik Save.
Untuk mengonfirmasi bahwa Anda memahami bahwa penghapusan grup kolom bersifat permanen dan semua data dalam grup kolom akan dihapus, ketik "Hapus grup kolom" di kotak teks.
Klik Confirm.
gcloud
Anda tidak dapat menggunakan gcloud CLI untuk menghapus grup kolom dari tabel.
cbt
Untuk menghapus grup kolom dari tabel, gunakan perintah berikut, dan ganti [TABLE_NAME]
dengan nama tabel dan [FAMILY_NAME]
dengan nama grup kolom:
cbt deletefamily [TABLE_NAME] [FAMILY_NAME]
Misalnya, untuk menghapus grup kolom cf2
dari tabel my-table
:
cbt deletefamily my-table cf2
Melihat daftar tabel
Konsol
Untuk melihat daftar tabel dalam sebuah instance:
Buka daftar instance Bigtable di Konsol Google Cloud.
Klik instance yang tabelnya ingin Anda lihat.
Klik Tables di panel kiri.
Halaman Tables menampilkan daftar tabel dalam instance.
- Klik tanda panah di samping ID tabel untuk memperluas daftar replikasi tabel.
- Klik Lihat Metrik di samping nama tabel untuk melihat data pemantauan pada tabel tersebut.
gcloud
Untuk melihat daftar tabel, jalankan perintah gcloud bigtable instances table list.
gcloud bigtable instances tables list --instances=INSTANCE_IDS
Ganti kode berikut:
- INSTANCE_IDS: daftar ID instance yang dipisahkan koma.
cbt
Untuk melihat daftar tabel dalam sebuah instance, jalankan perintah berikut:
cbt ls INSTANCE_ID
Ganti kode berikut:
INSTANCE_ID
: ID permanen untuk instance.
C++
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Bigtable, lihat Library klien Bigtable.
Untuk melakukan autentikasi ke Bigtable, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
C#
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Bigtable, lihat Library klien Bigtable.
Untuk melakukan autentikasi ke Bigtable, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Bigtable, lihat Library klien Bigtable.
Untuk melakukan autentikasi ke Bigtable, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Bigtable, lihat Library klien Bigtable.
Untuk melakukan autentikasi ke Bigtable, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Bigtable, lihat Library klien Bigtable.
Untuk melakukan autentikasi ke Bigtable, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Bigtable, lihat Library klien Bigtable.
Untuk melakukan autentikasi ke Bigtable, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Untuk mempelajari cara menginstal dan menggunakan library klien untuk Bigtable, lihat Library klien Bigtable.
Untuk melakukan autentikasi ke Bigtable, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Melihat informasi tentang tabel
Konsol
Untuk melihat informasi tentang tabel:
Buka daftar instance Bigtable di Konsol Google Cloud.
Klik instance yang tabelnya ingin Anda lihat.
Klik Tables di panel kiri.
Halaman Tables menampilkan daftar tabel dalam instance. Untuk setiap tabel, Konsol Google Cloud menampilkan jumlah cluster tempat tabel disimpan, status tabel, penggunaan penyimpanan, dan ID untuk cadangan tabel saat ini.
Guna melihat nama kolom untuk tabel, klik
. Untuk menutup panel Edit tabel, klik Batal.Untuk melihat detail tambahan tentang tabel, termasuk metrik tingkat tabel dan status replikasi, klik nama tabel.
gcloud
Untuk melihat informasi tentang tabel, jalankan perintah gcloud bigtable instances tables describe.
gcloud bigtable instances tables describe TABLE_ID \
--instance=INSTANCE_ID
Ganti kode berikut:
- TABLE_ID: ID unik tabel
- INSTANCE_ID: ID instance
cbt
Anda dapat menggunakan CLI cbt
untuk mendapatkan daftar grup kolom yang ada dalam tabel.
Gunakan perintah berikut, dan ganti [TABLE_NAME]
dengan nama tabel:
cbt ls [TABLE_NAME]
Menetapkan kebijakan pembersihan sampah memori
Kebijakan pembersihan sampah memori memberi tahu Bigtable data mana yang akan disimpan dan data mana yang akan ditandai untuk dihapus. Kebijakan pembersihan sampah memori ditetapkan di tingkat grup kolom. Anda dapat menetapkannya saat membuat tabel atau di lain waktu.
Saat membuat grup kolom, Anda dapat menentukan jumlah sel yang ingin dipertahankan di setiap kolom dalam grup kolom tersebut. Jika Anda tidak menentukan setelan ini, Bigtable akan menggunakan salah satu setelan default berikut:
Jika Anda membuat grup kolom dengan klien HBase Cloud Bigtable untuk Java atau shell HBase, atau alat lain yang menggunakan klien HBase untuk Java, Bigtable hanya menyimpan 1 sel untuk setiap persimpangan baris/kolom dalam grup kolom. Setelan default ini konsisten dengan HBase.
Jika Anda membuat grup kolom menggunakan Google Cloud Console, library klien lain, atau CLI
cbt
, Bigtable akan menyimpan jumlah sel yang tak terbatas di setiap kolom.
Lihat Mengonfigurasi kebijakan pembersihan sampah memori untuk petunjuk mendetail tentang cara melihat, menetapkan, dan mengupdate kebijakan pembersihan sampah memori.
Mencadangkan dan memulihkan tabel
Lihat Mengelola cadangan untuk mendapatkan petunjuk tentang cara mencadangkan tabel dan memulihkannya dari cadangan ke tabel baru.
Jika telah mengaktifkan pencadangan otomatis saat membuat tabel, Anda dapat mengubah konfigurasi pencadangan otomatis untuk tabel guna mengaktifkan atau menonaktifkan pencadangan otomatis, atau mengubah periode retensi hingga 90 hari dari waktu pembuatan cadangan. Untuk mengetahui informasi selengkapnya, lihat Menggunakan pencadangan otomatis.
Mengaktifkan, menonaktifkan, atau mengonfigurasi aliran data perubahan
Untuk mendapatkan petunjuk tentang tugas berikut, lihat Mengonfigurasi aliran data perubahan.
- Mengaktifkan aliran data perubahan pada tabel yang sudah ada
- Menonaktifkan aliran data perubahan
- Memperbarui periode retensi data untuk aliran data perubahan
Menghapus tabel
Menghapus tabel juga akan menghapus semua tampilan tabel yang diotorisasi. Anda tidak dapat menghapus tabel jika ada tampilan tabel yang diberi otorisasi mengaktifkan perlindungan penghapusan.
Konsol
Buka daftar instance Bigtable di Konsol Google Cloud.
Klik instance yang tabelnya ingin Anda lihat.
Klik Tables di panel kiri.
Halaman Tables menampilkan daftar tabel dalam instance.
Klik
untuk tabel yang ingin Anda hapus.Klik Delete.
Untuk mengonfirmasi bahwa Anda memahami bahwa tindakan ini akan menghapus tabel dari semua cluster dalam instance dan bahwa Anda hanya memiliki waktu tujuh hari untuk membatalkan penghapusan tabel, ketik ID tabel dalam kotak teks.
Klik Delete.
gcloud
Untuk menghapus tabel, jalankan perintah gcloud bigtable instances tables delete.
gcloud bigtable instances tables delete --instance=INSTANCE_ID
Ganti kode berikut:
- INSTANCE_ID: ID instance
Di terminal, masukkan
y
untuk mengonfirmasi penghapusan tabel.
cbt
Untuk menghapus tabel, gunakan perintah berikut, dan ganti [TABLE_NAME]
dengan nama tabel:
cbt deletetable [TABLE_NAME]
Membatalkan penghapusan tabel
Jika tidak sengaja menghapus tabel, Anda dapat menggunakan perintah gcloud CLI bigtable instances tables undelete
untuk undelete atau memulihkan tabel. Jangan mencoba membuat tabel yang dihapus secara manual terlebih dahulu.
Untuk membatalkan penghapusan tabel, jalankan perintah berikut di terminal:
gcloud bigtable instances tables undelete TABLE_ID --instance=INSTANCE_ID
Ganti kode berikut:
- TABLE_ID: ID unik untuk tabel
- INSTANCE_ID: ID instance
Batasan berikut berlaku:
- Kemampuan untuk membatalkan penghapusan tabel tersedia selama sekitar tujuh hari sejak penghapusan tabel.
- Anda tidak dapat membatalkan penghapusan tabel menggunakan Google Cloud Console, library klien Cloud Bigtable, atau CLI
cbt
. - Anda tidak dapat membatalkan penghapusan tabel dari instance yang telah dihapus.
- Anda tidak dapat membatalkan penghapusan tabel yang telah mengaktifkan CMEK.
- Setiap binding kebijakan IAM terperinci yang dimiliki tabel sebelum penghapusan tidak akan dipulihkan saat tabel dibatalkan penghapusannya.
Anda dapat memilih untuk memeriksa status operasi undelete
di
log audit.
Mengubah perlindungan penghapusan
Anda dapat mengaktifkan atau menonaktifkan perlindungan penghapusan untuk tabel jika Anda adalah akun utama dalam peran yang menyertakan izin bigtable.tables.update
, seperti roles/bigtable.admin
. Perlindungan penghapusan mencegah penghapusan tabel, semua grup kolom dalam tabel, dan instance yang berisi tabel.
Mengaktifkan perlindungan penghapusan untuk tabel tidak mengaktifkannya untuk tampilan tabel yang sah. Demikian pula, menonaktifkan perlindungan penghapusan tabel tidak menonaktifkannya untuk tabel yang diberi otorisasi. Anda harus memperbarui tampilan yang diotorisasi tabel secara terpisah.
Konsol
Buka daftar instance Bigtable di Konsol Google Cloud.
Klik instance yang tabelnya ingin Anda lihat.
Klik Tables di panel kiri.
Halaman Tables menampilkan daftar tabel dalam instance.
Klik
di samping ID tabel.Untuk mengaktifkan perlindungan penghapusan, klik Cegah penghapusan. Untuk menonaktifkan perlindungan penghapusan, klik Aktifkan penghapusan. Hanya opsi valid yang terlihat.
gcloud
Untuk mengaktifkan perlindungan penghapusan tabel, jalankan perintah gcloud bigtable instances
table update
:
gcloud bigtable instances tables update TABLE_ID \
--instance=INSTANCE_ID \
--deletion-protection
Untuk menonaktifkan perlindungan penghapusan tabel, jalankan perintah berikut:
gcloud bigtable instances tables update TABLE_ID \
--instance=INSTANCE_ID \
--no-deletion-protection
Ganti kode berikut:
+ TABLE_ID: the unique identifier for the table
+ INSTANCE_ID: the ID of the instance
cbt
Anda tidak dapat menggunakan cbt
CLI untuk mengaktifkan atau menonaktifkan perlindungan penghapusan.