Skip to main content
QUICK REVIEW

[論文レビュー] A FaaS File System for Serverless Computing

Johann Schleier-Smith, Leonhard Holz|arXiv (Cornell University)|Sep 16, 2020
Distributed systems and fault tolerance参考文献 45被引用数 10
ひとこと要約

本論文では、関数粒度の障害耐性と楽観的トランザクション的セマンティクスを活用して、スケーラブルで高パフォーマンスな状態管理を実現する、サーバess計算向けの共有POSIX準拠ファイルシステムFaaSFSを提案する。クラウド関数の境界を自然なトランザクションコミットポイントとして扱い、コンFLICT解決を伴うローカルキャッシュを用いることで、POSIX整合性を維持しながらローカルに近いパフォーマンスを達成し、変更のない状態保持アプリケーションをサーバessで実行可能にする。

ABSTRACT

Serverless computing with cloud functions is quickly gaining adoption, but constrains programmers with its limited support for state management. We introduce a shared file system for cloud functions. It offers familiar POSIX semantics while taking advantage of distinctive aspects of cloud functions to achieve scalability and performance beyond what traditional shared file systems can offer. We take advantage of the function-grained fault tolerance model of cloud functions to proceed optimistically using local state, safe in the knowledge that we can restart if cache reads or lock activity cannot be reconciled upon commit. The boundaries of cloud functions provide implicit commit and rollback points, giving us the flexibility to use transaction processing techniques without changing the programming model or API. This allows a variety of stateful sever-based applications to benefit from the simplicity and scalability of serverless computing, often with little or no modification.

研究の動機と目的

  • サーバessコンピューティングにおけるネイティブな状態管理の欠如により、開発者が特有の非ポータブルストレージAPIを強制されている問題に対処すること。
  • アプリケーションの変更なしに、サーバess環境でもなじみやすいPOSIXファイルシステムセマンティクスを実現すること。
  • クラウド関数の固有の特性(有限な実行時間とidempotentなリトライ)を活用して、トランザクション整合性と障害耐性を実現すること。
  • 共有ファイルシステムがPOSIXセマンティクスを備えながらも、従来のNFSと同等のパフォーマンスを達成できることを示すこと。
  • トランザクション隔離とキャッシュを、サーバessの文脈で効果的に組み合わせることで、整合性とスケーラビリティを確保できることを調査すること。

提案手法

  • FaaSFSは、関数の境界を自然なトランザクションコミットおよびロールバックポイントとして扱い、プログラミングモデルを変更せずに透明なトランザクション管理を可能にする。
  • ローカルキャッシュを用いた楽観的並行制御を採用し、高速なローカルファイル操作を可能にするとともに、コンフリクトはコミット時のみに解決する。
  • すべてのファイルシステム操作をトランザクションメカニズムでラップすることで、キャッシュ読み取りやロック操作のコンフリクトが発生しても整合性を保証する。
  • 細粒度のキャッシュ更新メカニズムを採用し、特にファイル長の変更時における並列変更を効果的に処理することで、並列処理の性能を向上させる。
  • 障害耐性のためにidempotentな関数実行とリトライセマンティクスに依存することで、既存のFaaSプラットフォームと統合する。
  • POSIXセマンティクスをトランザクションデータベースモデルにマッピングし、メモリ整合性の保証とトランザクション隔離レベルを丁寧に一致させる。

実験結果

リサーチクエスチョン

  • RQ1無人関数を用いたサーバess環境において、POSIX準拠のファイルシステムを効率的かつ整合的に実装できるか?
  • RQ2トランザクションセマンティクスをローカルキャッシュと効果的に組み合わせることで、サーバessワークロードにおける高パフォーマンスを達成できるか?
  • RQ3クラウド関数に内在する障害耐性とidempotencyを最大限に活用することで、ファイルシステムにおける整合性と回復の簡素化が可能か?
  • RQ4FaaSFSは、従来のNFSと同等のパフォーマンスを達成できるか、かつ変更のないアプリケーションをサポートできるか?
  • RQ5サーバessファイルシステムの文脈において、強い整合性(可串列化性)と弱い整合性モデルとの間で、どのようなトレードオフが生じるか?

主な発見

  • FaaSFSは、実世界のアプリケーション(フルスタックブログを含む)を変更なしに実行でき、既存ソフトウェアとの実用的互換性を示した。
  • Filebench や TPC-C といった合成ベンチマークにおいて、従来のNFSベースのファイルシステムと同等のパフォーマンスを達成した。
  • 楽観的並行制御とローカルキャッシュの組み合わせにより、並列アクセス下でも高いスループットと低レイテンシを実現した。
  • 関数境界をトランザクション境界として利用することで、アプリケーションのプログラミングモデルを変更せずにトランザクション管理を透明化できた。
  • コミット時のコンフリクト解決は効果的かつ効率的であり、整合性を維持しながらも高いスケーラビリティを確保した。
  • プロトタイプは、サーバess環境において共有でPOSIX準拠のファイルシステムが実現可能であることを示しており、サーバessコンピューティングの広範な採用への道を開いた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。