Kafka 2.0課程 1 基本介紹
此為Udemy線上課程的紀錄筆記,因應目前遇到的資料問題學習此Solution
一般簡單系統設置如左圖
通常只有單一Source系統提
提供要交換的資料
供給單一個目標系統
但現實可能會出現多個Source系統,且對應多個要交換資料的目標系統
例如考量到4個Source系統,且有6個目標系統,可能要寫出24個集成(程式)
每一個集成(程式)都有各自的難點:
- Protocol選擇(TCP,HTTP,REST,FTPJDBC…etc)
- Data format(Binary,CSV,JSON,Avro…etc)
- Data schema & evolution
每個Source系統都會因為連線增加負載
引入Apache Kafka後可以變成如下圖:
Use Case:
1.訊息系統
2.運行軌跡追蹤
3.搜集不同位置的效能資訊
4.搜集應用系統log
5.串流工作(例如配合Kafka stream API 或Spark)
6.減少系統間的偶合性
7.Spark,Flink,Storm,Hadoop,與其他大數據技術集成