GoogleCloud
用語:
1. データを保存する「箱」:バケット(Bucket)
バケットとは?
GCSでデータ(ファイルや画像など)を保存するための「箱」のようなものです。
例: あなたが写真をたくさん保存する場合、「my-photo-bucket」という名前のバケットを作り、その中に写真ファイル(オブジェクト)を入れます。
ポイント: バケット名は全世界で一意でなければならないので、ユニークな名前にします(例:小文字と数字、ハイフンのみで構成)。
2. 個々のファイル:オブジェクト(Object)
オブジェクトとは?
バケットに入れる個々のファイルのことを「オブジェクト」と呼びます。
例: バケット内に保存する「summer_vacation.jpg」や「report.pdf」などがオブジェクトです。
特徴: オブジェクトには、実際のデータに加えて、サイズや作成日時、ファイルタイプなどの情報(メタデータ)が自動的につきます。
3. どのくらいの頻度で使うかで変わる保存方法:ストレージクラス(Storage Class)
ストレージクラスとは?
保存するデータの利用頻度に合わせて料金やアクセス速度が変わる設定です。
■Standard:
用途: Webサイトの画像や頻繁にアクセスするデータに最適。
例: 毎日何度も表示されるホームページの画像ファイル。
■Nearline:
用途: 月に1回程度のアクセスが想定されるバックアップデータに。
例: 定期的なシステムバックアップのファイル。
■Coldline:
用途: 数か月に1回程度、ほとんどアクセスしないデータ向け。
例: 長期保存するログや古いアーカイブデータ。
■Archive:
用途: 1年に1回未満しか使わない、ほぼ保管専用のデータ。
例: 法律で保管が義務付けられている、長期保存の記録データ。
4. データがどこにあるか:ロケーション(Location)・リージョン(Region)
ロケーションとは?
データが物理的に保存される場所のことです。
リージョン: 例として「asia-northeast1(東京)」など、1つの地域内に保存します。
マルチリージョン: 複数の地域(例えばアジア全体)に分散して保存し、可用性を高める設定。
デュアルリージョン: 2つの特定の地域に保存し、障害時のリスクを低減します。
5. 誰がデータにアクセスできるか:アクセス制御
5-1. IAM(Identity and Access Management)
IAMとは?
「誰が」「どのデータに」「どんな操作をできるか」を、ユーザー単位で一括管理する仕組みです。
例: 自分のプロジェクト内で、開発者は読み書きできるが、一般ユーザーは閲覧だけできるように設定できます。
5-2. ACL(Access Control List)
ACLとは?
バケットやオブジェクトごとに、細かくアクセス権(読み取り、書き込みなど)を設定できる仕組みです。
例: 特定のファイルに対して「このユーザーは読み取りだけできる」などを設定します。
注意: 最近は設定を簡単にするため、IAMだけで管理する「Uniform Bucket-Level Access」という方法を選ぶこともあります。
5-3. 公開アクセス防止(Public Access Prevention)
公開アクセス防止とは?
誤ってインターネット上に誰でも見られるようにしないための設定です。
例: 機密の文書が入ったバケットは「公開アクセス禁止」をオンにして、外部からのアクセスをブロックします。
6. データの管理ルール:バージョニング・ライフサイクル管理
6-1. バージョニング(Object Versioning)
バージョニングとは?
同じファイルを更新したとき、古いバージョンを残しておく機能です。
例: 重要なレポートを誤って上書きしても、前のバージョンを復元できるようにします。
6-2. ライフサイクルルール(Lifecycle Management)
ライフサイクルルールとは?
ファイルの経過時間に応じて、自動的に保存方法を変更(例:StandardからColdlineへ移行)したり、削除したりする設定です。
例: 1年間アクセスがなかったファイルを自動でアーカイブクラスに変更し、保存料金を抑えます。
7. その他の便利な設定
CORS(クロスオリジンリソースシェアリング)
他のWebサイトからGCS内のファイルにアクセスできるように許可する設定です。
例: 自分のWebアプリが、別ドメインにある画像ファイルを利用できるようにします。
デフォルト暗号化 / KMS(Key Management Service)
GCSでは、アップロード時に自動でデータを暗号化します。
例: 追加費用なしで、保存する全てのファイルが安全に保護されます。さらに、顧客管理の暗号鍵を使ってセキュリティを強化することも可能です。
Requester Pays
通常はデータをダウンロードする側が無料ですが、特定の設定ではダウンロードにかかる料金をリクエスト側に負担させるオプションです。
例: 大量のデータを配信する場合、アクセスするユーザーが料金を支払う設定にできます。
Autoclass
データの利用状況に応じて、自動的に最適なストレージクラスに移行する機能です。
例: アクセス頻度が減ってきたファイルを、自動的に低料金のクラスへ切り替え、コストを削減します。
オブジェクトメタデータ
各ファイルに付加情報(例:Content-Type、Cache-Controlなど)を設定でき、Webサイトの表示やキャッシュの制御に利用できます。
まとめ
初心者向けにまとめると、GCSの設定で大事なポイントは以下の通りです。
バケット=データを入れる「箱」
→ ユニークな名前とロケーションを選んで作成します。
オブジェクト=バケット内の個々のファイル
→ ファイルに自動でメタデータが付与されます。
ストレージクラス=保存方法の種類
→ 利用頻度に応じて「Standard」「Nearline」「Coldline」「Archive」を使い分け、コストを最適化します。
アクセス制御=誰がどのデータにアクセスできるかの管理
→ IAMやACL、公開アクセス防止でセキュリティを確保します。
ライフサイクル管理=ファイルの更新・削除ルール
→ バージョニングやライフサイクルルールで、誤操作や不要データの自動管理ができます。
その他の設定=CORS、暗号化、Autoclassなど
→ Webサイトでの利用やセキュリティ、コスト削減に役立ちます。
このマニュアルを参考に、GCSの各設定項目が何を意味するのか、どのような用途で使うのかを具体的にイメージしてみてください。設定を実際に操作する際は、公式ドキュメントや実際のコンソール画面を見ながら進めると、さらに理解が深まります。