Open6
GCP Cloud Bigtable に入門する
GCP Cloud Bigtable
Bigtable の大きな特徴
- フルマネージド NoSQL
- 高スループット
- 低レイテンシ
Bigtable のアーキテクチャ
インスタンス
データのコンテナ。
1つ以上のクラスタが存在する。
クラスタ
特定のロケーションにある Bigtable サービスを表す。
ゾーンに1つのみ配置できる。
ノード
クラスタ内で処理を担ってくれるコンピュータリソース。
各ノードの役割は次のとおりです。
- ディスク上の特定のタブレットをトラッキングする。
- 受信するタブレットの読み取りと書き込みを処理する。
- 定期的なコンパクションなどのメンテナンス タスクをタブレットで実行する。
タブレット
タブレットはアーキテクチャ図の下部に位置するSSTableと記載されている部分。
SSTableとはデータの格納方式のこと。
Bigtable ストレージモデル
テーブルは、行(通常は、各行が単一のエンティティを表す)と列(各行の個々の値が格納される)で構成される。
データ構造
- Row key = 行キー(一意に行を特定するキー)
- Column family = 列をグループ化する
- Column = カラム名
- Cell = 個々のデータを格納する場所
注目すべき点
- 行内で列が使用されていないことがある
- 特定の行と列のセルごとに固有のタイムスタンプ(t)がある
スキーマ設計のベストプレクティス
Cloud Bigtable で位置情報を扱ってみる
行キーの設計も分かりやすい。