athena で検索するためにkinesis firehose で s3 に置いたものを glue の crawler でパーティションを更新する

kinesis firehose で s3 に置くと s3://bucket/prefix/$year/$month/$day/$hour/xxx.gz の形式になる。 glue の crawler を作ると、s3 のパスを指定して athena のパーティションを作ってくれる。上のパス形式だと $year, $month, $day, $hour の 4 つを使ったものになる。 ところで、athena のパーティションは 20,000 がデフォルトでは上限になっている。なのでこれだとあまり作れない。

なので、s3 の put object event を見る lambda を作り s3://bucket/prefix2/$year/$month/$day/xxx.gz なり s3://bucket/prefix2/dt=$year-$month-$day/xxx.gz に置き直すものを用意しておくと、まぁ上限は気にならない程度になる。