大きなファイルがあります (1 億行のタブ区切り値 - サイズ約 1.5GB)。フィールドの 1 つに基づいてこれをソートする既知の最速の方法は何ですか?
ハイブを試しました。Pythonを使用してこれをより高速に実行できるかどうかを確認したいと思います。
*nixsort
プログラムの使用を検討しましたか? 生の言葉で言えば、おそらくほとんどの Python スクリプトよりも高速です。
-t $'\t'
タブ区切りの-k n
指定、フィールドの指定、n
はフィールド番号、結果を新しいファイルに出力する場合に使用-o outputfile
します。例:
sort -t $'\t' -k 4 -o sorted.txt input.txt
input.txt
4番目のフィールドでソートし、結果をに出力しますsorted.txt
ファイルを適切なリレーショナル データベースに保存し、関心のあるフィールドでインデックスを作成してから、注文されたアイテムを読み取ります。