Amazon EC2 ストレージオプション
Amazon EC2では、アプリケーションの要件に応じて最適なストレージ性能とコストを実現するため、多様なストレージオプションを提供しています。適切なストレージタイプを選択することで、パフォーマンスとコスト効率の両方を最適化できます。
Amazon EBSボリューム
Amazon Elastic Block Store(EBS)は、EC2インスタンスで使用するための永続的なブロックレベルストレージボリュームを提供します。EBSボリュームは高い可用性と信頼性を備えており、同一アベイラビリティーゾーン内で自動的にレプリケートされます。
汎用SSD(gp3)- 最新世代
gp3は最新世代の汎用SSDボリュームで、ストレージ容量に関係なく一貫したベースライン性能を提供します。すべてのボリュームサイズで3,000 IOPSと125 MiB/sのベースライン性能を実現し、追加料金で最大16,000 IOPSと1,000 MiB/sまでスケールアップできます。
主要特徴
- 容量: 1 GiB〜16 TiB
- 耐久性: 99.8%〜99.9%(年間故障率0.1%〜0.2%)
- レイテンシー: 一桁ミリ秒
- 性能保証: プロビジョニングされた性能を99%の時間で提供
最適な用途
- 仮想デスクトップ
- 中規模の単一インスタンスデータベース(Microsoft SQL Server、Cassandra、MySQL、Oracle DB)
- Hadoop分析クラスター
- 低レイテンシーインタラクティブアプリケーション
- 開発・テスト環境
- ブートボリューム
汎用SSD(gp2)- 従来世代
gp2ボリュームは、ボリュームサイズに比例して性能がスケールする従来の汎用SSDです。ベースライン性能は1 GiBあたり3 IOPSで、最小100 IOPS、最大16,000 IOPSまで提供します。最大スループットは250 MiB/sです。
バースト機能 1 TiB未満のボリュームでは最大3,000 IOPSまでバースト可能です。バースト機能はクレジットシステムに基づいており、ベースライン性能以下で動作している間にI/Oクレジットを蓄積し、高負荷時にこれを消費して性能を向上させます。
性能計算例
- 16,000 IOPSを達成するには最低5.33 TiBのボリュームサイズが必要
- 最大スループット250 MiB/sを一貫して得るには334 GiB以上のボリュームが必要
プロビジョンドIOPS SSD(io2 Block Express)
io2 Block Expressは、最も高い性能を要求するミッションクリティカルなアプリケーション向けに設計されています。Nitroベースのインスタンスでは最大256,000 IOPSまでプロビジョニング可能で、その他のインスタンスタイプでは最大64,000 IOPSまで利用できます。
主要仕様
- 容量: 4 GiB〜64 TiB
- 最大IOPS: 256,000 IOPS(Nitroベースインスタンス)
- 最大スループット: 4,000 MiB/s
- IOPS/GiB比: 最大1,000 IOPS/GiB
プロビジョンドIOPS SSD(io1)
io1は従来の高性能SSDボリュームで、I/O集約的なNoSQLおよびリレーショナルデータベース向けに設計されています。最大64,000 IOPSと1,000 MiB/sのスループットを提供します。
ハードディスクドライブ(HDD)ボリューム
HDDベースのボリュームは、大規模なストリーミングワークロードに最適化されており、主要な性能属性はスループットです。
スループット最適化HDD(st1)
st1は頻繁にアクセスされる大容量データセット向けに設計されており、最大500 MiB/sのスループットを提供します。
主要仕様
- 容量: 125 GiB〜16 TiB
- 最大IOPS: 500(1 MiB I/O)
- 最大スループット: 500 MiB/s
- 用途: ビッグデータ、データウェアハウス、ログ処理
コールドHDD(sc1)
sc1は最も低コストのEBSボリュームタイプで、アクセス頻度の低い大容量データ向けに設計されています。
主要仕様
- 容量: 125 GiB〜16 TiB
- 最大IOPS: 250(1 MiB I/O)
- 最大スループット: 250 MiB/s
- 用途: アーカイブデータ、バックアップ
インスタンスストア
インスタンスストアは、EC2インスタンスに物理的に接続された一時的なブロックレベルストレージです。インスタンスの停止、休止、または終了時にデータが削除される特徴があります。
主要特徴
- 高速I/O: 物理的に接続されているため非常に高速
- 一時的: インスタンス停止時にデータが失われる
- 追加料金なし: インスタンス料金に含まれる
- 用途: 一時的なストレージ、キャッシュ、バッファ
EBSスナップショット機能
EBSスナップショットは、EBSボリュームの特定時点でのバックアップを作成する機能です。初回スナップショットはボリューム全体のコピーですが、その後のスナップショットは変更されたブロックのみを保存する増分バックアップです。
クロスリージョンコピー スナップショットは異なるAWSリージョン間でコピーでき、災害復旧やデータ移行に活用できます。暗号化されたスナップショットも、暗号化を維持したままコピー可能です。
自動スナップショット管理 Amazon Data Lifecycle Manager(DLM)を使用して、スナップショットの作成、保持、削除を自動化できます。これにより、バックアップポリシーの一貫した実行とストレージコストの最適化が可能です。
EBS暗号化機能
EBSボリュームの暗号化により、保存時および転送時のデータ保護を実現できます。暗号化はAWS Key Management Service(KMS)と統合されており、キーの管理が簡素化されます。
暗号化の特徴
- 透過的: アプリケーションの変更不要
- 高性能: 暗号化によるパフォーマンス低下は最小限
- 包括的: ボリューム、スナップショット、インスタンス間の転送すべてを暗号化
EBS Multi-Attach
EBS Multi-Attachにより、単一のEBSボリュームを同じアベイラビリティーゾーン内の複数のEC2インスタンスに同時にアタッチできます。クラスター化されたアプリケーションでの高可用性実現に活用できます。
対応ボリュームタイプ
- io1およびio2ボリュームのみサポート
- gp2、gp3、st1、sc1では利用不可
ストレージ選択のベストプラクティス
用途別推奨ボリュームタイプ
用途 | 推奨ボリュームタイプ | 理由 |
---|---|---|
ブートボリューム | gp3 | コスト効率と十分な性能 |
汎用アプリケーション | gp3 | 性能とコストのバランス |
高性能データベース | io2 Block Express | 最高レベルのIOPS |
ビッグデータ処理 | st1 | 高スループット |
アーカイブ | sc1 | 最低コスト |
性能最適化のポイント
- EBS最適化インスタンスの使用
- 適切なボリュームサイズの選択
- 必要に応じたIOPSとスループットのプロビジョニング
- 定期的な性能監視とチューニング
引用元:
- https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html
- https://aws.amazon.com/ebs/volume-types/
- https://www.cloudforecast.io/blog/amazon-ebs-gp2-vs-gp3-volumes/
- https://repost.aws/knowledge-center/ebs-volume-type-differences
- https://www.cloudzero.com/blog/aws-gp2-vs-gp3/
- https://www.amazonaws.cn/en/ebs/volume-types/