awscliでAthenaのpartition作成

表題の通り。画面からSQLを実行するのが面倒なので`aws`コマンドで一気に作成したい。

■ 環境

  • awscli 1.14.20
  • Amazon Athena
  • Mac OSX El Capitan

■ awscli

コマンドを確認すると、下記で実行が可能そうである。

$ aws athena start-query-execution

`help`を確認すると書きオプションを指定すれば問題なさそうである。

  • –query-string
  • –result-configuration

–query-string“で指定するのは、普段ManagementConsoleで直接書いて実行しているクエリをそのまま書けば良さそうである。”–result-configuration“は結果を出力させるS3上のpathを指定すれば問題がなさそうである。例えば下記のように実行すれば良さそうだ。

$ aws athena start-query-execution \
  --query-string "ALTER TABLE" test.table1 ADD PARTITION (year=2018, month=1) location 's3://withsin/testtable/2018/01/' \
  --result-configuration OutputLocation=s3://withsin/athena-logs/

引っかかったのがテーブル名を”DB.TABLE“としなければいけなかった事だろうか。

あとは上記をスクリプトでループさせたりすれば、必要な分は一気に作成することができそうである。

以上。

■ 関連

Athenaのpartition一覧

partition削除