変更要約: Cosmos DB にベクトル検索/セマンティック検索(埋め込み・RAG 用途)を追記=2026改訂の非リレーショナルドメインの AI 強調を反映。
3.2Azure Storage のサービス
Azure ストレージアカウントが提供する Blob・File・Table・Queue の各サービス、Blob のアクセス層、それぞれの用途を理解します。
Azure ストレージアカウント は、用途の異なる複数のストレージサービスを1つにまとめて提供する入れ物です。データの形(オブジェクト/共有ファイル/キー値/メッセージ)と使い方に応じて、Blob・File・Table・Queue を使い分けます。いずれも高い耐久性(冗長化)を持ち、従量課金で使えます。
3.2.14つのサービス
- Blob ストレージ:非構造化データ(画像・動画・バックアップ・ログ等)のオブジェクト保存。最も広く使われる。
- File ストレージ:SMB/NFS のファイル共有。複数のマシンから同時にマウントでき、オンプレのファイルサーバー置き換えに。
- Table ストレージ:キー値(NoSQL)の単純で安価なテーブル。大量の構造化された軽量データに。
- Queue ストレージ:コンポーネント間を疎結合にするメッセージキュー。処理の山を平準化できる。
| サービス | 扱うもの | 代表的な用途 |
|---|---|---|
| Blob | 非構造化オブジェクト | 画像・動画・バックアップ・ログ |
| File | 共有ファイル | SMB/NFS のファイル共有 |
| Table | キー値データ | 安価な NoSQL テーブル |
| Queue | メッセージ | コンポーネントの疎結合 |
3.2.2Blob のアクセス層
Blob には、アクセス頻度に応じて保管コストと取り出しコストのバランスが異なるアクセス層があります。ホットは頻繁に読み書きするデータ向けで保管単価が高め、クールはたまにしか使わないデータ向けで保管が安い代わり取り出し時にコストがかかります、アーカイブは長期保存向けで最も安いが、取り出しに時間(再ハイドレート)が必要です。古いログやバックアップを安く保つには、頻度に合わせて層を選ぶ/自動で移動させるのが効果的です。
シナリオ:動画配信サービスの保存設計。 視聴用の動画ファイルはBlob(ホット)、社内で共有する編集素材はFile 共有、視聴ログの軽量な構造化データはTable、エンコード要求を順に処理するためQueue に積んでワーカーが取り出す。半年見られていない動画はクール/アーカイブ層へ移してコスト削減。形と頻度でサービスと層を選びます。
混同に注意:
①Blob(オブジェクト:画像/動画/バックアップ)とFile(マウントできる共有ファイル)を取り違えない。「複数マシンからファイルとしてマウント」なら File。
②Table(Storage のキー値)は安価な NoSQL で、前節の Cosmos DB(高機能・グローバル分散)とは規模・機能が異なる。
③Queue(メッセージで疎結合)はデータ保存というより連携の仕組み。
Q. Table ストレージと Cosmos DB Table API の違いは? どちらもキー値ですが、Cosmos DB はグローバル分散・低遅延 SLA など高機能。大規模・高性能なら Cosmos DB、安価で十分なら Storage の Table。Q. アーカイブ層のデータはすぐ読める? いいえ、取り出しに再ハイドレートの時間が必要です。即時性が要るデータには不向き。Q. ストレージアカウントは1種類のサービスだけ? いいえ、1つのアカウントで Blob/File/Table/Queue をまとめて使えます。
「画像/動画/バックアップ=Blob」「ファイル共有=File」「キー値=Table」「メッセージで疎結合=Queue」 の対応が頻出です。Blob はアクセス層(ホット/クール/アーカイブ)でコスト最適化できる点も問われます。
3.2.3この節のまとめ
- ストレージアカウント=Blob(非構造化)/File(共有)/Table(キー値)/Queue(メッセージ)を1つに
- Blob はアクセス層(ホット/クール/アーカイブ)で頻度に応じコスト最適化
- 「マウントする共有ファイル=File」「単純なオブジェクト=Blob」を取り違えない
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. 画像や動画、バックアップなどの非構造化データを保存するのに適した Azure Storage サービスはどれですか?
Q2. 複数のマシンから同時にマウントできる SMB/NFS のファイル共有を提供するのはどれですか?
Q3. アプリのコンポーネント間をメッセージで疎結合にするのに使う Azure Storage サービスはどれですか?
Q4. めったにアクセスしないデータを最も安価に長期保存できる Blob のアクセス層はどれですか?
Q5. キー値の単純で安価なテーブルを Storage アカウントで使いたい場合に適したサービスはどれですか?

