サイズの大きなデータセットをSORTする

[OS] ALL
[リリース] ALL
[キーワード] BASE, SORT, HUGE DATA SET, TAGSORT

[質問]

サイズの大きなデータセットをソートしていますが、時間がかかります。SASプログラムの工夫で、パフォーマンスを向上させることはできませんか。

[回答]

データセットのサイズが大きく、かつ全変数の変数長に比べてソートキーの長さが非常に短い場合は、TAGSORTオプションを追加すると、SORTプロシジャのパフォーマンスが向上する場合があります。 以下のプログラム例を参考にしてください。


                                  /* サンプルデータセットの作成 */
DATA sample;
  ARRAY a(1000);
  DO i=1 to 20000;
    DO j=1 to 1000;
      a(j)=i;
    END;
    OUTPUT;
  END;
  DROP i j;
RUN;

                                     /* TAGSORTオプションを追加 */
PROC SORT DATA=sample OUT=_tsort TAGSORT;
   BY a1;
RUN;

※ 必ずしもパフォーマンスが向上するとは限りませんので、実際にご利用の環境で、十分にテストを行なってください。