AWS入門:S3とEFSについて

スポンサーリンク
AWS入門:S3とEFSについて 用語解説
AWS入門:S3とEFSについて
この記事は約4分で読めます。
よっしー
よっしー

こんにちは。よっしーです(^^)

今日は、S3とEFSについて解説しています。

スポンサーリンク

背景

S3とEFSの違いについて調査する機会がありましたので、その時の内容を備忘として記事に残しました。

S3とEFSの違い

Amazon S3とAmazon EFS(Elastic File System)は両方ともAWSのストレージサービスですが、その目的と機能は大きく異なります。

Amazon S3

  • オブジェクトストレージサービス
  • ファイルをオブジェクトとして扱い、Bucketにオブジェクトを格納します
  • 完全マネージド型でスケーラブル、高可用性を実現
  • データはリージョン内で冗長化されて保存されます
  • 主にデータレイク、バックアップ、静的コンテンツ配信などの用途

Amazon EFS

  • マネージド型の分散ファイルシステム
  • NFSv4プロトコルを使ってEC2インスタンスからマウントできます
  • ファイルシステムとしてリアルタイムの読み書きが可能
  • リージョン内で完全マネージド型のファイルストレージを提供
  • ビッグデータ、コンテナ、Webサーバーなど、共有ファイルシステムが必要なユースケース

違いをまとめると、

  • S3はオブジェクトストレージ、EFSはファイルストレージ
  • S3はオブジェクトレベルのアクセス、EFSはファイルシステムとしてマウント
  • S3は主にデータ保管、EFSはリアルタイム読み書き用途

このようにユースケースが異なるため、用途に合わせてそれぞれのストレージサービスを使い分ける必要があります。また、S3とEFSを連携させて活用するケースもあります。

ユースケース

はい、S3とEFSをそれぞれ活用した、または組み合わせたユースケースの例をご紹介します。

Amazon S3を利用するユースケース

  1. 静的Webサイトホスティング
    S3のWebサイトホスティング機能を使い、静的なHTML/CSS/JavaScript/画像ファイルをホストできます。
  2. データレイクまたはデータレポジトリ
    Athena、Redshift、EMRなどのビッグデータ分析サービスとS3を組み合わせ、構造化/非構造化データの集中管理に利用できます。
  3. バックアップとアーカイブ
    S3の高可用性と低コストを活かし、DBスナップショット、サーバーログ、古いデータなどのバックアップやアーカイブに最適です。
  4. Lambda関数のデータ格納
    AWS LambdaなどのサーバーレスアプリケーションでS3を活用し、ログ、アップロードファイル、キャッシュデータを保管できます。

Amazon EFSを利用するユースケース

  1. コンテナ化されたアプリケーション用のストレージ
    ECSやEKSなどのコンテナサービスと組み合わせ、EFSを永続的なファイルストレージとして活用できます。
  2. ビッグデータ分析ワークロードのストレージ
    EMRやAthenaなどのビッグデータサービスで、インプットデータやインターミディエイトデータの共有ストレージとしてEFSを使えます。
  3. マルチAZを跨ぐファイルシステム
    EFSはリージョン内で複数のアベイラビリティーゾーンに自動で分散されるので、高可用性なファイル共有が可能です。

S3とEFSを組み合わせるユースケース

  1. ハイブリッドクラウドストレージ
    AWS Storage GatewayなどのサービスでS3とEFSを連携し、オンプレミスストレージと組み合わせてハイブリッドクラウドストレージを実現できます。
  2. データプロセシングパイプライン
    EFSにインプットデータを配置し、データ処理結果はS3に出力、という風にS3とEFSを組み合わせてデータパイプラインを構築できます。

このように、S3とEFSにはそれぞれ異なるユースケースがあり、場合によっては組み合わせて利用することで、柔軟で効率的なストレージソリューションが実現できます。

おわりに

今日は、 S3とEFSの違いについて解説しました。

よっしー
よっしー

何か質問や相談があれば、コメントをお願いします。また、エンジニア案件の相談にも随時対応していますので、お気軽にお問い合わせください。

それでは、また明日お会いしましょう(^^)

コメント

タイトルとURLをコピーしました