Redshiftでは、複数の列をSORTKEY
列と指定できますが、ベストプラクティスのドキュメントのほとんどは、単一のSORTKEYがあるかのように記述されています。複数のソートキー列を持つことは何を意味しますか?
SORTKEY (COL1, COL2)
で表を作成すると、すべての列がCOL1、次にCOL2でソートされて格納されますか?あるいは、それがカラム型ストアなので、各カラムは異なる順序で格納されますか?私。 COL1の順番のCOL1、COL2の順のCOL2、および他の列は順不同ですか?
私の状況は、(とりわけ)type_idとtimestamp列を持つテーブルがあるということです。データはおおよそタイムスタンプ順に到着します。ほとんどのクエリは、type_idとtimestampの両方によって結合/制限されます。通常、type_id句はより具体的です。つまり、timestamp句を調べるよりも、type_id句を調べるほうがはるかに多くの行を除外できます。このため、type_idはDISTKEYです。私はSORTKEY (type_id)
、SORTKEY (stamp)
、SORTKEY (type_id,stamp)
、SORTKEY (stamp,type_id)
の賛否両論を理解しようとしています。
ありがとうございました。
結果を複数の列(ORRDER BY 1.2.3 ...)でソートする場合は、それに応じてデータをソートします。 – Guy