ウェアハウスの構成が動的テーブルのパフォーマンスに与える影響¶
ウェアハウスの大きさとコストには必ずしも関連性がありません。最適なウェアハウスサイズを選ぶには、実験して異なるウェアハウスサイズでのクエリのパフォーマンスを比較します。
通常、ウェアハウスが大きくなると、メモリと並列性が向上するため、クエリのパフォーマンスが向上します。
メモリ:クエリがデータウェアハウスが提供できる以上のメモリを必要とする場合、中間データがローカルストレージに流出し、クエリの総作業量が増加します。ウェアハウスが大きければ、このような流出を防ぐことができ、クエリのスピードが大幅に向上します。
並列処理:並列処理により、クエリをより多くの部分に分割し、それぞれの処理時間が短縮することで、クエリをより高速に実行することができます。クエリに十分な並列性がある限り、ウェアハウスのサイズを大きくすることで、コストを上げることなくクエリ時間を短縮することができます。例えば、小規模のウェアハウスから中規模のウェアハウスに移行する場合、通常、コストは2倍になり、ランタイムは半分になります。
しかし、ある点を超えると、並列処理を増やしても見返りは少なくなります。したがって、コスト的に最適なウェアハウスのサイズは、通常、流出を防ぐには十分な大きさですが、並列処理が飽和するのを避ける程度には十分小さいものとなります。鮮度を保つために最適なサイズは、通常、少し大きめです。
動的テーブルが増分にリフレッシュされる場合、 最初のリフレッシュ は後に続くリフレッシュよりも大きなウェアハウスを必要とすることがよくあります。ワークフローを調整するには、まずウェアハウスのサイズを大きくし、動的テーブルを作成した後、再度ウェアハウスのサイズを小さくします。
ウェアハウスのサイズ決定と関連コストについては、 仮想ウェアハウスのクレジット使用状況 をご参照ください。