・Amazon EFS(Elastic File System)
NFS(Network File System)プロトコルをサポートするファイルストレージサービス。NFSとはネットワーク上にある複数のコンピュータからストレージを共有することができるプロトコルのこと。EFSはNFSに対応したAWSサービスおよびオンプレミス(自社運用)のシステムから利用できる。
NFSを利用したファイル共有では、誰かがファイルを更新している際は他の誰かが更新できないようにしたり、参照のみであれば複数人がアクセスできるようにするなど、ファイルに対するロック(排他制御)がなされている。
●フルマネージド型のファイルシステム
EFSは以下の特徴を持つ、フルマネージド型のストレージサービスです。
・容量無制限:EFSではデータ量に伴い自動的にスケーリング(拡張・縮小)が行われるため、利用開始にあたり事前に容量を確保する必要はありません。保存したデータ量に応じて課金が発生。
・可用性:EFSはリージョン内の複数のAZにまたがってサービスを提供しているため、単独AZの障害にも影響を受けません。またデフォルトでAWS Backupを使ったバックアップが有効。
・堅牢性:EFSはデフォルトで保管時のデータの暗号化が有効になっています。また、EFSのファイルシステムマウント時にTLS(Transport Layer Security:セキュアな通信を行うプロトコル)を使うこともできるので、転送データを安全に扱える。
※EBSとの大きな違いは、複数インスタンス(複数ユーザー)からの同時アクセスを前提としていること。またEBS(およびインスタンスストア)は同一AZ内でのみ利用可能でしたが、EFSでは異なるAZのEC2インスタンスからもアクセスが可能。
●パフォーマンスモードとスループットモード
EFSでは、ファイルシステムに対する読み取り・書き込み性能(パフォーマンス)をユーザーが調整できる。パフォーマンスの設定には、ファイルシステム作成時にのみ設定する「パフォーマンスモード」と、運用中に変更が可能な「スループットモード」があります。パフォーマンスモードではファイルシステムの基本的な性能を設定し、スループットモードでは秒間の転送容量(GB/秒)を調整して一時的な高負荷に対応することができます。
パフォーマンスモード(EFS作成時に設定):
・汎用パフォーマンスモード ... 一般的な用途向けのモード
・最大I/Oパフォーマンスモード ... ビッグデータの解析などの大容量データや、数千台のクライアントの処理向けのモード
スループットモード(運用中に変更可能):
・バーストスループットモード ... ストレージの容量に従ってベースライン性能(基本性能)が設定され、一時的に負荷が高くなった場合はベースライン性能の2倍まで性能向上できる
・プロビジョンドスループットモード ... ユーザーが予約した(provisioned)性能をAWSが保証してスループットを提供
バーストスループットモードのベースライン性能はストレージの容量によって設定されるため、データ量が多ければ多いほど高いスループットを得ることができます。逆に、データ量は少ないがアクセス頻度の多いようなケースではバーストスループットモードでは性能要件を満たせない場合があります。その場合はプロビジョンドスループットモードに設定することで最適な性能を得ることができます。