7-ZipはUbuntuでは時間の経過とともに遅くなりますが、Windowsではそうではありません。

7-ZipはUbuntuでは時間の経過とともに遅くなりますが、Windowsではそうではありません。

PagesUbuntuサーバーには、220万のHTMLファイル(約80 GB)があるディレクトリがあります。次のコマンドを使用して7-Zipを使用して圧縮しました。

7z a -mx=9 Pages.7z Pages

圧縮には約5〜6時間かかります(少し長すぎるようです)。圧縮サイズは約2.3GBです。

それを私のメインコンピュータ(Ubuntu、Intel®Xeon®CPU E5-1650 v2 @ 3.50GHz)にダウンロードしました。抽出しようとするたびに残念ながら許容可能な速度で始まりますが、抽出速度が速くなるにつれてクロール速度が遅くなります(一晩実行して目を覚ますと、毎分約300ファイルを処理していました)。

しかし、私のWindowsコンピュータ(Intel®Xeon®CPU E5-2687W @ 3.10GHz、これはやや良いコンピュータ)では、15〜20分でディレクトリ全体を抽出しました。また、Ubuntuの7-Zipではできないマルチプロセッサを活用するようです。

明らかに私は抽出するのに数日を費やすことができなかったので、そうではありませんでした。

私の考えは、これが7-ZipよりもUbuntu(私は回復中のWindowsユーザーである)または私のファイルシステムを理解していないことに関連しているということです。どんな助けでも大変感謝します。

私のホストはext4ファイルシステムを使用し、7-Zipバージョンは9.20です。

7-Zip [64] 9.20 p7zip バージョン 9.20 (locale=en_US.UTF-8, Utf16=on, HugeFiles=on, CPU 12個)

修正する:

基本的なUbuntuインストールのドライブの1つが実際にext4(私のSSD)であることを明確にする必要があります。他のドライブはntfsですが(インストール中にUbuntuでこれをお勧めしたことを覚えています。おそらく私が設定したからです)ソート)。どこにいても、時間の経過とともに速度が低下します。

コメントのアドバイスに従って、Windowsシステムを使用してアーカイブを解凍し、4096のサブディレクトリにディレクトリを再構成してから再圧縮しました(今回は最大圧縮レベルではなくデフォルトの圧縮レベルを使用してlzma2を指定しましたが)。その後、それをUbuntuコンピュータ(特にext4 SSD)に転送し、解凍しました。予想通り大変うまくいきました。非常に迅速に動作しました。

しかし、他のコメントが指摘したように、ここでの問題のいくつかは、私のUbuntuシステムのドライブがインデックス化されていない(Windowsでインデックス付けされている)、インデックスを作成する場合(私が意図したもの)かもしれません。 )、おそらくディレクトリをまったく再構成する必要はありません。私は現在、このタスクを成功的かつ安全に行う方法を見つけようとしていますが、役に立つ結果があれば報告します。

また、Pythonを使用してUbuntuシステムの既存のディレクトリを再構築してみましたが、非合理的に遅かったです。おそらく、これはLinux / ext4 / ntfsではなくPythonの問題である可能性があり、インデックス付けに関連している可能性があります。

for fileName in series:
    if not os.path.exists('[...]/Pages2/' + fileName[:3] + '/' + fileName):
        shutil.copy('[...]/Pages/' + fileName, '[...]/Pages2/' + fileName[:3] + '/' + fileName)

ベストアンサー1

XZのWikipediaエントリ(https://en.wikipedia.org/wiki/Xz):

xzは7-Zipプログラムの単純なバージョンであると考えることができます。 xzには、使用されている.7z形式の代わりに独自のファイル形式があります。7-Zip(Unixに似たファイルシステムメタデータ[2]のサポートが不足しています)。

実際、UbuntuのNTFSまたはEXT-4では、ディレクトリに何百万もの小さなファイルがある可能性があるようです(ただし、他の理由でお勧めできません)。また、私のファイルシステムのインデックス作成に問題はありません。大きなディレクトリを抽出しようとしたときに7zipが遅くなる理由は、7zipの作成者がLinux / Unixユーザーにあまり気にしないという事実に関連しています。

私はNautilusを書いた人がLinuxユーザーに対して同じ軽蔑を持っているのだろうか? b/c また、Windowsエクスプローラには問題のないファイルが多いディレクトリが好きではありません。

おすすめ記事