GCP #3 ストレージサービス

概要

オブジェクトストレージ
1. Cloud Storage
AWSで言うところのS3

データベースサービス
AWSで言うところのRDSやDynamoDB
2. Bigtable
3. BigQuery
4. DataStore
5. Cloud SQL
6. Spanner

データベースサービスの使い分け
GCPはGoogleのサービスをもとに展開されている
そのため、大規模処理に特化している

画像1

Twitter,FaceBookなどの大規模分散かつ高速な処理が必要
→ Bigtable (ユーザを待たせることができるならBigQueryも可)

整合性(ACID)が必要で特定のユーザのみ利用する基幹系システム
→ CloudSQL

各データベースの比較

画像4

1. CloudStorage

アーキテクチャ
S3同様、バケットとオブジェクトからなる

画像2

ストレージクラス
バケットは、以下のストレージクラスから選択が可能
いつでも変更できるが、変更後に登録したオブジェクトへ変更が適用される。

画像3

ライフサイクル機能
数日経過したオブジェクトのストレージクラスを変更できる

バージョニング機能
変更履歴を自動で管理してくれる。
デフォルトで向こうであり、gsutil ツールを使用して有効にする(有料)

2.BigTable

特徴
・GmailやGoogle Mapなど、Googleの基盤を支えている
・超高パフォーマンス、低レイテンシー
・SSD,HDDのストレージタイプの選択可能
・CloudIAMでのアクセス制御、自動で暗号化(Googleの鍵を使用)
・バックアップは3台以上に取るため、可用性は高い

3.Datastore

特徴
・ACID特性を持つNoSQL
・自動的なスケールアップし、安定した処理速度の提供が可能
・コンシステンシーを選択可能
 Strong Consistency : 結果の整合性が保証されるが、処理速度遅
 Eventual Consistency : 結果の整合性は保証されないが、処理速度速
・結合(JOIN)や複数不等号条件を使えない
・CloudStorageにバックアップ可能

4.Cloud SQL

特徴
・AWSで言うところのRDS
・フェールオーバー機能:自動でフェールオーバすることが可能
 ただし、マスターが存在するゾーンが停止した場合のみ発動する
・リードレプリカ機能:マスタのレプリカを作成し負荷分散することが可能
・ストレージの自動拡張が可能

アクセス制御
・IPアドレスをホワイトリストで設定可能
・Cloud SQL Proxyでも設定可能
・Cloud SQL Proxyでは、認証が可能

バックアップ
自動バックアップとオンデマンドがある
自動バックアップ
 ・4時間の時間枠を指定し、その時間内にバックアップを取得する
 ・第7世代まで保管可能

5.Spanner

特徴
・超高可用性。マルチリージョンをサポートしている
・アーキテクチャはDatastoreに近く、RDBのように操作できるわけでない
・データの書き込みにSQLを使用できず、APIを使う必要がある
・バックアップ機能はないが、Google側で日次バックアップを取得してるらしい

この記事が気に入ったらサポートをしてみませんか?