数百万の小さなファイルに対するSATA SSDプールとHDDアレイ:どちらがより高速に応答するか?

エヴァ・ウォン は テクニカルライター であり ZimaSpaceの常駐ティンカーでもあります。 生涯のオタクであり、 ホームラボとオープンソースソフトウェアに情熱を持っています。彼女は複雑な技術的概念をわかりやすく、 実践的なガイドに翻訳することを専門としています。エヴァはセルフホスティングは楽しくあるべきで、怖がるものではないと信じています。彼女のチュートリアルを通じて、コミュニティが ハードウェアのセットアップを解明する手助けをしています。初めてのNAS構築からDockerコンテナの習得まで。

NASが繰り返しディレクトリを開き、メタデータを更新し、ライブラリをインデックス化し、プロジェクトツリーを同期し、多くのユーザーが小さなファイルを扱う場合、SATA SSDプールが通常は最適です。ファイルが主に保存されていて頻繁に触れられず、データセットが非常に大きく、容量コストが即時の応答より重要な場合は、HDDアレイが通常はよりコストパフォーマンスに優れています。

重要な違いは単に「SSDはHDDより速い」ということではありません。小さなファイルのストレージはレイテンシ、メタデータ、キュー深度、ディレクトリトラバーサル、ファイルシステムの挙動に負荷をかけます。大きな連続ファイルはハードドライブからうまくストリームできますが、数十万の小さなファイルを含むフォルダーは高速ネットワーク上でも遅く感じることがあります。適切なプールは、テラバイト数だけでなく、NASがどれだけ頻繁にそれらのファイルを探して変更する必要があるかによって決まります。

重要なトレードオフ:低レイテンシか手頃な容量か?

SATA SSDプールとHDDアレイはどちらも冗長性、スナップショット、共有フォルダー、多人数アクセスを提供できます。違いは、データ転送が始まる前に各ドライブが行う必要がある処理にあります。

HDDはプラッターを回転させ、機械的ヘッドを要求された位置に移動させる必要があります。大きなファイルのワークロードでは、この遅延は比較的まれに発生します。なぜならドライブは隣接ブロックの読み取りを続けられるからです。小さなファイルのワークロードでは、システムはファイルデータ、ディレクトリエントリ、権限、タイムスタンプ、チェックサム、インデックス、その他のメタデータ間を繰り返しジャンプすることがあります。操作回数が各転送のサイズより重要になります。

SATA SSDは機械的なシーク動作がありません。NVMeと比べてシーケンシャルのピークスループットは制限されますが、SATA SSDはハードドライブよりはるかに多くの小さなランダム操作を処理できます。Samsungは870 EVOファミリーの4KランダムIOPSが数万件にのぼると示しており、インターフェースが「SATAのみ」でもメタデータが多い作業中に回転ディスクより劇的に応答性が高い理由を説明しています。シーケンシャル速度、ランダムIOPS、消費電力、TBWの違いについては公式のSATA SSDランダムI/Oおよび耐久性仕様をご覧ください。

HDDアレイは並列処理で対抗します。ミラー、RAIDZ vdev、または複数のストライプミラーは、単一のハードドライブより多くの操作を処理できます。RAMキャッシュも繰り返し読み取りを大幅に高速化します。しかし、ディスクを追加しても機械的なレイテンシは解消されず、パリティレイアウトは小さなランダム書き込み時に追加の作業を伴うことがあります。

判断要素 SATA SSDプール HDDアレイ
小さなランダム読み取り 強力で、アクセスレイテンシが低い ディスクとキャッシュを増やすことで改善しますが、シーク制限は残ります
小さなランダム書き込み 応答性が良いがSSDの耐久性とコントローラーの挙動に依存 パリティ、断片化、競合タスクで急激に遅くなることがある
使用可能なTBあたりのコスト 高い 低い
騒音と振動 ドライブのシーク音やスピンドル音はない 可聴のハム音、シーク動作、筐体の振動が発生する可能性がある
大容量のコールドアーカイブ 高速だがしばしば高価 通常はより経済的に適している
アプリ、データベース、インデックス 通常はより良いデフォルト 可能だが同時I/Oで応答が低下することがある

SATA SSDプールが小さなファイルにより適している場合

SATA SSDプールは小さなファイルがアクティブな場合に最適です。例としては、ソースコードリポジトリ、同期されたオフィスフォルダ、メールアーカイブ、写真のサムネイル、アプリケーション資産、ウェブルート、ドキュメント管理システム、コンテナボリューム、パッケージリポジトリ、多数のサイドカーファイルを含むデータセットなどがあります。

この利点は、従来のファイルコピーのように見えない操作で最初に現れます。ディレクトリを開く、フォルダサイズを計算する、ファイル名を検索する、権限を確認する、変更をスキャンする、サムネイルを生成する、重複排除を行う、増分バックアップを実行するなどはすべてメタデータや散在するブロックに触れる可能性があります。ストレージの遅延が低いとこれらの操作間の待機時間が短縮されます。

SATA SSDプールは複数ユーザーのアクセスをより一貫して感じさせることもできます。1人のユーザーが大きなファイルをコピーするのは単純な連続ワークロードです。10人のユーザーが同時に小さなドキュメントを開き、名前を変更し、保存し、同期すると、無関係な操作のキューが発生します。SSDは各リクエストごとにヘッドを物理的に再配置しないため、その混合キューをより優雅に処理します。

ネットワークが1GbEまたは2.5GbEの場合、SATA SSDは特に合理的です。これらのリンクの有効スループットをすでに超える連続速度を持ち、ランダムI/Oはブラウジングやアプリケーションのワークロードに有用です。ネットワークがボトルネックであれば、NVMeレベルの連続速度に対して支払ってもリモートファイルコピー速度は変わらないかもしれません。

制約は容量の経済性です。数十テラバイトを保存する冗長なSSDプールは、HDDアレイよりもはるかに高価になることがあります。SSDには有限の書き込み耐久性評価があります。データベース、ログ、一時ファイル、スナップショットを頻繁に書き換える小さなファイルのデータセットは、すべての一般消費者向けSSDが無期限の重い書き込みに適していると仮定するのではなく、TBWやDWPDに基づいてサイズを決めるべきです。

SSDモデルと冗長レベルは、個別のドライブとしてではなくプール設計として選択してください。容量と性能を合わせることで交換が簡単になります。空き容量を確保し、SMARTや摩耗指標を監視し、独立したバックアップを維持してください。フラッシュは機械的な遅延を取り除きますが、コントローラー、ファームウェア、NAND、電源喪失、操作ミスのリスクは取り除きません。

HDDアレイが依然として適している場合

小さなファイルが多数あるがほとんどがコールドである場合、HDDアレイは依然として魅力的です。法的アーカイブ、歴史的研究コレクション、古いプロジェクトツリー、完了した写真エクスポート、ソフトウェアミラー、長期バックアップなどは、数百万のファイルを含んでいても常時のインタラクティブアクセスを必要としません。

これらの作業負荷において、重要な質問はユーザーがどのくらい頻繁にデータセットを列挙または更新するかです。NASがファイルを書き込み、一度検証し、その後ほとんど開かない場合、全容量にSSD価格を払っても日常的な価値はあまり得られないかもしれません。ハードドライブは同じ予算内ではるかに多くのデータを保存できるため、冗長性やバックアップにより多くの資金を割くことができます。

HDDアレイはメモリからも恩恵を受けます。頻繁に使われるメタデータや小さなファイルは、最初のアクセス後にRAMから提供されることがあります。十分なメモリを持つシステムは、繰り返しのブラウジング時にコールドスタートのテストよりもはるかに高速に感じられます。この利点は、作業セットがキャッシュより大きい場合や、スクラブ、バックアップ、インデクサー、ユーザーの作業負荷が同じディスクを競合すると消えます。

アレイのレイアウトは重要です。複数のミラーvdevは、一般的に1つの広いパリティvdevよりも独立したI/Oパスを多く提供しますが、使用可能容量は犠牲になります。パリティは容量優先のストレージに強力な選択肢ですが、小さな同期書き込みやメタデータが多い作業ではオーバーヘッドが顕著になることがあります。ファイル数、読み書きの比率、キューの深さ、障害耐性の目標がわからなければ、普遍的な「最良のRAID」は存在しません。

ハイブリッドZFS設計は、プール全体をフラッシュにしなくてもギャップを縮めることができます。OpenZFSは、冗長なspecial vdevがメタデータや小さなファイルブロックを保持できると文書化しています。これにより、ディレクトリの走査や選択された小さなブロックをSSDに移し、主要なデータはHDDに残すことが可能です。special vdevは使い捨てのキャッシュではなく、失うとプール全体を失う可能性があるため、通常のvdevと同等以上に保護する必要があります。

フラッシュに何を置き、ディスクに何を置くかまだ決めかねているユーザー向けに、ZimaSpaceのNASストレージ計画のためのHDD対SSDガイドは、容量とレイテンシのバランスを広く捉えたフレームワークを提供します。

実際の小ファイルワークロードでの比較はどうでしょうか?

最も有用なテストは単一の連続ベンチマークではありません。ユーザーが実際に行う操作をテストしてください。代表的なフォルダツリーを作成し、コールドおよびウォームのディレクトリリスト、ファイル作成、名前変更操作、メタデータ検索、サムネイル生成、増分バックアップ、復元、ウイルススキャン、アプリ起動を測定します。

クライアント側からもテストしてください。高速なディスクプールでも、SMB、NFS、権限、暗号化、クライアントのウイルス対策によるファイルごとの往復をすべて取り除くことはできません。ZimaSpaceの直接NAS転送と小ファイルのボトルネックに関するガイドは、ネットワークリンクが健全でも、小さなファイルのフォルダが大きなテストファイルよりもはるかに遅く移動する理由を説明しています。

同等の保護レベルで比較してください。単一のSATA SSDを4ドライブの冗長HDDアレイと、購入費用や故障リスクが同じであるかのように比較してはいけません。公平な比較は、同じ使用可能容量、冗長性目標、バックアップ範囲、ネットワーク経路を使用します。

ワークロード より良いデフォルト 理由
アクティブなコードリポジトリとパッケージキャッシュ SATA SSDプール 頻繁なメタデータと小さなランダム操作
写真アプリのデータベースとサムネイル SATA SSDプールまたはハイブリッド インタラクティブな閲覧は遅延に依存
数百万のアーカイブドキュメント HDDアレイ アクセスがまれな場合は容量が支配的
増分バックアップリポジトリ 状況による SSDはメタデータに有効;保持容量が非常に大きい場合はHDDが有利
アーカイブとアクティブアプリの混合 ハイブリッド 容量プレーンとアクティビティプレーンを分離します

ドライブベイとNVMe拡張の両方を備えたプラットフォームは、この分離を容易にします。ZimaCube 2は、複数ドライブのHDD容量と高速なフラッシュストレージをアプリ、メタデータ、インデックス、アクティブなデータセットに組み合わせることができます。正しいレイアウトは、冗長性、バックアップ、ネットワーク速度、測定されたファイルの動作に依存します。

どのストレージレイアウトを選ぶべきか?

SATA SSDプールを選ぶ場合

  • ユーザーは毎日小さなファイルとやり取りします。
  • ディレクトリの閲覧、インデックス作成、検索、サムネイル、または同期の遅延が主な不満点です。
  • 必要な使用可能容量は、冗長化されたSSDとバックアップで保護できるほど控えめです。
  • NASがデータベース、コンテナ、VM、またはその他のランダムI/Oが多いサービスを実行している。
  • デスクや居住エリア近くでの静かな動作が重要である。

HDDアレイを選ぶ場合

  • データセットが大きく、ほとんどがコールドである。
  • 容量、冗長性、バックアップが予算の大部分を占める。
  • インタラクティブなディレクトリスキャンは断続的で連続的ではない。
  • 十分なRAMを提供でき、コールドキャッシュ操作の遅さを受け入れられる。
  • ドライブの騒音や振動が許容できる場所にNASを設置できる。

ハイブリッドレイアウトを選ぶ場合

  • 同じシステムで大きなアーカイブを保存し、アクティブなアプリケーションを実行している。
  • データベース、インデックス、サムネイル、メタデータ、ホットファイルをフラッシュに配置できる。
  • ZFSの特殊vdevは冗長でバックアップされている必要があることを理解している。
  • すべての小さなファイル操作を回転ディスクに強制せずにHDDの経済性を求めている。

購入チェックリスト

  • ファイル数と総容量の両方を推定してください。
  • 平均ファイルサイズと1日のファイル作成、更新、削除率を測定してください。
  • コールドアーカイブ容量をアクティブな作業セットから分離してください。
  • 冗長性を考慮した後の使用可能容量を、生のドライブ容量と比較してください。
  • SSDの耐久性とHDDのワークロード評価を確認してください。
  • コールドキャッシュとウォームキャッシュの動作をテストしてください。
  • プールの種類に関係なく独立したバックアップを保持してください。

よくある質問

NVMeは小さなファイルに対して常にSATA SSDより優れているか?

いいえ。NVMeはより多くのキュー深度、帯域幅、IOPSを提供できますが、SATA SSDはすでにワークロードを支配する機械的遅延を取り除いている可能性があります。ネットワーク、アプリケーション、CPU、または単一ユーザーのキュー深度が制限である場合、SATA SSDとNVMeの差は、どちらかのSSDとHDDの差よりもはるかに小さいかもしれません。

より多くのHDDはSSDプールに匹敵するか?

より多くのHDDは総スループットを向上させ、特にミラーリングされたvdevではより多くの独立したI/Oパスを提供しますが、シーク遅延をなくすことはできません。十分に大きなアレイは重いワークロードに対応できますが、通常は控えめな容量のSSDプールよりも多くのドライブ、電力、冷却、スペース、調整が必要です。

 SSDキャッシュは十分か?

キャッシュは繰り返しアクセスされ、かつ正常に保持されるデータにのみ効果があります。専用のSSDデータセット、SSDアプリケーションボリューム、または適切に設計された特殊vdevは、より予測可能な配置を提供します。キャッシュは、根本的にメタデータが多いワークロードの万能な解決策として扱うべきではありません。

最終的なポイント

数百万の小さなファイルがアクティブな作業セットである場合は、SATA SSDプールを選択してください。これらのファイルが主に容量の問題である場合は、HDDアレイを選択してください。アーカイブにはHDDの経済性を、ユーザーやアプリケーションが毎日触れる部分にはフラッシュの低遅延を必要とする場合は、ハイブリッドストレージを選択してください。

製品比較

もっと読む

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.