dynamic partition の落とし穴
例えば、int型のdayという項目をpartition にしている場合、dynamic パーティションを使うと、dayにint以外のデータが入ってしまうケースがある。
その場合、day を例えば以下のように範囲指定すると、クエリ実行後しばらくして NullPointerException になってしまう。
where day >= 20110101 and day <= 20110331
dynamic パーティションでデータを突っ込む際は、SELECT 分のWhere句などで異常値が入らないようにすること。
例えばこんな感じ。
INSERT Tabel ・・・PARTITION(day)
select day, ・・・
from ・・・
where day >= 20110101 and day<= 20111231
・・・