goodbyegangsterのブログ

備忘録的な

Data PipelineのSQL Activityで実行するSQLファイルに、複数のクエリを記載する

マニュアルには記載がないようなので、書いておきます。

Data PipelineのSQL Activityで、1度に複数のSQLクエリを実行できるか、という話です。S3に置いた1つのSQLファイルに、複数のステートメントを書いて実行きるのか否か、という話。結論からすると、 利用するドライバーによるよ となります。以下の More than one SQL statement in Script or ScriptUri in SqlActivity for RDS? というフォーラムの内容が正ににそれになります。

https://forums.aws.amazon.com/thread.jspa?threadID=216812

Data Pipelineに用意されたデータベースオブジェクトには、 JdbcDataBaseRdsDataBaseRedshiftDatabase の3つがあります。Redshift用のもの以外、利用するドライバーを置いたs3パスを定義する必要があります。そのドライバーの条件によるよ、ということです。

データベース - AWS Data Pipeline

フォラームの方は、mysqlのRDSが対象だったようで、結果 NOT SUPPORT だったようですね。うん。。。

僕が試したことがあるのは、 RedshiftDatabase オブジェクトだけですが、1ファイルに複数クエリを記載して、問題なく実行してくれました。