AWS Data Pipelineによるタスクスケジューラの利用
スケジュールを作成する
みなさん、AWS Data Pipeline使ってますか?おそらくですが、いまいち使いどころがイメージできないのではないでしょうか。そこで、今回は簡単なスケジューラを作成してみまして、動作イメージを膨らませたいと思います。最後には、操作動画を載せましたので順番に画面をクリックして頂ければ動くものが作れると思います!
S3からS3へのデータコピーする
今回は簡単なサンプルとして、S3からS3へデータをコピーするバッチスケジューラを作成したいと思います。早速使ってみましょう!まずは、パイプラインの新規作成からです。
指定日時実行または定期実行
パイプラインの名前入力のあとに、スケジューラのタイプを指定します。指定時刻に実行するのかCron型で定期実行するのか指定します。今回はCron型を指定しました。
アクティビティとデータノードの作成
エディタを使って必要なコンポーネントを画面上に配置します。今回は、送信元となるS3のデータノードと、送信先となるS3のデータノードを指定し、処理を行うアクティビティを配置しました。
アクティビティの指定
配置したアクティビティを選択して必須項目を選択していきます。ここでは、アクティビティタイプとして「コピー」を指定しています。また、FromとToの指定でデータノードをそれぞれ指定しています。指定することで画面上に矢印が表示されます。また、オプション指定でリソースを新規作成します。
データノードの指定
配置したデータノードを選択して順番に記入していきます。データノードのタイプを「S3」としました。オプション指定でコピーするファイルを指定しました。同様にもう片方のデータノードも記入しました。
スケジュールの指定
先に作成したスケジュールの詳細を記入します。Cronタイプですので、どの時間感覚で実行するか指定します。今回は最小単位である15分の指定をしました。
リソースの指定
最後にリソースの指定を行います。S3からS3へファイルをコピーするタスクを実行するEC2インスタンスのタイプを指定しています。デフォルトではSmallインスタンスが呼ばれますので、Microインスタンスを指定しました。
保存とチェック、そして有効化
作成したら保存します。このとき、正しい設定が行われているかチェックしています。問題なければ有効化しましょう。パイプライン一覧にスケジュール済みとして表示されるようになります。
動画でおさらい
最後に、一連の操作を動画にまとめてみました。ついでにオープニングムービーも入れてみました。ってか、AWS Data Pipelineの作成には5分掛けまして、映像制作に2時間掛けましたw。
How to use the AWS Data Pipeline. from akari7 on Vimeo.
まとめ
AWS Data Pipelineのパイプラインをサラっと作成してみました。「何時何分(スケジュール)」に「どのリソース(データソース)」に対して「どんな操作をする(アクティビティ)」という基本的な指定をすることで、あとはAWSが裏側でよろしくやってくれます。みなさんはバッチ用のインスタンスを立ててCron処理しているのではと思うのですが、日時/週次/月次/年次等のたまにやるけど必要な処理にData Pipelineを活用してみてはいかがでしょうか。