web-dev-qa-db-ja.com

SMRドライブ(シングルドライブ)で実行した場合、rsyncのパフォーマンスを向上させるために何ができますか?

SMRドライブとの間でrsyncと同期すると、パフォーマンスが最低3〜5 mb/sに低下し、ヘッドフライングノイズが目立ちます。

rsyncがSMRドライブのみを読み取る場合、これは特に予期しないことです。瓦礫で書かれたデータの読み取りは、PMRドライブ(垂直磁気記録ドライブ)と同等のパフォーマンスを発揮する必要があります。

一般的なファイルシステムはどれも同様の動作を示すようです。

SMRドライブ(シングルドライブ)のrsyncパフォーマンスを向上させるために、もしあれば、何ができるでしょうか?

2
user866830

rsyncfrom SMRドライブの場合は、ファイルシステムがread-onlyまたはnoatimeオプションでマウントされていることを確認してください。

そうしないと、SMRドライブはrsyncが読み取るファイルごとにタイムスタンプを書き込む必要があり、パフォーマンスが大幅に低下し(ここでは、約80 mb/sから3〜5 mb/sになります)、ヘッドウェア/クリックノイズが発生します。

パフォーマンスの低いrsyncジョブをすでに実行している場合は、停止する必要はありません。ソースファイルシステムを再マウントできます。

Sudo mount -o remount,ro  /path/to/source/fs

効果はすぐには見られません。しばらくお待ちください。ドライブがバッファに残っているすべてのデータの書き込みを完了するまで、10〜20分待ちます。このアドバイスは試され、テストされています。


これは、rsyncing to SMRドライブの場合、つまりファイルが完全にディスクに書き込まれた後にファイルシステムがタイムスタンプを更新しようとした場合にも当てはまる可能性があります。このジッターシーケンシャルワークロードと膨大なデータ帯域が継続的に書き換えられ、ドライブの摩耗につながります。次のmayヘルプ:

Sudo mount -t fs_type -o rw,noatime device /path/to/dest/fs

これは、rsyncを実行する前に実行する必要があります。他の要因により、このオプションは重要ではなくなる可能性があります。つまり、バッファなしのFAT/MFT更新、ファイルシステムが主にSSD用に最適化されている場合の並列書き込みなどです。


とにかく完全なファイルシステムをバックアップしたい場合は、dd bs=32Mを使用して、SMRターゲットのファイルシステムのサイズを変更してみてください(この場合、すべてのファイルを転送するためにファイルをマウントしてrsyncを実行する必要はありません)。


ここで使用されているハードウェアの例は、Seagateドライブで管理されているSMR8tbコンシューマードライブでした。マイレージは他のハードウェアによって異なる場合があります。

1
user866830