Linux で SSD を使用して、スペースを無駄にしたり消耗したりすることなく、HDD 上のデータ ファイルへのアクセスを高速化できますか?

Linux で SSD を使用して、スペースを無駄にしたり消耗したりすることなく、HDD 上のデータ ファイルへのアクセスを高速化できますか?

私は、Ubuntu を使用するラップトップ用に、新品の 250GB Samsung 850 EVO を購入しました。これをプライマリ ストレージ デバイスとして使用し、古いけれどもまだ問題なく動作する 250GB 7500 RPM HDD をアダプタ キャディを使用して以前の DVD ベイに取り付けました。

現在、HDD には OS、アプリケーション、データ ファイルを含む 1 つの大きな ext4 パーティションしかありません。HDD をデータ専用に使用したいのですが、そうすることで SSD の速度向上を得られる機会を逃したくありません。

私が探しているのは、SSD 上の 50 GB 以下の小さなパーティションを 1 つ結合し、それを HDD 上のパーティションとマージして、最もアクセスの多いファイルの中で最も変更が少ないファイルが自動的に SSD に移動されるようにするソリューションです。

私は次のようなキャッシュを見てきましたエナンチェIOそしてバックキャッシュしかし、それらは私が望んでいるものではないようです。なぜなら(間違っていたら訂正してください):

  • キャッシュ パーティションによって占有されるスペースは、使用可能なスペースの量から差し引かれます。
  • キャッシュは、最も頻繁にアクセスされるファイルへのアクセスを、そのファイルが最も頻繁に変更されないファイルであるかどうかに関係なく高速化します。これは、SSD を消耗させたくないという目的に反します。

上記は正しいでしょうか、それともキャッシュ (この 2 つのうちのどちらでしょうか) が目標達成に役立つでしょうか? 上記が正しい場合、他に実行可能な解決策をご存知ですか?

ユニオンファイルシステム、 のようにオーバーレイFS、ここで役立つでしょうか?HDDで最もアクセスされたファイルを監視したとします(その時間毎日)そして、その中で最も変更が少ないものを特定したとします(時間)、理論的にはそれらのファイルをSSDに移動してHDDのスペースを解放することができますが、ユニオンファイルシステムこれらすべてをユーザーに対して透過的にすることができます。これは機能するでしょうか?

答え1

Linux で SSD を使用して、スペースを無駄にしたり消耗したりすることなく、HDD 上のデータ ファイルへのアクセスを高速化できますか?

スペースを無駄にしないことは曖昧です。何かをキャッシュしたい場合は、それをキャッシュする場所が必要になります。そのためにはスペースが必要です。

SSDの消耗については、古い、本当に古いSSD。10 年以上 SSD を頻繁に使用する予定がない限り、心配する必要はありません。

以上のことを踏まえて、解決策に移りましょう。ZFSこれは、SSD に情報をキャッシュできるファイルシステム (およびその他) です。「ZFS キャッシュ: ARC (L1)、L2ARC、ZIL」の部分を参照してください。

便利なリンク:

関連情報