Tabel dan tampilan

Di Bigtable, Anda menyimpan data dalam tabel, dan Anda dapat membuat beberapa jenis tampilan tabel. Jenis tampilan yang Anda gunakan bergantung pada kasus penggunaan Anda.

Tabel

Tabel Bigtable adalah peta nilai kunci yang diurutkan yang menyimpan data dalam baris dan kolom. Setiap baris diindeks oleh satu row key unik. Kolom yang terkait satu sama lain biasanya dikelompokkan ke dalam grup kolom.

Bigtable memiliki model data yang fleksibel, dan tabelnya jarang. Artinya, jika kolom tidak digunakan dalam baris, tidak ada data yang disimpan untuk kolom tersebut. Anda tidak perlu menyimpan nilai NULL untuk kolom yang tidak digunakan seperti yang Anda lakukan dengan database relasional. Dalam tabel Bigtable, baris tertentu mungkin memiliki satu kolom dan baris di sebelahnya memiliki 100 kolom.

Dalam baris, kolom dapat berisi beberapa sel, yang masing-masing diidentifikasi oleh empat tuple (row key, grup kolom, penentu kolom, stempel waktu). Menyimpan beberapa sel dalam kolom memberikan catatan tentang bagaimana data yang disimpan untuk baris dan kolom tersebut telah berubah dari waktu ke waktu.

Tabel Bigtable tidak mendukung gabungan, dan transaksi hanya didukung dalam satu baris.

Tabel adalah resource tingkat instance yang otomatis direplikasi ke setiap cluster dalam instance. Penyimpanan data dikontrol dengan kebijakan pengumpulan sampah yang ditetapkan di tingkat grup kolom.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan Bigtable dan Praktik terbaik desain skema.

Tampilan

Bigtable mendukung jenis tampilan tabel berikut: tampilan logis, tampilan terwujud berkelanjutan, dan tampilan yang diotorisasi. Tampilan memungkinkan Anda membagikan data tabel dengan pengguna dan grup tertentu tanpa memberi mereka akses ke data sumber yang mendasarinya.

Tampilan logis

Tampilan logis – sering disebut hanya tampilan – adalah hasil kueri SQL. Fungsinya sebagai tabel virtual yang dapat dikueri oleh kueri SQL lainnya. Untuk mengetahui informasi selengkapnya, lihat Membuat dan mengelola tampilan logis.

Tampilan yang diberi parameter

Tampilan yang diberi parameter adalah jenis tampilan logis yang secara dinamis memfilter rentang data berdasarkan konteks aplikasi. Pendekatan ini melindungi aplikasi Anda dari injeksi SQL dan mengurangi kebutuhan akan beberapa tampilan statis.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan tampilan yang diberi parameter.

Tampilan terwujud berkelanjutan

Tampilan terwujud berkelanjutan dibuat dengan menjalankan kueri SQL secara terus-menerus terhadap tabel Bigtable. Bigtable membuat tabel baru berdasarkan output kueri dan menyinkronkannya dengan tabel sumber.

Tampilan terwujud berkelanjutan dapat membantu meningkatkan performa kueri. Tabel baru – tampilan terwujud berkelanjutan – memiliki skema yang berbeda dengan tabel sumber, yang berisi data yang telah diagregasi atau diubah yang dioptimalkan untuk kueri yang berbeda dari yang digunakan pada tabel sumber.

Tampilan terwujud berkelanjutan bersifat hanya baca. Anda akan dikenai biaya untuk penyimpanan tampilan terwujud berkelanjutan serta untuk pekerjaan pemrosesan yang digunakan untuk membuat tabel kedua, menyinkronkannya dengan tabel sumber, dan mereplikasinya.

Untuk mengetahui informasi selengkapnya, lihat Tampilan terwujud berkelanjutan views.

Tampilan yang diotorisasi

Tampilan yang diotorisasi adalah tampilan tabel yang Anda konfigurasi untuk menyertakan data tabel tertentu, lalu memberikan akses secara terpisah dari akses ke tabel sumber. Tampilan yang diotorisasi ditentukan oleh file definisi berformat JSON.

Tidak seperti tampilan terwujud berkelanjutan atau tampilan logis, tampilan yang diotorisasi Bigtable dapat digunakan untuk mengontrol akses baca dan tulis.

Tampilan yang diotorisasi berguna jika Anda menyimpan data untuk beberapa pelanggan dalam tabel Bigtable, dan Anda ingin memberikan akses kepada setiap pelanggan hanya ke subset tabel yang berisi data mereka.

Tampilan yang diotorisasi tidak dikenai biaya penyimpanan tambahan.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan tampilan yang diotorisasi.

Perbandingan

Tabel berikut memberikan informasi tambahan tentang perbedaan tampilan tabel Bigtable.

Tampilan logis Tampilan yang diberi parameter Tampilan terwujud berkelanjutan Tampilan yang diotorisasi
Struktur Tabel virtual yang mewakili hasil kueri SQL Tabel virtual yang mewakili hasil kueri SQL Tabel hanya baca berdasarkan tabel sumber Subset tabel
Definisi Kueri SQL Kueri SQL menggunakan VIEW_PARAMETERS() Kueri SQL File definisi JSON
Konsistensi dengan tabel sumber Konsisten saat kueri dijalankan Konsisten saat kueri dijalankan Konsisten pada akhirnya Konsisten saat kueri dijalankan
Opsi kueri Harus menggunakan SQL SQL SQL atau Bigtable Data API Bigtable Data API
Dapat ditulis Tidak Tidak Tidak Ya
Penyimpanan Data tetap berada di tabel sumber Data tetap berada di tabel sumber Data diduplikasi, diagregasi, atau diubah dan disimpan dalam tabel hanya baca baru Data tetap berada di tabel sumber
Biaya penggunaan Pemrosesan komputasi untuk menjalankan kueri Pemrosesan komputasi untuk menjalankan kueri Pemrosesan komputasi saat menyinkronkan, biaya penyimpanan Pemrosesan komputasi untuk menjalankan kueri

Langkah berikutnya