confluent kafka - connect
實(shí)時(shí)的數(shù)據(jù)集成問題
- Traditional ETL
- Data Integration
- Kafka Connect
- Group Management
Traditional ETL
兩類存儲模式
- primary storage -noSQL persistent
- secondary storage -elastic search
實(shí)時(shí)性 連續(xù)性 ? ? update in primary ? update in secondary storage
數(shù)據(jù)因?yàn)橛锰幉煌枰截惖胶芏嗟胤饺?/li>
Data Integration
把不同來源,格式椎木,特點(diǎn)性質(zhì)的數(shù)據(jù)在邏輯和物理上集中
->為公司提供數(shù)據(jù)共享和決策支持
- one-off tools - one tool one line
- kitchen sink tools - 通用,對source和destination的假設(shè)太少(??)不能確保reliable
- stream processing frameworks
側(cè)重transformation(叮姑?踢代?)
kafka - balance of one-off tools and kitchen sink tools
kafka 是一個(gè) 分布式系統(tǒng),有很多的broker
以 log 來管理數(shù)據(jù)纫版,順序讀寫并且寫只能發(fā)生在log尾部
topic - scalable consumption
kafka 數(shù)據(jù)持久化的有較好的容錯(cuò)
Kafka Connect
source 把數(shù)據(jù)從一個(gè)系統(tǒng)拷貝到kafka中
sink 把kafka中數(shù)據(jù)拷貝到另一個(gè)系統(tǒng)中
partitioned stream 數(shù)據(jù)庫-流數(shù)據(jù)
connector 由多個(gè)task組成,一個(gè)task由thread
kafka兩種運(yùn)行模式standalone mode, distributed mode
Group management
zookeeper - rebalance 負(fù)擔(dān)太重
broker 負(fù)責(zé)一些group的管理
client 端完全不需要依賴zookeeper
- 第一階段發(fā)現(xiàn)成員
- 第二階段同步
coordinator - broker
當(dāng)前Kafka Connect支持兩種分發(fā)擔(dān)保(客情?)
- at least once 至少一次
- at most once 至多一次
- exactly once其弊?(未來將會支持)