[レポート] Amazon FSx による HPC と ML の高速化に Deep dive #reinvent #STG343

2022.11.29

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

AWS re:Invent 2022 で行われた Breakout Session 「Deep dive on accelerating HPC and ML with Amazon FSx」のセッションレポートです。

行ってきた感じ FSx for Lustre の理解を深めよう!な内容でした。それではどうぞ。

セッション概要

File services are often asked to deliver performant capabilities with low latencies for compute-intensive workloads or high IOPS for data-intensive applications. In this session, learn best practices for choosing how to rightsize your performance, reduce latency, increase throughput, and optimize cost. The Amazon FSx family of managed file storage services provides feature sets and performance profiles supporting a variety of use cases. Many workloads like machine learning (ML), high performance computing (HPC), video rendering, and financial analytics require cost optimizations and deployment options. This session also shares tips and best practices for migrating performant-dependent use cases to AWS.

登壇者

  • Shrinath Kurdekar
    • Principal Solutions Architect, Amazon Web Services
  • Jordan Dolman
    • Senior Product Manager, Amazon Web Services

セッション内容

イントロ

Amazon FSx を使った HPC や機会学習のワークロードの高速化についての少し深く掘り下げたお話です。

  • Jordan Dolman さんの仕事の醍醐味はお客様と一緒になって幅広いワークローロに対応するストレージソリューションを提供すること
  • 対象となるお客様
    • エンタープライズのアプリケーション管理者
    • 機会学習のモデルのトレーニングを行うSaaSアプリケーションの開発者
    • データサイエンティスト
    • バイオインフォマティシャン
    • 研究者など

クラウドにおけるストレージの主要なユースケース3つ

  1. さまざまなアプリケーションから接続するネットワークストレージ
  2. クラウドを活用した事実上無制限にスケールことを目的としたアプリケーション
  3. データを簡単に共有する
  • これらユースーケースから逆算して特定のユースケースのニーズを満たすストレージサービスを開発してきた
    • Amazon FSx
    • Amazon EFS

このセッションでは事実上無制限にスケールするコンピューティングワークロードを実行するためのユースケースに焦点をあてます。

  • クラウド上で利用可能なコンピュートリソースがあったとしても、価値を最大限に引き出すことはできない。
  • ストレージがボトルネックになったり、ネットワークがボトルネックになったりする
  • クラウド上で高性能なストレージを提供するための2つのサービスを提供している
    • Amazon FSx for Lustre
    • Amazon File Cache

Amazon File Cache は別のセッションで深堀りすることを予定しているため、Amazon FSx for Lustre についてお話します。

Amazon FSx for Lustre

  • Lustre とは
    • 世界のスパコンの大半で使用されている
    • POSIX準拠
    • 何千もの同時アクセスをサポートできる拡張性

通常 Lustre ファイルシステムを管理するには専門の知識を有し、数十年の経験が必要。AWS は専門知識の継承やストレージ専門チームを維持することなく、お客様にご利用いただけるよう担っている。

  • ハードウェアの監視、障害検知
  • サーバーやディスクの自動リプレイス対応
  • バランスシステムによる安定稼働

FSx for Lustre がもたらすものとは

  • スケーラブルなスループットキャパシティ
    • 年々EC2インスタンスのネットワークスループットが高くなっている
  • FSx for Lustre は複数のサーバーとディスクで構成されている
    • ファイルを書き込むと自動的にすべてのサーバーに分散されて保存できる
    • 読み込みときも同様
  • ストレージ容量の拡張時にファイルをリバランス
    • 追加されたディスクに保存されていたファイルを分散し直し、性能をフルに発揮できる
  • 1つの大きなファイルはシャード化し分散保存

価格と性能

  • HDD は可能な限り低コストで提供
  • SSD は最小のレイテンシーで提供

スループット観点だともっともコストが安いのは実は SSD

データ圧縮

データ圧縮機能もあり、データセットが圧縮可能だと思う場合は有効化すると

  • ASCII テキストファイルでは 60 - 80% 削減
  • 半導体チップの設計のシミュレーション 50% 削減
  • 金融サービス、気象などの画像処理分野ではすでにファイルが圧縮済みのため圧縮率は低いけど圧縮することはできる

LZ4 圧縮アルゴリズムを使用しており、常に最高の圧縮率を得られるわけではないが、パフォーマンスに悪影響を及ぼさないようにできる。

圧縮すると遅延が増える、スループットが増えるのではないかと思われがちだが、テストした結果、データ圧縮によってファイルシステム遅延が発生することはなかった。むしろ読み込みスループットは向上する。

バックアップ機能

インクリメントバックアップで、初回のフルバックアップ移行は変更点のみです。データが圧縮されていればバックアップデータも圧縮されます。

S3 への透過的なアクセス

お客様の多くは S3 をデータレイクにおいていることがわかっている。

  • 自動走行のセンサーやカメラの計測データ
  • ゲノムデータを大量に作成しているヘルスケアやライフサイエンスの分野
  • クライオ電子顕微鏡や、MRI あらゆる種類の医療用画像など

実際にデータを処理するワークロードの多くはファイルベースです。FSx for Lustre はシームレスに S3 のデータをインポート、エクスポートできる。

実際のデモへ続く

FSx for Luster ライブデモ

FSx for Lustre をデプロイしデータリポジトリとして、インポート用の S3 バケットと、エクスポート用の S3 バケットをリンクした環境を用意してありました。 以下の操作をその場で試してみるデモでした。

  • EC2 から FSx for Lustre をマウントし、S3 のファイルを Lustre のマウントパスからlsコマンドで確認できること
  • ローカル PC からs3コマンドで S3 バケットにアップロードしたファイルが EC2 から Lustre 経由でアクセスできること
  • インポート用の S3 バケットのファイルをコピーして、エクスポート用の S3 バケットをリンクしたパスへペースト
    • マネージメントコンソールから S3 バケットを開き、ペーストされたファイルが S3 バケットに保存されていること

S3 からのデータインポートはファイルアクセス後順次データが S3 から FSx for Lustre へコピーされるレイジーダウンロードについて説明されてデモは終わりました。

おわりに

比較的 FSx for Lustre 触っている方な気がするのですがにまだ知らないところがあったので太字にしました。 オンプレで Lustre ファイルシステムの導入のイニシャルコストと、保守料のランニングコスト考えたら Lustre をマネージドサービスで提供しているのは本当に偉大ですし、ぜひ使っていきましょう!