■
- やたらデータ量の多いファイルを分割するtips
重複データが混じっている可能性があるため、
sortしてuniqしてデータを確認しようとすると、ことごとく失敗するので。
こんなメッセージを残して、やってくれない。
数字の引数nをやめたりもしたが、結果は同じ。
ファイルが小規模な時はいつもすんなり行くだけに、小さいファイルで確認してやったところで、
時間をかけた後、大規模ファイルでやってくれてないことに気づくのは、かなりがっかり。
sort: cannot create temporary file: /tmp/384037.1.interactive/sortgH75xX: No such file or directory
そこで、分割。splitだと、ファイルサイズや行数で分けるので、
最終的に重複データをチェックするためには使えない。
BEGIN{ FS=","; dT=10000000; } { X=int($1/dT); str=sprintf("%d""_""%s",X,ARGV[1]); print $0 >> str; }
1カラム目を、1千万区切りずつでファイルに分割している。