アプリケーションのパフォーマンスをテストするために、「ランダムな」データを含むいくつかのファイルでディスク構造を生成する必要があります。いくつかの制限があります。
- データを生成するたびに、実行が異なっていても、常に同じでなければなりません。
- データは大きくなければなりません (> 8GB)
- データの生成に使用されるリソースは軽量でなければなりません (たとえば、8 Gb の zip は私には無効です)。
- データがソースコードのように見えるか、少なくとも人間が読めるものにしたい. その理由は、当社のソフトウェアがソース コードを管理し、データを圧縮するため、できるだけ現実に近いデータを生成する必要があるからです。
最初に頭に浮かんだのは、たとえば github からソース コード リポジトリの zip を作成することでしたが、Amazon クラウドでテストする必要があるため、これはオプションではありません。また、毎回 8Gb のデータをダウンロードしたり、zip ファイルをアップロードしたりする必要もありません。
そこで、ディスク構造ツリーと、ファイルにデータを入力するプログラムを含むメタデータ ファイルを作成しました。メタデータ ファイルは次のようになります。
\dir1 -1
\dir1\file1.data 1435
\dir2\ -1
\dir2\file2.data 44513
パスの横の数字は、ディレクトリの場合は -1 で、ファイルの場合は目的のファイル サイズ (バイト単位) です。
したがって、ランダム データを含むディスク構造を簡単に生成できます。ファイルの内容が毎回異なるため、これは私には有効ではありません。
このタスクを実行するためのライブラリ、例、メソッド、テクニックを知っていますか?