數(shù)據(jù)采集:
- 日志采集
- 數(shù)據(jù)同步
一淆珊、數(shù)據(jù)同步
數(shù)據(jù)從業(yè)務(wù)系統(tǒng)同步進(jìn)入數(shù)據(jù)倉庫
1.源數(shù)據(jù)類型
- 關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)化數(shù)據(jù):mysql、oracle奸汇、db2施符、sql server等
- 非關(guān)系型數(shù)據(jù)庫等非結(jié)構(gòu)化數(shù)據(jù):oceanBase、HBase擂找、MongoDB等
- 文件系統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)或文件存儲(chǔ)NAS:對(duì)象存儲(chǔ)OSS戳吝、文件存儲(chǔ)NAS
2.同步方式:
- 直連同步:odbc/jdbc等接口直接從業(yè)務(wù)庫抽取數(shù)據(jù)。
- 數(shù)據(jù)文件同步:約定好文件編碼贯涎、大小听哭、格式等,直接從源系統(tǒng)生成數(shù)據(jù)等文本文件塘雳,由專門的文件服務(wù)器(如ftp)傳輸?shù)侥繕?biāo)系統(tǒng)后陆盘,加載到目標(biāo)數(shù)據(jù)庫系統(tǒng)。
- 數(shù)據(jù)庫日志解析同步:解析日志文件獲取發(fā)生變更的數(shù)據(jù)粉捻,滿足增量數(shù)據(jù)同步的需求礁遣。
3.阿里數(shù)據(jù)同步方式
- 批量數(shù)據(jù)同步:DataX
- 實(shí)時(shí)數(shù)據(jù)同步:TimeTunnel(TT)
TT
TT是一種基于生產(chǎn)者、消費(fèi)者和Topic消息標(biāo)識(shí)的消息中間件肩刃,將消息數(shù)據(jù)持久化到HBase到高可用、分布式數(shù)據(jù)交互系統(tǒng)杏头。
實(shí)時(shí)數(shù)據(jù)傳輸示意圖
這不是kafka盈包?
4.問題與解決方案
- 分庫分表的處理:TDDL(Taobao Distributed Data Layer)
- 高效同步和批量同步
- 增量與全量同步的合并
- 同步性能的處理
- 數(shù)據(jù)漂移的處理:同一個(gè)業(yè)務(wù)日期數(shù)據(jù)中包含前一天或后一天凌晨附近的數(shù)據(jù)或者丟失當(dāng)天的變更數(shù)據(jù)。處理方法:
- 多獲取后一天的數(shù)據(jù)
- 通過多個(gè)時(shí)間戳字段限制時(shí)間來獲取相對(duì)準(zhǔn)確的數(shù)據(jù)