Hugging Face Hub ストレージの再アーキテクチャ
Hugging Faceは、Hubのストレージバックエンドを再アーキテクトし、不透明なBlob転送をコンテンツアドレスドストア(CAS)に置き換えています。この変更により、プラットフォームはファイルをバイトレベルで分析できるようになり、重複除去と圧縮が可能になり、巨大なモデルの重みとデータセットの転送が大幅に改善されます。
コンテンツアドレスドストレージ(CAS)への移行
Hugging Faceは、「ダムリードとスマートライト」の哲学に基づいたカスタムプロトコルを実装し、AWS CloudFrontの50GBファイルサイズ制限と、ファイルを不透明なBlobとして扱う非効率性を克服しています。
読み取りパス(ダムリード)
高いスループットと低いレイテンシを維持するため、読み取りパスはシンプルさを重視して設計されています。ファイルのリクエストはCASサーバーにルーティングされ、必要な再構成情報が提供されます。実際のデータはus-east-1のS3バケットに保存されたままであり、引き続きCDNとしてAWS CloudFrontを介して提供されます。
書き込みパス(スマートライト)
書き込みパスは、ファイル全体ではなくチャンク単位で動作することにより、速度とセキュリティを最適化しています。ユーザーがデータをアップロードすると、CASサーバーは既存のチャンクを特定し、クライアント(例えばhuggingface_hub)に新しいユニークなチャンクのみを転送するよう指示します。これらのチャンクは、S3バックアップストアにアップロードされる前にCASによって検証されます。
技術的最適化と機能
バイトレベルでファイルを管理することにより、Hugging Faceはアップロード時間を短縮するフォーマット固有の最適化を適用できます:
- Tensor Files: チームは、Tensorファイル(例えばSafetensors)の圧縮を調査しており、これによりアップロード速度が10〜25%潜在的に低減される可能性があります。
- Parquet Files: このアーキテクチャにより、Parquetファイルの重複除去が改善されます。
- Enterprise Security: ファイル転送のためのコントロールプレーンを挿入することにより、プラットフォームは悪意のあるまたは無効なデータのアップロードを防止し、インフラストラクチャチームのための詳細な監査トレースとテレメトリを提供します。
グローバルインフラストラクチャ設計
レイテンシを最小限に抑え、コストをバランスさせるため、Hugging Faceは88か国のアップロードトラフィックの分析に基づいて、3つの戦略的なAWSリージョンにCASノードを展開しています:
us-east-1(北米と南米): 4ノードeu-west-3(ヨーロッパ、中東、アフリカ): 4ノードap-southeast-1(アジアとオセアニア): 2ノード
この分布は、アップロードボリュームの大半を占めるリージョンを対象としており、米国とヨーロッパがアップロードバイトの78.4%、アジアが21.6%を占めています。
実装ロードマップ
Hugging Faceは、2024年末までに新しいインフラストラクチャを本番環境に移行することを予定しており、us-east-1に単一のCASから開始します。ロールアウトは段階的なアプローチに従います:
- Internal Benchmarking: 新しいシステムに内部リポジトリを複製し、転送性能をテストします。
- Regional Expansion: CASを追加のポイント・オブ・プレゼンス(PoPs)にレプリケートします。
- Full Integration: 2025年にストレージバックエンドの移行を完了します。