以Kafka Connect做爲實時數據集成平臺的基礎架構有什麼優點?

Kafka Connect是一種用於在Kafka和其餘系統之間可擴展的、可靠的流式傳輸數據的工具,能夠更快捷和簡單地將大量數據集合移入和移出Kafka的鏈接器。Kafka Connect爲DataPipeline提供了一個相對成熟穩定的基礎框架,還提供了一些開箱即用的工具,大大地下降研發的投入和提高應用的質量。api

 

下面,咱們看一看Kafka Connect的具體優點。框架

首先,Kafka Connect提供的是以數據管道爲中心的業務抽象。在Kafka Connect裏有兩個核心概念:Source和Sink。Source負責導入數據到Kafka,Sink負責從Kafka導出數據,它們都被稱爲Connector。好比Source Connector,Sink Connector,其實就是提供了數據讀取和寫入的高度業務抽象,能夠簡化不少生命週期的管理工做。工具

固然,Source Connector會去初始化Source Task,Sink Connector會去初始化Sink Task。這些都是標準的封裝。對於數據方面,經過Source & Sink Record把數據的結構進行標準化的抽象。另外,企業客戶在作數據集成的時候,數據在不少應用場景下都要求有必定的格式,因此在Kafka Connect裏用Schema Registry & Projector來解決數據格式驗證和兼容性的問題。當數據源產生變化的時候,會生成新的Schema版本,經過不一樣的處理策略用Projector來完成對數據格式的兼容。spa

 

備註:更多關於Kafka Connect及實時數據集成的問題,歡迎給我留言或直接訪問官方網址:生命週期

 

第二,Kafka Connect具備良好的可伸縮性、與容錯性。這些特性是與Kafka是一脈相承的。在流式處理和批量處理模式裏,更多取決於Source端如何去讀取數據,Kafka Connect自然支持流式處理和批量傳輸方式。單節點和集羣水平擴展功能都是由Kafka Connect框架直接支持。而任務恢復和狀態保持方面,目的端任務的寫入進度信息經過Kafka Connect框架自動管理、源端任務能夠根據須要往Kafka裏面放讀取進度信息,節省不少精力去管理任務重啓後的進度。ip

對於數據集成這樣一個通用的應用場景裏,你們確定都不但願重複發明輪子。目前,在Kafka Connect生態系統下,擁有能夠直接使用的Connector共84個,絕大部分都是開源的。其中,一部分是Kafka官方提供的,另一些是Confluent認證的,還有一些是第三方提供的。根據需求適當裁剪後,這些Connector均可以應用到本身的系統平臺中。get

相關文章
相關標籤/搜索