AWS・Azure・GoogleCloudの基礎(ストレージ編)

目次
はじめに
アジアクエスト クラウドインテグレーション部の中川修造です。
本記事は、connpassで発表された「クラウドエンジニアが語るAWS・Azure・GoogleCloud基礎(ストレージ編)」の内容をもとに作成しています。
本記事では、各クラウド(AWS・Azure・GoogleCloud)のストレージを紹介し、特徴を比較していきます。
ストレージとは
ストレージは、データを長期的に保存するための記憶装置です。
長期保存が目的のため、ハードウェアの電源を切っても情報を失いません。これを不揮発性と呼びます。
ストレージの例としては、SSD、HDD等が挙げられます。
一方で、データを一時的に保存するためのメインメモリという記憶装置もあります。
一次的な保存が目的のため、ハードウェアの電源を切ると情報が失われます。これを揮発性と呼びます。
本記事ではストレージに焦点を当て、各クラウドベンダーで提供されているファイルストレージ、ブロックストレージ、オブジェクトストレージの3種類のストレージサービスをそれぞれ比較していきます。
ファイルストレージ比較
ファイルストレージとは
ファイルストレージは、階層構造でデータを保存する形のストレージです。
ファイルストレージでは、フォルダという入れ物があり、そこに情報が記載されたファイルを格納していきます。
1つのフォルダには複数のファイルを格納できます。
また、フォルダの中にフォルダを格納したり、同じ階層に複数のファイルやフォルダを格納することもできます。
ファイルストレージのメリット・デメリット
【メリット】
-
ファイルだけでなくフォルダもメタデータを持つ
メタデータとは、データに関する情報を指します。ファイルだけでなくフォルダにも、フォルダ名や作成日時などのメタデータを持たせることで内部のファイルを把握しやすくなり、検索や分類が容易になります。 -
macOSやWindowsなど多くのOSで採用されている
異なるOSで同様のファイルストレージを採用している場合、OS間でのデータ共有が容易になります。
【デメリット】
-
大規模なデータ利用には不向き
ファイルストレージはオブジェクトストレージと比べてメタデータ含めた総データ量が多いです。そのため、リアルタイムストリーム配信処理やデータ解析・機械学習時にはオブジェクトストレージを使用するよりは負荷が大きいです。 -
コストがかかる
オブジェクトストレージと比較すると、ファイルストレージを利用するためのサーバやその運用にかかるコストが大きくなります。
AWS・Azure・GoogleCloudのファイルストレージ
〈AWS〉 EFS |
〈AWS〉 FSx for Windows File Server |
〈Azure〉 Azure Files |
〈GoogleCloud〉 Filestore |
|
---|---|---|---|---|
冗長性 | 複数AZ (オプション) |
複数AZ (オプション) |
3ゾーン (オプション) |
複数ゾーン (オプション) |
セキュリティ | セキュリティグループ IAMポリシー |
セキュリティグループ AD認証 |
AD認証 Entra ID認証 Azure RBAC |
ファイアウォール IPアドレス |
総量の最大サイズ | 無制限 | 64 TiB | 5PiB Standard 汎用 v2 |
100 TiB |
データ転送プロトコル | NFS v4.1 | SMB | SMB NFS v4.1(一部) |
NFS v3 NFS v4.1(一部) |
AWSのAmazon Elastic File System(以降、EFS)とAmazon FSx for Windows File Server(以降、FSx for Windows File Server)は、どちらもリージョン内の複数のアベイラビリティゾーン(以降、AZ)に冗長化可能です。リージョンは地理的に分離されたデータセンターの集合体を指し、AZはリージョン内に配置された複数のデータセンターのグループを指します。
また、セキュリティグループを使用することで、受信と送信のトラフィックを許可または拒否するルールを設定でき、ネットワークアクセスを制御できます。さらに、EFSではIAMポリシーを用いてリソースへのアクセスを制御でき、FSx for Windows File ServerではActive Directory 認証(以降、AD認証)を用いてネットワークアクセスを制御できます。
保管可能なデータ総量は、EFSだと必要に応じて容量が動的に拡張されるため理論上無制限ですが、FSxでは64TiBとなっています。データ転送プロトコルはEFSでNFS v4.1およびNFSv4.0、FSxでSMBをサポートしています。
また、FSx for Windows File ServerはFSxの1種であり、全部で4種類あるFSxの概要は以下になります。
・Amazon FSx for Windows File Server Microsoft Windows環境に最適化されたファイルシステムです。
・Amazon FSx for Lustre 高性能が求められるワークロード向けに設計された分散型ファイルシステムです。 特にビッグデータ処理や機械学習、Higu-Performance Computing(HPC)に適しています。
・Amazon FSx for NetApp ONTAP NetApp ONTAPのファイルシステムを提供します。NFS・SMB・iSCSIのマルチプロトコルに対応しています。
・Amazon FSx for Open ZFS Open ZFSのファイルシステムを提供します。NFSプロトコルを介してアクセスできます。
Azure Filesはリージョン内の3ゾーンに冗長化可能です。ゾーンはAWSのAZと同様の概念です。セキュリティの面では、AD認証やEntra ID認証、Azureロールベースのアクセス制御(Azure RBAC)など、様々な方法でネットワークアクセスを制御できます。保管可能なデータ総量はストレージアカウントによって異なり、Standard 汎用 v2の場合、5PiBとなります。データ転送プロトコルはSMBに加え、NFS v4.1も一部サポートしています。
Google Cloud Filestoreはリージョン内の複数ゾーンに冗長化可能です。IPアドレスでのアクセスを制限可能で、ファイアウォールによりネットワークアクセスを制御できます。保管可能なデータ総量はAzure Filesと同等の100TiBで、データ転送プロトコルはNFS v3と、一部でNFS v4.1もサポートしています。
ブロックストレージ比較
ブロックストレージとは
ブロックストレージは、ブロック構造をとるストレージです。
記憶領域をボリュームという単位に分割し、ボリュームの内部をさらに固定長のブロックという単位に分割して管理します。
ブロックストレージのメリット・デメリット
【メリット】
-
読み書きの速度が早い
単体のファイルを分割して保存するため、複数のブロックから同時に読み書きでき、ファイルに対して高速にアクセスできます。 -
ファイルの頻繁な更新に対応できる
ファイルをブロックに分割しているためファイル全体を更新する必要がなく、変更された部分に対応するブロックのみを更新するだけで済みます。
【デメリット】
-
メタデータの付与ができない
データがブロック単位で分割されるので、各ブロックには個々のデータが何を意味するのかというメタデータがありません。その結果、データの管理や検索が難しくなる場合があります。 -
他のストレージに比べコストが高くなりやすい
データの復元時にはすべての関連ブロックを特定し、適切な順序で再構築する必要があるので、多くのリソースが必要になりコストが上がりやすいです。
AWS・Azure・GoogleCloudのブロックストレージ
〈AWS〉 EBS |
〈Azure〉 Disk Storage |
〈GoogleCloud〉 Persistent Disk |
|
---|---|---|---|
冗長性 | 単一AZ | 3ゾーン (オプション) |
複数ゾーン (オプション) |
総量の最大サイズ | 64 TiB | 64 TiB | 64 TiB |
最大スループット | 1,000MiB/秒 SSD gp3 |
750MB/秒 Standard SSD |
1,200MiB/秒 Standard PD |
AWSのAmazon Elastic Block Storeはリージョン内の単一AZの複数ハードウェアに複製され、冗長化されます。プランがSSD gp3の場合、最大スループットは1,000MiB/秒です。
Azure Disk Storageはリージョン内の3ゾーンに冗長化可能で、プランがStandard SSDの場合、最大の基本スループットは750MB/秒です。
Google Cloud Persistent Diskはリージョン内の複数ゾーンに冗長化可能であり、プランがStandard PDの場合、最大の読み取りスループットは1,200MiB/秒となっています。
上記のパブリッククラウドのブロックストレージサービスの保管可能なデータ総量はいずれも64TiBです。
オブジェクトストレージ比較
オブジェクトストレージとは
オブジェクトストレージは、データをオブジェクトとして保存するストレージです。
データ本体、メタデータ、一意の識別子をまとめてオブジェクトとして管理します。
フォルダのような階層構造を持たず、すべてのオブジェクトが同じレベルでフラットに管理されます。
オブジェクトストレージのメリット・デメリット
【メリット】
- データがフラットかつ独立して保存される
各オブジェクトが他のオブジェクトや階層構造に依存しておらず、フラットに独立して管理されるため、オブジェクト単位でデータの取り出し・移動・複製を容易に行えます。 また、ボリュームの追加のみで簡単にスケールアウトでき、管理が複雑ではないためコスト効率も良いです。
【デメリット】
- 更新頻度の高いデータの保存には適さない
一度配置したオブジェクトを編集することができず、他ストレージに比べて読み書き速度が遅いため、頻繁に更新するデータには適しません。
AWS・Azure・GoogleCloudのオブジェクトストレージ
〈AWS〉 S3 |
〈Azure〉 Blob Storage |
〈GoogleCloud〉 Cloud Storage |
|
---|---|---|---|
冗長性 | 複数AZ | 複数ゾーン (オプション) |
複数ゾーン |
セキュリティ | IAM バケットポリシー |
Azure RBAC | Cloud IAM |
総量の最大サイズ | 無制限 | 5 PiB | 無制限 |
データ転送プロトコル | REST API (HTTP/S) |
REST API (HTTP/S) |
REST API (HTTP/S) |
AWSのAmazon Simple Storage Service(以降、S3)は、リージョン内の複数AZに冗長化されており、別リージョンに非同期でデータのコピーを作成することも可能です。AWS IAMロールやS3バケットポリシーといったサービスによりアクセスを制御可能で、必要に応じて容量が動的に拡張されるため保管可能なデータ総量は理論上無制限となっています。
Azure Blob Storageはリージョン内の3ゾーンに冗長化可能であり、サブで使用するリージョンであるセカンダリリージョンに複製することもできます。Azureロールベースのアクセス制御(Azure RBAC)を用いてリソースへのアクセスを制御可能で、保管可能なデータ総量は5PiB以上使用する場合は別途Azureサポートに問い合わせが必要です。
Google Cloud Storageは、リージョン内の複数ゾーンに冗長化でき、デュアルリージョンやマルチリージョンといった複数のリージョンでの冗長化にも対応しています。Cloud IAMによりアクセス制御が可能で、S3と同様に保管可能なデータ総量は理論上無制限となります。
データ転送プロトコルはすべてREST APIを使用したHTTP/HTTPS接続となっています。
ストレージ料金比較
AWS・Azure・GoogleCloudにおける各ストレージの料金は以下のようになっています。
AWS | Azure | GoogleCloud | |
---|---|---|---|
ファイル ストレージ |
EFS FSx for Windows File Server $196.61 $159.74 (¥29,492) (¥23,962) 1 AZ 1 AZ SSD |
$196.61 (¥29,492) SSD Premium LRS |
$194.56 (¥29,184) Basic HDD (Standard) |
ブロック ストレージ |
$98.30 (¥14,746) SSD gp3 |
$76.80 (¥11,520) Standard SSD LRS |
$53,25 (¥7,988) Standard PD |
オブジェクト ストレージ |
$25,60 (¥3,840) S3 Standard |
$20,48 (¥3,072) Blob Standard LRS |
$23,55 (¥3,533) Standard Storage |
※表内の金額はすべて 1024 GB/月かつ、通信にかかる費用は勘案せずに算出。
東京リージョンでの料金を記載。
為替レートは $1 = ¥150 で計算。
為替計算で生じる小数点以下は切り上げ。
2024/11 時点の情報を元に作成。
料金はプランによって変動しますが、ファイルストレージはオブジェクトストレージと比較してコストが大きくなる傾向があります。これは、ファイルストレージを利用するためのサーバやその運用にコストがかかってしまうためです。
対してオブジェクトストレージのコストは小さい傾向にあります。これは、ボリュームを追加することでスケールアウトを簡単に実現できることに加え、階層構造や複雑な管理が不要で運用コストが低減されるためです。
まとめ
ストレージはデータを長期的に保存するための記憶装置で、ファイルストレージ、ブロックストレージ、オブジェクトストレージといった種類があります。
それぞれのストレージにはメリット・デメリットがあり、使用する場面に応じて適切なストレージを選択する必要があります。
また、AWS・Azure・GoogleCloudといった各クラウドベンダーによってもそれぞれのストレージの特徴が異なるため、どのクラウドベンダーを選択するかも重要になってきます。
ストレージを使用する際は、必要な機能や性能を整理し、料金も踏まえた上で最適なものを選択することが大切です。
アジアクエスト株式会社では一緒に働いていただける方を募集しています。
興味のある方は以下のURLを御覧ください。