web-dev-qa-db-ja.com

AWS EFSとEBSとS3の違い(違いと使用時期)

この質問のタイトルによれば、AWS EFS、EBS、およびS3の実際的な違いは何ですか?

私のそれぞれの理解:

  • S3はどこからでもアクセス可能な保管施設です
  • EBSはEC2に取り付けることができる装置です
  • EFSはEC2にマウントできるファイルシステムです

では、なぜEFSよりもEBSを使用するのですか。それらは同じユースケースを持っているが、意味上の小さな違いがあるように思えますか? EFSは単なるマウントされたデバイスであるEFSはAZ間で複製されますが。私はEBSについての私の理解が欠けていると思うので、私は区別することができません。

なぜEFSよりもS3を選ぶのですか?どちらもファイルを格納し、拡張し、複製されます。 S3では、EFSがファイルシステムであるのと同じように、選択したプログラミング言語から標準の入出力方法を使用してファイルを作成できるSDKを使用する必要があると思います。しかし、それが唯一の本当の違いですか?

264
Integralist

1つの単語の答え:お金:D

US-East-1に格納する1 GB: (2016.dec.20に更新)

  • 氷河:0.004ドル/月(注:2016年の大幅な値下げ)
  • S3:月額0.023ドル
  • S3-IA(2015年9月に発表):月額$ 0.0125(+ $ 0.01 /ギグ検索料)
  • EBS:$ 0.045-0.1 /月(速度によって異なります - SSDかどうか)+ IOPS費用
  • EFS:月額$ 0.3

処理中または処理前にデータを一時的に保存するために使用できるその他の保存オプション。

  • SNS
  • SQS
  • キネシスストリーム
  • DynamoDB、SimpleDB

上記のコストは単なるサンプルです。地域によって違いがあるかもしれません、そしてそれはいつでも変わることができます。 (インターネットへの)データ転送のための追加費用もあります。しかし サービスの価格間の比率を示します

これらのサービスの間にはもっと多くの違いがあります。

EFSは次のとおりです。

  • 一般公開中 (プレビュー外)、ただしお住まいの地域ではまだ利用できない場合があります
  • ネットワークファイルシステム(つまり、レイテンシが大きくなる可能性がありますが、複数のインスタンスで共有できます(リージョン間でも可能)。
  • それはEBSと比較して高価です(〜10倍以上)が、追加機能があります。
  • 高可用性のサービスです。
  • マネージドサービスです
  • EFSストレージをEC2インスタンスに接続できます
  • 複数のEC2インスタンスから同時にアクセス可能
  • 2016.dec.20以降、Direct Connectを介してEFSストレージを直接 オンプレミスサーバーに接続することが可能です。 ()

EBSは次のとおりです。

  • ブロックストレージ(だからあなたはそれをフォーマットする必要があります)。これはあなたが望むファイルシステムの種類を選択できることを意味します。
  • ブロックストレージなので、複数のブロックストレージでRaid 1(または0または10)を使用できます。
  • 本当に速いです
  • 比較的安いです
  • Amazonの新しい発表により、SSD-sのストレージあたり最大16TBのデータを保存できます。
  • バックアップのためにEBSを(まだ実行中に)スナップショットできます。
  • しかしそれは特定の地域にしか存在しません。別の地域に移行することはできますが、地域を越えてアクセスすることはできません(EC2を介して共有する場合のみ。ただし、ファイルサーバーがあることを意味します)。
  • 接続するにはEC2インスタンスが必要です
  • 新機能 (2017.Feb.15):ボリュームの使用中に、ボリュームサイズを大きくしたり、パフォーマンスを調整したり、ボリュームタイプを変更したりできるようになりました。変更が有効になるまで、アプリケーションを使い続けることができます。

S3は次のとおりです。

  • オブジェクトストア(ファイルシステムではありません)。
  • あなたはファイルと「フォルダ」を保存することができますが、あなたが伝統的なファイルシステムでするようにロック、許可などを持つことはできません
  • つまり、デフォルトではS3をマウントしてWebサーバーとして使用することはできません。
  • しかし、それはあなたのウェブサイトのためにあなたの画像やビデオを保存するのに最適です。
  • 短期間のアーカイブに最適です(例:数週間)。長期的なアーカイブにも適していますが、Glacierはよりコスト効率が良いです。
  • ログを保存するのに最適
  • すべての地域からデータにアクセスできます(追加料金がかかる場合があります)。
  • 高可用性、冗長性基本的にデータの損失は不可能です(99.999999999%の耐久性、99.9のアップタイムSLA)
  • EBSよりはるかに安いです。
  • コンテンツをインターネットに直接配信できます。EC2インスタンスを使用せずに、S3から直接動作するフル(静的)Webサイトを作成することもできます。

氷河は:

  • 長期アーカイブ保管
  • 非常に安い
  • 取得するのが非常に高価になる可能性があります
  • データを「読み返す」には最大4時間かかります(したがって、長期間取得する必要がないことがわかっているアイテムのみを保存してください)。

JDLのコメントで言及されているように、価格設定に関していくつかの興味深い側面があります。たとえば、Glacier、S3、EFSは、使用状況に基づいてストレージをユーザーに割り当てますが、EBSでは、割り当てられたストレージを事前定義する必要があります。つまり、過大評価する必要があります。 (ただし、EBSボリュームにストレージを追加するのは簡単ですが、ある程度の技術が必要です。つまり、EBSストレージを常に「過払い」してしまうため、さらに高価になります。)

出典: AWSストレージアップデート - 新しい低コストS3ストレージオプションと氷河価格の引き下げ

417
Adam Ocsvari

どうして人々はEFSを支持して最も説得力のある理由を強調していないのだろうか。 EFSは同時に複数のEC2インスタンスにマウントすることができ、EFS上のファイルに同時にアクセスすることができます。

93
Kabeer

比較を修正する:

  • S3はどこからでもアクセス可能な保管施設です
  • EBSはEC2に取り付けることができる装置です
  • EFSは、 複数のEC2インスタンスに同時にマウントできるファイルシステムです

現時点では、EFSとEBSを比較するのは時期尚早です。EFSのパフォーマンスは不明であり、信頼性も不明です。

どうしてS3を使うのですか?

  • ファイルを1つ以上のEC2インスタンスに対して「ローカル」にする必要はありません。
  • (事実上)無限の容量
  • 内蔵Webサービス、認証
63
tedder42

さらに比較すると、EFSでの(バースト)読み取り/書き込みパフォーマンスは、収集されたクレジットによって異なります。クレジットを集めることはあなたがそれに格納するデータの量に依存します。より多くの日付 - >より多くのクレジット。つまり、読み書きされることが多い数GBのストレージしか必要としない場合は、すぐにクレジットが不足し、スループットが約50kb /秒に低下します。これを修正する唯一の方法は(私の場合)、クレジットの獲得率を上げるために大きなダミーファイルを追加することでした。しかし、より多くのストレージ - >より多くのコスト。

6
user1677120

価格と機能以外に、スループットも大きく異なります(user1677120で述べられているように)。

EBS

EBS docs から引用。

| EBS volume | Throughput |           Throughput          |
|    type    |   MiB/s    |         dependent on..        |
|------------|------------|-------------------------------|
| gp2 (SSD)  | 128-160    | volume size                   |
| io1 (SSD)  | 0.25-500   | IOPS (256Kib/s per IOPS)      |
| st1 (HDD)  | 20-500     | volume size (40Mib/s per TiB) |
| sc1 (HDD)  | 6-250      | volume size (12Mib/s per TiB) |

Io1、st1、およびsc1の場合、スループットトラフィックを少なくとも125Mib/sまでバーストできますが、ボリュームサイズに応じて500Mib/sまでバーストできます。

あなたはさらにスループットを向上させることができます。 EBSボリュームをRAID 0 としてデプロイする

EFS

EFSの資料から引用した

| Filesystem |    Base    |   Burst    |
|    Size    | Throughput | Throughput |
|    GiB     |   MiB/s    |   MiB/s    |
|------------|------------|------------|
|         10 |        0.5 |        100 |
|        256 |       12.5 |        100 |
|        512 |       25.0 |        100 |
|       1024 |       50.0 |        100 |
|       1536 |       75.0 |        150 |
|       2048 |      100.0 |        200 |
|       3072 |      150.0 |        300 |
|       4096 |      200.0 |        400 |

基本スループットは保証されており、基本スループットを下回っている間、バーストスループットはあなたが集めたクレジットを使い果たします(したがって、これは限られた時間の間だけ可能です。詳細は here をご覧ください。

S3

S3はまったく異なるものなので、EBSやEFSと比較することはできません。プラス:S3に関する公表されたスループット測定基準はありません。あなたは、並行してダウンロードすることで(スループットを向上させることができます)私はどこかにAWSをこのように基本的に無制限のスループットがあるだろうと述べています)

5
hansaplast

簡単な言葉で

Amazon EBSはブロックレベルのストレージを提供します。

Amazon EFSはネットワーク接続の共有ファイルストレージを提供します。

Amazon S3はオブジェクトストレージを提供します。

0
Mandrek

Amazon EBSはブロックレベルストレージを提供します-これは、ファイルシステムを作成してファイルを保存するために使用されます。 Amazon EFS-NAS/SANのような共有ストレージシステム。 UNIXサーバーにマウントして使用する必要があります。 Amazon S3-各アイテムがhttp URLで保存されるオブジェクトベースのストレージです。

違いの1つは、EBSは一度に1つのインスタンスに接続でき、EFSは共有ストレージを使用する複数のインスタンスに接続できることです。 S2プレーンオブジェクトストレージはマウントできません。

0
suresh joshi