sortのパフォーマンス

仕事上の悩みその1。


現在開発中のシステムで
大量データのソートが必要なのですが、一向にパフォーマンスが上がらないのです。


Linux標準コマンドによるsort使用。
テストデータとして約10万件のデータをソートしたところ約10分弱もかかってしまいます。
(キー長は「10+12+6+8+6=42バイト」)
本来は1000万件以上のデータを考慮してるんですが
今のままだと無理があるんですよ。

sortオプションでテンポラリを増やしたりバッファを増やしたりしても全然変わらず。

ちなみにキーを1つにして10バイトくらいだと数十秒で終わりました。
キーの長さ(数)も関係ありそう。
でもこれ以上減らせないんですよねぇ。


パフォーマンス的に耐えられなくなってきたら商用のソートを購入するしかないかなぁ…
でも調べてみると結構高いんですよね。数十万とか数百万とかなんですもん。
気軽に購入できませんがな。

前の職場ではnsort使ってたので
購入するならこれになりそうですね。