hero_picture
Cover Image for Amazon S3 Express One Zone触ってみた

Amazon S3 Express One Zone触ってみた

こんにちは、クラウドソリューション事業部の本田です。今回は先日開催されましたAWS re:Invent 2023で発表されました、Amazon S3の新サービスであるAmazon S3 Express One Zoneを触って試してみましたのでそちらをまとめていきます。AWS CLIから操作をしてみて何点かハマったので、そちらを中心に書いていきます。

Amazon S3 Express One Zoneとは

こちらは公式サイトから引用させていただきます。

Amazon S3 Express One Zone は、最も頻繁にアクセスされるデータやレイテンシーの影響を受けやすいアプリケーションに対して、一貫した 1 桁ミリ秒のデータ アクセスを提供することを目的として構築された、高性能の単一アベイラビリティーゾーンのストレージクラスです。S3 Express One Zone は、S3 Standard と比較してデータ アクセス速度を 10 倍向上させ、リクエスト コストを 50% 削減できます。これまでも、S3 データを保存するために特定の AWS リージョンを選択できましたが、S3 Express One Zone を使用すると、データを保存するために AWS リージョン内の特定の AWS アベイラビリティ ゾーンを選択できます。ストレージとコンピューティング リソースを同じアベイラビリティーゾーンに同じ場所に配置して、パフォーマンスをさらに最適化することを選択できます。

今までリージョン単位ではS3の作成はできたのですが、今回新サービスによって特定のAZ内までデータを保存する場所を選択できるようになりました。静的サイトの配信などCloudFrontを経由してなどのユースケースであれば利用することはなさそうですが、S3をマウントしてEC2からアクセスしている、機械学習や分析などのユースケースでS3にアクセスしている場合はこちらを利用することでより高速にS3のデータにアクセスすることが可能となっています。

料金面

通常のS3と料金面を比較しますと、通常のS3の方がお安いです。

通常のS3が最初の50TBでの比較となりますが、通常のS3の方が安いことがおわかりいただけるかと思います。速度面にかなり特化したS3とご理解いただけるかと思います。

触ってみる

今回はAmazon S3 Express One Zoneを作ってみて、AWS CLIから一覧の表示と、ファイルのアップロード、同期の処理を行ってみます。

Amazon S3 Express One Zoneの作成

こちらはコンソールから作ってみました。

バケットタイプを「ディレクトリ」とし、AZを選択するだけです。またバケット名の最後にはAZ毎でサフィックスが付くようになっています。

EC2からAWS CLIで操作する

AWS CLIのバージョンを確認しよう

作成したバケットにAWS CLIでアクセスしてみます。aws s3 lsで中身をみようとすると、バケットがないというエラーになってしまいました。

こちらについてはAWS CLIのバージョンが最新でないことが原因でしたので最新化しました。新サービス、新機能などを検証する際はAWS CLIのバージョンは要チェックです。

最新化した後に再度lsコマンドを実行したのですが、今度は権限周りのエラーとなってしまいました。

権限周りを見直そう

アクセスしているEC2のロールには、検証でしたのでS3のフルアクセス権限をつけていますがこちらのエラーとなりました。試しにPowerUserAccessなど強めの権限をつけてみたところエラーが解消されたので、S3以外の権限である辿り着きました。S3ということで、S3の権限をつけていましたが、ポリシー自体を探ってみると、通常のS3ではなく、S3 Expressというサービスで用意されていました。

ですので、こちらのフルアクセスの権限のポリシーを用意してどうなるかみてみます。

無事成功

  • バケット内の確認

S3 Expressの権限を付与することで、無事バケット内の一覧を取得することができました。

  • ファイルのアップロード

ファイルのアップロードも問題ないですね。

  • ローカルへ同期

同期も問題なし。

操作自体は通常のS3と変わらずという感じでした。

最後に

実際のユースケースとして以下のような記載がありました。

Amazon SageMaker モデルトレーニング、Amazon Athena、Amazon EMR、AWS Glue データカタログなどのサービスで AI、機械学習、分析のワークロードの速度を向上

実際に携わっている案件ではあまり有効活用できそうなシーンはなさそうではありますが、権限周りは通常のS3と同じ感覚で設定すると、そもそもが別サービスである(ドキュメントなどを読んでも別物感がありました)ので注意が必要です。権限周りでハマった方のお役に立てばと思います。