1、王林紅易車數據平臺負責人FlinkFlink在易車落地應用與實踐在易車落地應用與實踐平臺現狀平臺現狀應用場景應用場景平臺建設平臺建設流批一體流批一體未來規劃未來規劃#1#2#3#4#5#1#1平臺現狀平臺現狀實時計算平臺發展歷程20182019202020211、storm、spark編碼開發2、低監控、無平臺3、開發效率低早期階段1、Flink 1.7落地使用2、SQL開發模式3、支持日志實時監控業務引入Flink引擎1、Flink 1.9 1.11等落地2、實時平臺1.0版本上線3、實時數倉建設平臺1.0建設1、統一實時數倉規范2、實時計算任務1000+3、流批一體建設4、數據湖技術引進落
2、地平臺2.0建設#2 2應用場景應用場景應用場景應用場景#1實時監控實時監控1 1、日志監控、日志監控2 2、前端性能監控、前端性能監控3 3、業務數據監控、業務數據監控數據集成數據集成1 1、DBDB數據實時接入數據實時接入2 2、數據實時入倉、數據實時入倉 FlumeFlume-FlinkFlink3 3、數據傳輸通道:、數據傳輸通道:tidbtidb、mysqlmysql、sqlserversqlserver、clickhouseclickhouse等等實時數倉建設實時數倉建設1 1、實時指標(實時流量、線索)、實時指標(實時流量、線索)2 2、818818購車節實時大屏購車節實時大屏#
3、2#3#3 3平臺建設平臺建設平臺架構公共服務實時實時BIBI報表報表數據源元數據流程中心DTS平臺權限管理數據質量數據血緣任務運維智能診斷調度層引擎層yarnFLinkKafkaJARSQL任務管理任務管理實例管理資源管理資源管理TableUDFConnector模板開發中心開發中心監控告警開發調試語法檢測配置管理集群管理平臺層實時畫像實時推薦通天曉平臺服務平臺架構-數據流向實時數據接入mysqlsqlserverlogKafkacanalflink cdccdcflume實時計算引擎FlinkYarnHdfs實時存儲服務KafkaHbaseTidb/MySQLClickhouse自動獲取s
4、chema,一鍵數據集成統一數據源124653任務狀態、指標監控統一監控數據集成、加工、實時入倉多任務類型離線、實時元數據統一統一元數據打通離線數據權限體系統一權限多Flink版本支持多版本支持統一數據源統一數據模型為表離線數據接入數據源系統表結構變更通知Schema自動獲取變更影響分析獲取數據源信息更新MySQL/TIDBSqlServerClickhouseKafka新增數據源DTS平臺表創建 數據源統一維護管理 模版化生成建表語句 對用戶屏蔽鏈接地址及賬號密碼信息,提升賬號體系安全性 流批數據模型統一 數據源變更,方便任務管理優勢:優勢:實時平臺統一數據源原生統一數據源后統一元數據DML
5、操作DDL操作FlinkClientMySQLHive MetaStore離線元數據離線元數據 基于HiveCataLog進行元數據管理 庫、表元數據持久化 統一實時、離線元數據,便于流批一體的切換Hive CatalogMemory CatalogHive實時元數據實時元數據數據血緣采集Flink-6757Sources-測試-發布-監控2、低門檻大數據開發:數據開發服務可配置化3、任務模式由DDL+DML 簡化為 DML 調試發布監控#4 4流批一體流批一體前期數倉架構業務日志業務數據庫HiveKafkaKafkaKafkaHiveHive實時數倉離線數倉數據來源ETLETLETLETLE
6、TLETLETLMR/SparkFlinkODSDWDDWSODSDWDDWS離線&實時數據比對 流批存儲系統不一致邏輯修改&歷史刷數Lambda架構是必然存在的一個問題需求變化涉及歷史數據重刷離線、實時數據比對是一個常態實時數倉開發痛點1套邏輯&2套代碼 批流底層數據模型不一致,需要開發兩套代碼 兩套計算引擎,計算邏輯不能復用 不同平臺和引擎切換,開發效率低、資源利用率也低 數據口徑問題排查復雜用戶需求離線需求始終存在需要實時離線數據比對盡量使用一套代碼基于Flink構建流批一體數倉架構三種選擇Batch:批模式Streaming:流模式AutoMatic:有限作業使用批模式,無限作業使用流
7、模式統一算子DataStream API統一調度統一ShuffleTable API流批一體Flink 架構流批一體數倉架構業務日志業務數據庫HiveKafkaKafkaKafkaHiveHive實時數倉數據來源ETL離線修正ETL離線修正ETLFlinkFlinkFlink流式入倉統一計算引擎ODSDWDDWSODSDWDDWS流批切換解決方案 使用視圖的方式,作字段映射 建一套相同的表,實時離線使用相同的元數據 開發sql轉換工具,類似 Linkedin coral流批一體模式開發任務任務SQLSQLKafka 流表Hive 離線表 元數據統一,業務層面流批統一邏輯表 業務開發統一,流批代
8、碼統一,提高開發效率 計算引擎統一,降低學習成本 流批模式一鍵切換統一元數據:表映射統一元數據:表映射流批一體優點維護一套代碼,實現實時數據和離線數據統一處理優點優點一一同一套代碼,避免口徑不一致問題優點二優點二減少用戶學習成本避免學習2套引擎優點三優點三支持流作業和批作業減少維護成本優點四優點四新的思考新的思考 如何解決回溯數據kafka性能瓶頸問題?存儲是否也可以統一?如何更好解決數據更新問題?如何更好解決數據近實時OLAP分析問題?Why Hudi1、Upsert 功能支持較為成熟2、Hudi表文件可存儲于Hdfs系統,兼容Hadoop生態圈(hive、spark、presto)3、Ta
9、ble組織方式靈活,根據場景選擇模式(copy on write 或者 merge on read)4、Hudi已經集成Flink,統一計算引擎5、相對活躍的社區流批一體的數據湖架構業務日志業務日志業務數據庫HudiKafkaKafkaKafkaHudiHudiETL增量ETLETL增量ETLETLFlink流式入倉FlumeCDC服務層服務層(OLAP/DB)(OLAP/DB)分析分析ODSDWDDWSODSDWDDWS收益收益#1實時實時OLAPOLAP結合presto,滿足近實時olap分析場景DBDB數據實時入倉數據實時入倉加速db數據實時入倉,從小時級提升到5分鐘內,加速數倉生產實時數倉建設實時數倉建設基于增量,更快完成近實時數倉建設工作,提高開發效率#2#3#5 5未來規劃未來規劃未來規劃近一步提升平臺易用性易用易用支持機器學習場景擴展擴展完善實時數據質量質量質量1、借助Alluxio加速數據查詢2、全面擁抱Flink-CDC2.0提速提速