「Windows 10ミニTips」は各回の作成時点で最新のWindows 10環境を使用しています。

コールドデータは「LZX」で圧縮

筆者は書き終えた原稿をOneDrive for Business内の別フォルダーに移動している。まれに、外出先から参照することがあるからだ。デスクトップPCはファイルオンデマンド機能を無効にしているが、HDDの容量を節約するため、圧縮設定を施している。

  • Windows 10 ミニTips

    筆者の原稿フォルダー。2004年以前のデータはCD-Rに書き込んで保存しているが、メディアの劣化を踏まえると、そろそろHDDに書き戻さなければならない

Windows 10で圧縮設定を有効にするには、プロパティダイアログの「内容を圧縮してディスク領域を節約する」にチェックを入れるわけだが、この状態では必ずしも最適な圧縮状態にはならない。

  • Windows 10 ミニTips

    GUI操作による圧縮機能。圧縮するかしないかの選択肢しかない

上図で示したのは、コマンドラインから圧縮・伸張する「compact」コマンドのヘルプメッセージだ。compactコマンドは以前の記事でも触れたが、今回注目してほしいのは、オプション「EXE」の存在だ。

圧縮形式として「XPRESS4K」「XPRESS8K」「XPRESS16K」「LZX」の4種類があることに気付くだろう。前者の3つはLZ77スタイルの辞書を用いたXpress圧縮で、後者(LZX)はZIPやgzipなど広く使われるDEFLATE形式を用いた圧縮である。

  • Windows 10 ミニTips

    「compact」コマンドのヘルプメッセージ

今回、フォルダー数590(ファイル数3,037)のフォルダーに対して、XPRESS4KとLZXで違いが出るか試してみた。コマンドラインからの操作は、前者が「compact /c /s /q /f /exe XPRESS4K .」、後者が「compact /c /s /q /f /exe LZX .」となる。

無圧縮状態で3.72GB(3,999,383,465バイト)だった同フォルダーは、XPRESS4Kで3.68GB(3,952,992,256バイト)に、LZXで3.67GB(3,950,467,860バイト)になった。

  • Windows 10 ミニTips

    GUI上の表示は対応していないか、正しい数値が反映されない。察するにXPRESS4Kベースで算出しているのだろう

テストに用いたフォルダーの主な中身は、テキストファイルとJPEGファイルだが、それでもXPRESS4KとLZXで0.1GBの差が出るのは意外だ。

次に、様々なファイルを格納して使用容量が15.9GB(17,123,988,384バイト)のドキュメントフォルダーにも試してみたところ、XPRESS4Kだと11.4GB(12,247,195,648バイト)に、LZXだと11.3GB(12,209,851,060バイト)になった。同じく0.1GBほど差ではあるが、使用頻度の低いコールドデータはLZX形式での圧縮を推奨したい。

阿久津良和(Cactus)