iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 3
0
AI & Data

AWS 數據處理與分析實戰系列 第 3

Day 3 Glue 基本介紹 - Part 2

  • 分享至 

  • xImage
  •  

今天要來介紹 Glue 的另外兩個主要功能

  1. ETL Job
    ETL Job 有三種 ETL 方式可以使用
  • Python shell
    當資料量還不需要分散式運算的計算量時,可以考慮使用 Python shell,Python shell 與 Lambda 相似,可以執行 Python Script 並且沒有計算時間的限制,運算能力最高可以到 4 core 16G RAM,所以在中量或是計算不複雜的情況下 Python shell 也是可以考慮的工具。

  • Spark
    今天資料成長到一定量時就會需要分散式的運算資源支持 ETL 的工作,Spark 是分散式運算中常見的工具,在 ETL Job 上可以使用 PySpark 或 Scala 進行程式開發
    Input 的部分可以選擇 Data Catalog 所建立的虛擬 Table 資料,Output 的部分可以選擇S3 或是 Sata Catalog 所連結的 Database,ETL Job 可以支援多個 Input,例如:訂單資料是CSV儲存在S3,會員資料儲存在 RDS,則透過 Data Catalog 的 Table,可以將兩個不同來源的資料進行 Join;Output 的部分也可以同時寫入 S3 和 RDS 或其他資料庫。

  • Spark streaming
    Spark streaming 的 Input 目前只支援 Kinesis 與 Kafka,透過 Spark streaming,可以對 Streaming 資料進行即時分析,目前已有支援 PySpark 與 Scala 的程式開發。

  1. Workflow
    當每個 ETL job 之間或與 Data Catalog 之間有執行順序的問題時可以使用 Workflow 設計自動化的工作流程,例如:Data Catalog 需要執行完成後才能執行 ETL job,在 Workflow 上可以設定為 Data Catalog 成功後自動執行 ETL Job,而這個工作流程的啟動方式可以是排程或是 API 啟動。

在 AWS 上 Glue 可以當成資料處理的核心,透過 Glue 可以很方便的整合大部分常見的儲存點,並串接到 ETL Job 進行資料處理,因此加快了抓取資料與回存資料的速度,Glue 也提供順序排程的功能讓自動化的處理流程可以更為方便,減少在自動化流程設定上的困難度。


上一篇
Day 2 Glue 基本介紹 - Part 1
下一篇
Day 4 Glue Data Catalog 教學 - Part 1
系列文
AWS 數據處理與分析實戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言