AWS Data Pipeline

Gary Ng
Nov 4, 2020

--

AWS 資料匯入、匯出 Data Pipeline

按照 activity 以及條件頻率來進行計費, 例如: 高頻 (每6小時或者每12小時執行一次等);低頻 ( 1 天執行一次抑或是更少次數)

匯入資料

ps: 先將 csv 檔案上傳至 s3, 然後再透過 data pipeline 將資料從 s3 匯至 dynamodb, 在中間會先建立一台 EMR, 流程圖如下

  1. 創建 pipeline
  2. 輸入 pipeline 名稱以及選擇來源

3. 有一些 source, Export DynamoDB table to S3

4. 可以設定 pipeline logging (需設定)

5 接著案 edit architect 會看到以下畫面

6. 因為我們上面使用 import DynamoDB backup from S3, 所以 activity 會是 EMR Activity , 我們先將此改為 HiveActivity 以及相關配置, 如下圖

ps: Output 到 DynamoDB

ps: Input 是從 S3InputDataNode

ps: Hive Script: 從 input 抓取資料 overwrite 資料調 DynamoDB

7. 接著看一下 DataNode

ps: Region 記得選 DynamoDB 的 region

ps 這邊的 #{myDDBTableName} 是讀取這個名稱的變數, 等等在 Parameter 會看到

ps: 且要定義輸出的資料格式 DefaultDynamoDBDataFormat

ps: 設定 DirectoryPath 讀取 #{myInputS3Loc} 變數

ps: 設定 DataFormat 為 DefaultDataFormat1 所設定的資料欄位

8. 設定 EMR Resource

ps: 設定核心數等以及地區甚至是多久後將此機器關閉

9. 設定 DynamoDB 的 data format

ps: 設定 DynamoDB 資料欄位

10. 剛剛在前面設定的 s3 log 會在這邊看到

11. 設定 S3 Dataformat

12. 而有些參數可以在 Parameters 看到

13. 儲存後可以立馬 Activiate

14. 可以在此看到跑的情況

可能在執行 Pipeline 會需要點時間

參考資料:

--

--

Gary Ng
Gary Ng

Written by Gary Ng

軟體工程師、後端工程師

No responses yet