Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
AWS Data Pipeline 
AWS Black Belt Tech Webinar 2014 (旧マイスターシリーズ) 
 
Yuta Imai 
Solutions Architect, Amazon Data Services J...
アジェンダ 
1. ビッグデータを活⽤用するために必要なこと 
2. AWS Data Pipelineの紹介 
3. AWS Data Pipelineの活⽤用 
©2014, Amazon Web Services, Inc. or its...
アジェンダ 
1. ビッグデータを活⽤用するために必要なこと 
2. AWS Data Pipelineの紹介 
3. AWS Data Pipelineの活⽤用 
©2014, Amazon Web Services, Inc. or its...
AWSサービスの全体像 
Technology Partner / Consulting Partner Ecosystem 
Management  Administration 
CloudWatchCloudTrailIAMManagem...
Big Data services on AWS 
NoSDQynLam oDBRedshDiftWH 
Interface 
Storage 
Data Pipeline 
S3 
Glacier 
©2014, Amazon Web Ser...
ビッグデータをゴミの⼭山にしないために 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
データを活⽤用するためのステップを考えてみる 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
データ活⽤用の4つのステップ 
1. あつめる 
– 多数のアプリケーションサーバーやクライアント、デバイスからの 
データ収集 
2. ためる 
– 安全でコスト効率率率よく、かつ利利⽤用しやすい形でデータを保存 
3. 処理理する 
– 抽...
データ活⽤用のステップで⾒見見る 
EMR 
Data Pipeline 
EMR 
DynamoDB 
Redshift 
S3 
©2014, Amazon Web Services, Inc. or its affiliates. All...
ETL 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
データ活⽤用の4つのステップ 
1. あつめる 
2. ためる 
3. 処理理する 
4. 利利⽤用する 
Extraction 
Transform, Load 
©2014, Amazon Web Services, Inc. or its...
データ活⽤用の4つのステップ 
1. あつめる 
2. ためる 
3. 処理理する 
4. 利利⽤用する 
データ活用Extraction 
のためには 
ETLが非常に大きな比重 
をしめている! 
Transform, Load 
©201...
ETL、どうしてますか? 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
アジェンダ 
1. ビッグデータを活⽤用するために必要なこと 
2. AWS Data Pipelineの紹介 
3. AWS Data Pipelineの活⽤用 
©2014, Amazon Web Services, Inc. or its...
ETLってめんどくさい 
• モノリシックなパイプライン(秘伝のたれ) 
• 複数ホストでの整合性の保証 
• エラーハンドリング 
©2014, Amazon Web Services, Inc. or its affiliates. All...
ETLってめんどくさい 
こういうのやめたい 
ですよね・・・ 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ETLってめんどくさい 
データのマイグレーションが簡単じゃない 
• 異異なる場所、異異なるフォーマット 
• S3, RDS, EMR, Redshift, DynamoDB 
• オンプレミス 
依存管理理が複雑 
• ⼊入⼒力力データが...
AWS Data Pipeline is ETL of things. 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Data Pipelineとは 
• サービス間のデータ統合・処理理をスケジュールベー 
スで⾃自動化してくれるサービス 
• 使い始めるにはワークフローを定義する 
1. データ:データソースや出⼒力力先の定義 
2. アクティビティ...
Pipelineの定義 
ワークフローを定義するための登場⼈人物 
• Data Node: データの場所、フォーマット 
• Activity: データ処理理のアクティビティ 
• Schedule: 処理理実⾏行行のスケジュール 
• Re...
アクティビティ(Activities) 
データ移動や処理理の全体を管理理 
• ⼊入出⼒力力、スケジュール、処理理内容、リソース、通知アクション 
• AWSとオンプレミスにて実⾏行行可能 
 
サポートするアクティビティ⼀一覧 
• Cop...
データノード 
Input / Outputデータの場所やタイプを定義 
• S3パス 
• SQL データベース 
• DynamoDB 
• Redshift 
フォーマット指定は⾃自由 
• CSV Data Format 
• カスタマ...
データとテーブルのステージング 
データにアクセスしやすいための仕組み 
• データを⾃自動的にリソースにコピー / テーブルを⾃自動的に作成 
• データがリソースのローカルにあるように 
• サポートデータノード: S3DataNode, ...
依存関係(Preconditions) 
条件が成⽴立立した場合のみ後継タスクを実⾏行行 
• DynamoDB tableが存在/データがある 
• S3キーが存在 
• S3プリフィックスが存在 
• 独⾃自のShellコマンド実⾏行行が成...
スケジュール 
処理理を実⾏行行するタイミング 
• Cronスタイル: 指定した間隔のstart時点で起動 
• Time Seriesスタイル: 指定した間隔のend時点で起動 
• ただし、EC2やEMRリソースは常にstart時点に作成...
スケジュール(2) 
Backfillタスク 
• 開始時間に過去を指定した場合、現在まで遡ってタスクを繰り返 
し実⾏行行 
• テストに便便利利 
• 開始時間が1⽇日以前の場合、タスク起動しない 
• CLIで --force 引数を指定...
リソース 
タスクを実⾏行行するリソース 
• EC2: EC2-‐‑‒ClassicとEC2-‐‑‒VPC両⽅方サポート 
• EMR: タスクノードにspot instance利利⽤用可能 
• Multi-‐‑‒regionのリソース管理...
リソース(2) 
アクティビティとリソースのスケジュールを別々に指定 
可能 
• リソースを最⼤大限に利利⽤用 
• Activityスケジュール: 20分 
• Resourceスケジュール: 1時間 
• 結果: EMRが1クラスタのみ課...
イベントと異異常管理理 
イベントが発⽣生するタイミング 
• 成功時 
• 失敗時 
• 遅れが発⽣生した場合 
 
設定可能なアクション 
• SNS通知 
• リソースを削除 
 
失敗時⾃自動リトライ 
• 初回実⾏行行含め、1~∼6回...
簡単に利利⽤用スタート 
• よくあるユースケースはテンプレートが⽤用意 
• 管理理画⾯面からGUI操作 
• CSV/TSVのネイティブサポート 
• ⾃自動的にEMR/EC2をセットアップ 
©2014, Amazon Web Servi...
ファイル出⼒力力 
GUIの操作結果をJSONに出⼒力力可能 
• Pipelineのバージョン管理理 
• 出⼒力力したファイルは 
. /da taCpLipIeでlineイ --cンreaポte pーipeトline可_n能ame --p...
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. 
料料⾦金金 
• 無料料使⽤用枠あり 
• アクティビティ、または依存関係の従量量課⾦金金 
•...
Example: S3から定期的にRedshiftにロード 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Example: S3から定期的にRedshiftにロード 
• Type 
• S3DataNode 
• Directory Path 
• S3のパス 
• Compression 
• 圧縮方式 
• Data Format 
• 別途...
Example: S3から定期的にRedshiftにロード 
• Type 
• TSV 
• 他にもCSVなどいくつか 
デフォルトのフォーマット 
がある 
• カスタムフォーマットは 
デリミタを指定すること 
で指定可能 
データフォー...
Example: S3から定期的にRedshiftにロード 
• Type 
• RedshiftCopyActivity 
• Insert Mode 
• KEEP_EXISTING 
• Input 
• 先ほどのS3 
• Output...
Example: S3から定期的にRedshiftにロード 
• Type 
• Ec2Resource 
• Schedule 
• このEC2リソースの起動 
スケジュール(インター 
バル) 
• もろもろのインスタンス情報 
• Ter...
Example: S3から定期的にRedshiftにロード 
• Type 
• Schedule 
• Period 
• インターバル 
• Start/End Date Time 
• スケジュールの有効期間 
©2014, Amazon...
Example: S3から定期的にRedshiftにロード 
• Type 
• RedshiftDataNode 
• TableName 
• ロード対象のテーブル名 
• Database 
• ロード対象のDatabase名 
Reds...
AWS Data Pipelineがもたらしてくれるもの 
• 分離離 
– データと処理理リソースの分離離 
– 処理理リソースと処理理ロジックの分離離 
– 処理理ロジックとスケジュールの分離離 
• 統合 
– 分散環境での整合性 
– ...
AWS Data Pipelineがもたらしてくれるもの 
例例えばこんなパイプラインなら・・・ 
1.1.1.1, /login, 20140226000101, … 
192.168…, /home, 20140226011226, … 
...
AWS Data Pipelineがもたらしてくれるもの 
例例えばこんなパイプラインなら・・・ 
EMR 
Redshift 
ETL済みデータ 
S3 
ログ(オリジナル) 
S3 
処理理済みデータ 
©2014, Amazon Web ...
アジェンダ 
1. ビッグデータを活⽤用するために必要なこと 
2. AWS Data Pipelineの紹介 
3. AWS Data Pipelineの活⽤用 
©2014, Amazon Web Services, Inc. or its...
ShellCommandActivityを使いこなそう 
• What is ʻ‘ShellCommandActivityʼ’? 
– S3上に配置したShellスクリプトを指定したリソース上で実⾏行行し 
てくれる 
• どこで使う? 
– ...
Task Runnerは 
既存EC2やオンプレミスサーバーでも動く 
java -jar TaskRunner-1.0.jar --config ~/credentials.json – 
workerGroup=WorkerGroup1 -...
Data Pipelineのハマるところ/ハマらないところ 
• Data Pipelineはスケジュールドリブンの処理理を 
便便利利に実装・管理理するためのサービス 
• イベントドリブンの処理理がやりたいのであれば 
AWS Lambda...
DynamoDB Import/Export 
DynamoDB Import/ExportはData Pipelineを利利⽤用 
©2014, Amazon Web Services, Inc. or its affiliates. All...
Getting Started! 
http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/welcome.html 
©2014, Amazon Web Services, ...
サードパーティのツールなど 
• Dataduct 
– https://github.com/coursera/dataduct 
– Couseraが開発するData Pipelineのラッパー。 
– YAMLでジョブを定義できる。 
©...
See also.. 
(BDT303)  
Construct Your ETL Pipeline with AWS Data 
Pipeline, Amazon EMR, and Amazon Redshift 
http://www.sl...
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. 
まとめ
AWS Data Pipeline is ETL of things!  
• データを活⽤用するにはETLが重要。 
• モノリシックなデザインは避け、プラガブルな 
ETLを⽬目指すべき。 
• AWS Data Pipelineを使えば、...
AWS Data Pipelineで快適なETLライフを! 
©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. 
出典: 
http://www.s...
Upcoming SlideShare
Loading in …5
×

AWS Black Belt Techシリーズ AWS Data Pipeline

16,131 views

Published on

AWS Black Belt Tech Webinar 2014
(旧マイスターシリーズ)

AWS Data Pipeline

Published in: Technology

AWS Black Belt Techシリーズ AWS Data Pipeline

  1. 1. AWS Data Pipeline AWS Black Belt Tech Webinar 2014 (旧マイスターシリーズ) Yuta Imai Solutions Architect, Amazon Data Services Japan ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  2. 2. アジェンダ 1. ビッグデータを活⽤用するために必要なこと 2. AWS Data Pipelineの紹介 3. AWS Data Pipelineの活⽤用 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  3. 3. アジェンダ 1. ビッグデータを活⽤用するために必要なこと 2. AWS Data Pipelineの紹介 3. AWS Data Pipelineの活⽤用 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  4. 4. AWSサービスの全体像 Technology Partner / Consulting Partner Ecosystem Management Administration CloudWatchCloudTrailIAMManagement ConsoleSDKCLI データ分析 KinesisEMRData Pipeline ⾃自動化とデプロイメント CloudFormationBeanStalkOpsWorks アプリケーションサービス SQSSNSSESSWFElastic TranscoderCloudSearch コンピュート処理理ストレージデータベース Auto ScalingS3GlacierEBSStorage GatewayRDSDynamoDBElastiCacheRedshift AWSグローバルインフラ WorkSpaces Regions / Availability Zones / Contents Region AZ Delivery POPS ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. EC2Elastic Load Balancing コンテンツ配信 CloudFront ネットワークVirtual Private CloudDirect ConnectRout53 4
  5. 5. Big Data services on AWS NoSDQynLam oDBRedshDiftWH Interface Storage Data Pipeline S3 Glacier ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. RDB Hadoop Workflow Management RDS Elastic MapReduce 5 Kinesis
  6. 6. ビッグデータをゴミの⼭山にしないために ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  7. 7. データを活⽤用するためのステップを考えてみる ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  8. 8. データ活⽤用の4つのステップ 1. あつめる – 多数のアプリケーションサーバーやクライアント、デバイスからの データ収集 2. ためる – 安全でコスト効率率率よく、かつ利利⽤用しやすい形でデータを保存 3. 処理理する – 抽出、除外、整形、いわゆる前処理理 – ⼀一次集計もここに含まれる 4. 利利⽤用する – BIツールで利利⽤用 – データをAPIで提供 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  9. 9. データ活⽤用のステップで⾒見見る EMR Data Pipeline EMR DynamoDB Redshift S3 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. Glacier RDS Data ETL Sum Web app Analytics Dashboard 9 Kinesis あつめる ためる 処理する 利用する
  10. 10. ETL ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  11. 11. データ活⽤用の4つのステップ 1. あつめる 2. ためる 3. 処理理する 4. 利利⽤用する Extraction Transform, Load ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  12. 12. データ活⽤用の4つのステップ 1. あつめる 2. ためる 3. 処理理する 4. 利利⽤用する データ活用Extraction のためには ETLが非常に大きな比重 をしめている! Transform, Load ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  13. 13. ETL、どうしてますか? ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  14. 14. アジェンダ 1. ビッグデータを活⽤用するために必要なこと 2. AWS Data Pipelineの紹介 3. AWS Data Pipelineの活⽤用 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  15. 15. ETLってめんどくさい • モノリシックなパイプライン(秘伝のたれ) • 複数ホストでの整合性の保証 • エラーハンドリング ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  16. 16. ETLってめんどくさい こういうのやめたい ですよね・・・ ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  17. 17. ETLってめんどくさい データのマイグレーションが簡単じゃない • 異異なる場所、異異なるフォーマット • S3, RDS, EMR, Redshift, DynamoDB • オンプレミス 依存管理理が複雑 • ⼊入⼒力力データが存在 • 前の処理理が成功 異異常処理理が必要 • 失敗時のリトライ • タイムアウト • イベント通知 Input Data Ready? Yes Run… No ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  18. 18. AWS Data Pipeline is ETL of things. ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  19. 19. AWS Data Pipelineとは • サービス間のデータ統合・処理理をスケジュールベー スで⾃自動化してくれるサービス • 使い始めるにはワークフローを定義する 1. データ:データソースや出⼒力力先の定義 2. アクティビティ:処理理の内容を定義 3. スケジュールと依存関係:処理理の依存関係とス ケジュールを定義 4. 通知:イベントの通知先を定義 • オンプレミス環境との連携も可能 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  20. 20. Pipelineの定義 ワークフローを定義するための登場⼈人物 • Data Node: データの場所、フォーマット • Activity: データ処理理のアクティビティ • Schedule: 処理理実⾏行行のスケジュール • Resource: 処理理や条件チェックを⾏行行うリソース • Precondition: 処理理実⾏行行の条件 • Action: 通知を送る⽅方法 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  21. 21. アクティビティ(Activities) データ移動や処理理の全体を管理理 • ⼊入出⼒力力、スケジュール、処理理内容、リソース、通知アクション • AWSとオンプレミスにて実⾏行行可能 サポートするアクティビティ⼀一覧 • CopyActivity • EmrActivity • HiveActivity • HiveCopyActivity • PigActivity • RedshiftCopyActivity • SqlActivity • ShellCommandActivity ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  22. 22. データノード Input / Outputデータの場所やタイプを定義 • S3パス • SQL データベース • DynamoDB • Redshift フォーマット指定は⾃自由 • CSV Data Format • カスタマイズ ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  23. 23. データとテーブルのステージング データにアクセスしやすいための仕組み • データを⾃自動的にリソースにコピー / テーブルを⾃自動的に作成 • データがリソースのローカルにあるように • サポートデータノード: S3DataNode, SqlDataNode • サポートアクティビティ • ShellCommandActivity • 初期値: off。Stage = true にセット • 変数: ${INPUTx_̲STAGING_̲DIR} , ${OUTPUTx_̲STAGING_̲DIR} • HiveActivity • 初期値: on. • 変数: ${inputx}, ${outputx} { id: MyHiveActivity, … hiveScript: INSERT OVERWRITE TABLE ${output1} select * from ${input1}; }, ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. Table作成は 不要
  24. 24. 依存関係(Preconditions) 条件が成⽴立立した場合のみ後継タスクを実⾏行行 • DynamoDB tableが存在/データがある • S3キーが存在 • S3プリフィックスが存在 • 独⾃自のShellコマンド実⾏行行が成功 • 依存するpipelineタスクが成功 S3 key exists? Yes Copy… ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. No
  25. 25. スケジュール 処理理を実⾏行行するタイミング • Cronスタイル: 指定した間隔のstart時点で起動 • Time Seriesスタイル: 指定した間隔のend時点で起動 • ただし、EC2やEMRリソースは常にstart時点に作成 • 間隔: 15分、時、⽇日、週など • 15min ~∼ 3year ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. Start/ Cron1 TS1 / Cron2 Period 時間 TS2 / Cron3 Period
  26. 26. スケジュール(2) Backfillタスク • 開始時間に過去を指定した場合、現在まで遡ってタスクを繰り返 し実⾏行行 • テストに便便利利 • 開始時間が1⽇日以前の場合、タスク起動しない • CLIで --force 引数を指定して起動可能 タイムゾーン • 初期値: UTC, “YYYY-‐‑‒MM-‐‑‒DDTHH:MM:SS” フォーマット • 変数にタイムゾーン指定可能 • #{inTimeZone(myDateTime,ʼ’Asia/Tokyo')} ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  27. 27. リソース タスクを実⾏行行するリソース • EC2: EC2-‐‑‒ClassicとEC2-‐‑‒VPC両⽅方サポート • EMR: タスクノードにspot instance利利⽤用可能 • Multi-‐‑‒regionのリソース管理理が可能 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  28. 28. リソース(2) アクティビティとリソースのスケジュールを別々に指定 可能 • リソースを最⼤大限に利利⽤用 • Activityスケジュール: 20分 • Resourceスケジュール: 1時間 • 結果: EMRが1クラスタのみ課⾦金金 節約分 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. Task 1 Task 2 Task 3 時間
  29. 29. イベントと異異常管理理 イベントが発⽣生するタイミング • 成功時 • 失敗時 • 遅れが発⽣生した場合 設定可能なアクション • SNS通知 • リソースを削除 失敗時⾃自動リトライ • 初回実⾏行行含め、1~∼6回の実⾏行行回数を設定可能 • 初期値は3回 Task 1 成功 失敗 Task 2 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. Alert 成功 Alert 失敗
  30. 30. 簡単に利利⽤用スタート • よくあるユースケースはテンプレートが⽤用意 • 管理理画⾯面からGUI操作 • CSV/TSVのネイティブサポート • ⾃自動的にEMR/EC2をセットアップ ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  31. 31. ファイル出⼒力力 GUIの操作結果をJSONに出⼒力力可能 • Pipelineのバージョン管理理 • 出⼒力力したファイルは . /da taCpLipIeでlineイ --cンreaポte pーipeトline可_n能ame --put pipeline_file --activate --force { objects: [ { id: ActivityId_YYbJV, schedule: { ref: ScheduleId_X8kbH }, scriptUri: s3://mybucket/ myscript.sh, name: ShellActivity1, runsOn: { ref: ResourceId_5nJIh }, ... ] } • インポート前にバリデーションで きる ./datapipeline –validate my-pipeline.json –credential credetials.json --force --id df-0123456789ABCD ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  32. 32. ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. 料料⾦金金 • 無料料使⽤用枠あり • アクティビティ、または依存関係の従量量課⾦金金 • 実際に利利⽤用したリソース(EC2, S3など)の課⾦金金 高頻度 (1日1回) 低頻度 On AWS $1.00 $0.60 オンプレミス $2.50 $1.50 実行しないpipeline $1.00 * 2014/3/19時点、東京リージョンのアクティビティ / 依存関係の⽉月額単価
  33. 33. Example: S3から定期的にRedshiftにロード ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  34. 34. Example: S3から定期的にRedshiftにロード • Type • S3DataNode • Directory Path • S3のパス • Compression • 圧縮方式 • Data Format • 別途定義するフォーマッ ト 元データを配置するS3 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  35. 35. Example: S3から定期的にRedshiftにロード • Type • TSV • 他にもCSVなどいくつか デフォルトのフォーマット がある • カスタムフォーマットは デリミタを指定すること で指定可能 データフォーマット ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  36. 36. Example: S3から定期的にRedshiftにロード • Type • RedshiftCopyActivity • Insert Mode • KEEP_EXISTING • Input • 先ほどのS3 • Output • 後述のRedshift • Runs on • 後述のEC2リソース RedshiftにCOPYコマンドを発行するアクティビティ ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  37. 37. Example: S3から定期的にRedshiftにロード • Type • Ec2Resource • Schedule • このEC2リソースの起動 スケジュール(インター バル) • もろもろのインスタンス情報 • Terminate After • 起動、ここで指定した時 間がたつとTerminateさ れる RedshiftCopyActivityを実行するEC2リソース ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  38. 38. Example: S3から定期的にRedshiftにロード • Type • Schedule • Period • インターバル • Start/End Date Time • スケジュールの有効期間 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. スケジュール
  39. 39. Example: S3から定期的にRedshiftにロード • Type • RedshiftDataNode • TableName • ロード対象のテーブル名 • Database • ロード対象のDatabase名 Redshiftデータノード ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  40. 40. AWS Data Pipelineがもたらしてくれるもの • 分離離 – データと処理理リソースの分離離 – 処理理リソースと処理理ロジックの分離離 – 処理理ロジックとスケジュールの分離離 • 統合 – 分散環境での整合性 – ⼀一環したエラー処理理や処理理のやりなおし ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  41. 41. AWS Data Pipelineがもたらしてくれるもの 例例えばこんなパイプラインなら・・・ 1.1.1.1, /login, 20140226000101, … 192.168…, /home, 20140226011226, … 1.1.1.2, /home, 20140226011331, … EMR USER PATH TIMESTAMP -‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒-‐‑‒ USER1 /login 2014-‐‑‒02-‐‑‒26 00:00:01 USER2 /home 2014-‐‑‒02-‐‑‒26 01:13:31 Redshift ETL済みデータ S3 ログ(オリジナル) S3 処理理済みデータ Webサーバー ETL ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. 41 BIツールなど 1.1.1.1, /login, 20140226000101, … 192.168…, /home, 20140226011226, … 1.1.1.2, /home, 20140226011331, …
  42. 42. AWS Data Pipelineがもたらしてくれるもの 例例えばこんなパイプラインなら・・・ EMR Redshift ETL済みデータ S3 ログ(オリジナル) S3 処理理済みデータ ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. Webサーバー BIツールなど Data Resource Data Data Logic Resource Logic Schedule Preconditions
  43. 43. アジェンダ 1. ビッグデータを活⽤用するために必要なこと 2. AWS Data Pipelineの紹介 3. AWS Data Pipelineの活⽤用 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  44. 44. ShellCommandActivityを使いこなそう • What is ʻ‘ShellCommandActivityʼ’? – S3上に配置したShellスクリプトを指定したリソース上で実⾏行行し てくれる • どこで使う? – リソースにライブラリ配るのに使ったり – 予め⽤用意されているEc2ActivityやEmrActivityだと設定に⼿手の 届かない作業に使ったり – ただのシェルなのでできることは無限⼤大。 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  45. 45. Task Runnerは 既存EC2やオンプレミスサーバーでも動く java -jar TaskRunner-1.0.jar --config ~/credentials.json – workerGroup=WorkerGroup1 --region=MyRegion --logUri=s3:// mybucket/foldername! http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-how-task-runner-user-managed.html ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  46. 46. Data Pipelineのハマるところ/ハマらないところ • Data Pipelineはスケジュールドリブンの処理理を 便便利利に実装・管理理するためのサービス • イベントドリブンの処理理がやりたいのであれば AWS Lambda[new!]などの検討を! – たとえば「S3バケットにログファイルが配置されたことをトリ ガーに処理理を開始したい」みたいなケース。 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  47. 47. DynamoDB Import/Export DynamoDB Import/ExportはData Pipelineを利利⽤用 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  48. 48. Getting Started! http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/welcome.html ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  49. 49. サードパーティのツールなど • Dataduct – https://github.com/coursera/dataduct – Couseraが開発するData Pipelineのラッパー。 – YAMLでジョブを定義できる。 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  50. 50. See also.. (BDT303) Construct Your ETL Pipeline with AWS Data Pipeline, Amazon EMR, and Amazon Redshift http://www.slideshare.net/AmazonWebServices/bdt303-‐‑‒ construct-‐‑‒your-‐‑‒etl-‐‑‒pipeline-‐‑‒with-‐‑‒aws-‐‑‒data-‐‑‒pipeline-‐‑‒ amazon-‐‑‒emr-‐‑‒and-‐‑‒amazon-‐‑‒redshift-‐‑‒aws-‐‑‒reinvent-‐‑‒2014 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  51. 51. ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. まとめ
  52. 52. AWS Data Pipeline is ETL of things! • データを活⽤用するにはETLが重要。 • モノリシックなデザインは避け、プラガブルな ETLを⽬目指すべき。 • AWS Data Pipelineを使えば、ETLの実装や運 ⽤用/管理理を省省⼒力力化してくれ、プラガブルにしてく れる。 ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  53. 53. AWS Data Pipelineで快適なETLライフを! ©2014, Amazon Web Services, Inc. or its affiliates. All rights reserved. 出典: http://www.slideshare.net/AmazonWebServices/bdt303-construct-your-etl-pipeline-with-aws- data-pipeline-amazon-emr-and-amazon-redshift-aws-reinvent-2014

×