0

ほぼ 2 億レコードのテーブルがあります。クエリには長い時間がかかります。

パフォーマンスを向上させるためのアイデアはありますか?

4

2 に答える 2

2

そのテーブルの id 型の列にインデックスを追加することを検討してください。

ところで、これは SAS EG のパフォーマンスとは何の関係もありませんが、基盤となる BASE SAS エンジンとはすべて関係があります。

于 2012-07-09T06:17:12.290 に答える
1

インデックス作成に加えて、次のことも考慮する必要があります。

  1. 圧縮。データセットを構築するとき、まだ使用していない場合は、必ずcompress=yesオプションを使用してください。これにより、ディスク上のテーブルのサイズが縮小され、ディスク I/O (クエリの最も遅い部分) が少なくなります。
  2. 列の長さを確認してください - $20 の長さしか必要としないものを格納するために $255 のフィールド長を使用していないことを確認してください。
  3. SAS SPDE (スケーラブル パフォーマンス データ エンジン) を使用します。SAS データセットを複数のファイルに分割し、必要に応じてそれらを異なるディスクに分散できます。SAS データセットが特定のサイズに達すると、パフォーマンスの向上を確認できます。私は一般的に、データセットが 10G を超えるといつでも SPD ライブラリ名を使用する傾向があります。追加の SAS モジュールは必要ありません。これは Base SAS の一部として有効になります。
于 2012-07-09T18:15:20.800 に答える