materialize_statistics_on_insert
materialize_statistics_on_insert_max_table_size を超えないテーブルのみが対象です。
materialize_statistics_on_insert_max_table_size
materialize_statistics_on_insert を参照) 。この仕様は INSERT 単位ではなく、書き込みブロック単位で適用されます。1 回の INSERT はパーティションごとに 1 ブロックに分割され (ストリーミング挿入の場合は複数ブロックに分割され) 、進行中の INSERT によるパーツはまだアクティブではないため、各ブロックはすでにアクティブなパーツのサイズに対してチェックされます。したがって、空のテーブルへの 1 回の一括ロードでは、合計サイズがしきい値を超えていても、すべてのパーツについて統計を構築できます。上限が適用されるのは、その後の INSERT からです。パーツが書き込まれるまでは圧縮サイズが不明であるため、非圧縮ブロックサイズを使用することで、チェックは最大 1 ブロック分だけ意図的に保守的になります。これにより、コストベースの join 順序変更で重要な小規模ディメンションテーブルの統計を最新に保ちつつ、大規模ファクトテーブルでの INSERT ごとのオーバーヘッドを回避します (これらの統計は代わりにマージ中に構築されます) 。0 はサイズ上限なしを意味します。