Amazon Web Services ブログ
S3 Files の提供開始 – S3 バケットがファイルシステムとしてアクセス可能に
本記事は 2026 年 4 月 7 日 に公開された「Launching S3 Files, making S3 buckets accessible as file systems」を翻訳したものです。
Amazon S3 Files の提供開始をお知らせします。S3 Files は、あらゆる AWS コンピューティングリソースと Amazon Simple Storage Service (Amazon S3) をつなぐ新しいファイルシステムです。
10 年以上前、私がAWS トレーナーだった頃、オブジェクトストレージとファイルシステムの基本的な違いを説明するのに多くの時間を費やしました。よく使ったたとえ話は、S3 オブジェクトを図書館の本に見立てるものでした (1 ページだけ編集することはできず、本ごと差し替える必要がある)。一方、コンピュータ上のファイルはページ単位で変更できます。図を描き、比喩を考え、ワークロードごとに異なるストレージタイプが必要な理由をお客様に説明してきました。そして今日、オブジェクトストレージとファイルシステムの境界がより柔軟になります。
S3 Files により、Amazon S3 はクラウドオブジェクトストアとして唯一、高性能なファイルシステムアクセスを提供します。バケットをファイルシステムとしてアクセスでき、ファイルシステム上のデータ変更は自動的に S3 バケットに反映されます。同期もきめ細かく制御できます。S3 Files は複数のコンピューティングリソースにアタッチでき、データを複製せずにクラスター間で共有できます。
これまでは、Amazon S3 のコスト効率、耐久性、S3 からネイティブにデータを利用できるサービス群と、ファイルシステムの対話的な操作性のどちらかを選ぶ必要がありました。S3 Files でこのトレードオフは不要になります。S3 が組織のデータ基盤となり、Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、コンテナ、関数など、あらゆる AWS コンピューティングリソースから直接アクセスできます。本番アプリケーションの実行、ML モデルのトレーニング、エージェント型 AI システムの構築など、用途を問いません。
汎用バケットを、EC2 インスタンス、Amazon Elastic Container Service (Amazon ECS) や Amazon Elastic Kubernetes Service (Amazon EKS) 上のコンテナ、AWS Lambda 関数からネイティブファイルシステムとしてアクセスできます。ファイルシステムは S3 オブジェクトをファイルやディレクトリとして表示し、Network File System (NFS) v4.1 以降のすべての操作 (ファイルの作成、読み取り、更新、削除) をサポートします。
ファイルシステムで特定のファイルやディレクトリを操作すると、関連するメタデータとコンテンツが高性能ストレージに配置されます。デフォルトでは、低レイテンシーアクセスの恩恵を受けるファイルは高性能ストレージに保存され、そこから提供されます。大規模なシーケンシャル読み取りが必要なファイルなど、高性能ストレージに保存されていないファイルについては、S3 Files がスループットを最大化するため Amazon S3 から直接提供します。バイト範囲読み取りでは、要求されたバイトのみが転送されるため、データ移動とコストを最小限に抑えられます。
データアクセスパターンを予測する的確なプリフェッチにも対応しています。高性能ストレージに保存する内容もきめ細かく制御でき、ファイルデータ全体を読み込むか、メタデータのみを読み込むかを選択して、アクセスパターンに応じた最適化が可能です。
仕組みとしては、S3 Files は Amazon Elastic File System (Amazon EFS) を基盤とし、アクティブなデータに対して約 1 ミリ秒のレイテンシーを実現します。NFS の close-to-open 整合性で複数のコンピューティングリソースからの同時アクセスをサポートするため、データを変更する対話的な共有ワークロードに最適です。ファイルベースのツールで連携する AI エージェントや、データセットを処理する ML トレーニングパイプラインなどが該当します。
使い方を紹介します
初めての Amazon S3 ファイルシステムの作成、マウント、EC2 インスタンスからの利用は簡単です。
EC2 インスタンスと汎用バケットを用意しています。以下のデモでは、S3 ファイルシステムを設定し、通常のファイルシステムコマンドで EC2 インスタンスからバケットにアクセスします。
デモでは AWS マネジメントコンソールを使用します。AWS Command Line Interface (AWS CLI) や Infrastructure as Code (IaC) も利用できます。
デモのアーキテクチャ図は以下のとおりです。
コンソールの Amazon S3 セクションで File systems を選択し、Create file system を選択します。
ファイルシステムとして公開するバケット名を入力し、Create file system を選択します。
ステップ 2: マウントターゲットを確認します。
マウントターゲットは、仮想プライベートクラウド (VPC) 内に配置されるネットワークエンドポイントです。EC2 インスタンスから S3 ファイルシステムにアクセスするために使用します。
コンソールではマウントターゲットが自動的に作成されます。Mount targets タブで Mount target ID を確認します。
CLI を使用する場合は、ファイルシステムとマウントターゲットの作成に 2 つのコマンドが必要です。まず create-file-system で S3 ファイルシステムを作成し、次に create-mount target でマウントターゲットを作成します。
ステップ 3: EC2 インスタンスにファイルシステムをマウントします。
EC2 インスタンスに接続し、以下のコマンドを実行します。
sudo mkdir /home/ec2-user/s3files sudo mount -t s3files fs-0aa860d05df9afdfe:/ /home/ec2-user/s3files
~/s3files にマウントされたファイルシステムで、標準的なファイル操作を使って S3 データを直接操作できます。
ファイルシステム上でファイルを更新すると、S3 が自動的にすべての更新を管理し、数分以内に S3 バケット内の新しいオブジェクトまたは既存オブジェクトの新しいバージョンとしてエクスポートします。
S3 バケット上のオブジェクトに加えた変更は、数秒以内にファイルシステムに反映されますが、1 分以上かかる場合もあります。
# Create a file on the EC2 file system
echo "Hello S3 Files" > s3files/hello.txt
# and verify it's here
ls -al s3files/hello.txt
-rw-r--r--. 1 ec2-user ec2-user 15 Oct 22 13:03 s3files/hello.txt
# See? the file is also on S3
aws s3 ls s3://s3files-aws-news-blog/hello.txt
2025-10-22 13:04:04 15 hello.txt
# And the content is identical!
aws s3 cp s3://s3files-aws-news-blog/hello.txt . && cat hello.txt
Hello S3 Files
知っておくべきこと
技術的な詳細をいくつか紹介します。
- S3 Files は AWS Identity and Access Management (IAM) と統合されており、アクセス制御と暗号化に対応しています。ID ベースのポリシーとリソースポリシーで、ファイルシステムレベルとオブジェクトレベルの両方で権限を管理できます。
- データは TLS 1.3 による転送中の暗号化と、Amazon S3 マネージドキー (SSE-S3) または AWS Key Management Service (AWS KMS) のカスタマーマネージドキーによる保管時の暗号化で常に保護されます。
- S3 Files は POSIX パーミッションを使用し、S3 バケットにオブジェクトメタデータとして保存されたファイルパーミッションに対してユーザー ID (UID) とグループ ID (GID) を照合します。
- S3 Files の監視には、ドライブのパフォーマンスと更新に関する Amazon CloudWatch メトリクスと、管理イベントのログ記録に AWS CloudTrail を使用できます。
- EC2 インスタンスに最新バージョンの EFS ドライバー (amazon-efs-utils パッケージ) がインストールされていることを確認してください。AWS が提供する Amazon Machine Image (AMI) にはプリインストールされています。執筆時点では、最新バージョンに更新できます。
- 本記事では EC2 インスタンスからの S3 Files の使用方法を紹介しました。ECS や EKS のコンテナ (AWS Fargate の有無を問わず)、Lambda 関数からも S3 バケットをファイルシステムとしてマウントできます。
お客様からよく聞かれるのが、ワークロードに適したファイルサービスの選び方です。AWS のサービスは一見重複しているように見え、アーキテクチャレビュー会議でクラウドアーキテクトを悩ませることもあります。ファイルサービスの使い分けを整理しましょう。
S3 Files は、Amazon S3 に保存されたデータに高性能なファイルシステムインターフェースで対話的に共有アクセスする必要がある場合に最適です。本番アプリケーション、Python ライブラリや CLI ツールを使用する AI エージェント、ML トレーニングパイプラインなど、複数のコンピューティングリソースがデータを読み書きし、共同で変更するワークロードに適しています。データを複製せずにコンピューティングクラスター間で共有アクセスでき、サブミリ秒のレイテンシーと S3 バケットとの自動同期を実現します。
オンプレミスの NAS 環境から移行するワークロードには、Amazon FSx が使い慣れた機能と互換性を提供します。Amazon FSx は、Amazon FSx for Lustre によるハイパフォーマンスコンピューティング (HPC) や GPU クラスターストレージにも最適です。Amazon FSx for NetApp ONTAP、Amazon FSx for OpenZFS、Amazon FSx for Windows File Server など、特定のファイルシステム機能が必要なアプリケーションに特に有効です。
料金と利用可能リージョン
S3 Files は、すべての商用 AWS リージョンで利用できます。
S3 ファイルシステムに保存されたデータの容量、小さなファイルの読み取りとすべての書き込み操作、ファイルシステムと S3 バケット間のデータ同期時の S3 リクエストに対して課金されます。Amazon S3 の料金ページに詳細があります。
お客様との対話を通じて、S3 Files はデータサイロ、同期の複雑さ、オブジェクトとファイル間の手動データ移動を排除し、クラウドアーキテクチャの簡素化に役立つと考えています。ファイルシステムで動作する本番ツールの実行、ファイルベースの Python ライブラリやシェルスクリプトに依存するエージェント型 AI システムの構築、ML トレーニング用データセットの準備など、S3 Files を使えば Amazon S3 の耐久性とコストメリットを犠牲にすることなく、対話的な共有ワークロードから S3 データに直接アクセスできます。Amazon S3 を組織のデータ保管場所として使用でき、あらゆる AWS コンピューティングインスタンス、コンテナ、関数からデータに直接アクセスできます。
詳細と使い方については、S3 Files のドキュメントをご覧ください。
S3 Files をどのように活用されるか、ぜひお聞かせください。フィードバックをお待ちしています。
著者について
この記事はVisual Compute Specialist Solutions Architect の森が翻訳を担当しました。



