最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

袋鼠云批流一體分布式同步引擎 ChunJun(原 FlinkX)的前世今生

2022-07-05 11:08 作者:袋鼠云  | 我要投稿

一、前言


ChunJun(原 FlinkX)是一個基于 Flink 提供易用、穩(wěn)定、高效的批流統(tǒng)一的數(shù)據(jù)集成工具,是袋鼠云一站式大數(shù)據(jù)開發(fā)平臺 - 數(shù)棧 DTinsight 的核心計(jì)算引擎,其技術(shù)架構(gòu)基于實(shí)時計(jì)算框架 Flink,打造出 “具有袋鼠特色” 的實(shí)時計(jì)算引擎。?

?

開源項(xiàng)目地址:?

https://github.com/DTStack/chunjun

https://gitee.com/dtstack_dev_0/chunjun

開源技術(shù)交流群

釘釘群:30537511

?


二、從 FlinkX 到 ChunJun

?

ChunJun 脫胎于袋鼠云數(shù)棧自主研發(fā)的批流統(tǒng)一的數(shù)據(jù)同步工具 FlinkX。

2016 年,數(shù)棧技術(shù)團(tuán)隊(duì)初步研發(fā)完成了一款基于 Flink 的分布式離線 / 實(shí)時數(shù)據(jù)同步插件 ——FlinkX,它可實(shí)現(xiàn)多種異構(gòu)數(shù)據(jù)源高效的數(shù)據(jù)同步,支持雙向讀寫和多種異構(gòu)數(shù)據(jù)源。有它助力,袋鼠云在批流一體的研究實(shí)踐以更迅猛的勢頭往前挺進(jìn)。

?

2018 年 4 月,秉承著開源共享理念的數(shù)棧技術(shù)團(tuán)隊(duì)在 github 上開源了 FlinkX,歷經(jīng) 4 年多的發(fā)展,F(xiàn)linkX 從當(dāng)初的一個小項(xiàng)目,成長為擁有 2900+star,1300+fork 的開源項(xiàng)目。

?

從開源的第一天,數(shù)棧技術(shù)團(tuán)隊(duì)從未停下技術(shù)探索和社區(qū)回饋的腳步,在 4 年多的時間里先后開源了 flinkx、flinkStreamSQL、jlogstash、easyagent、doraemon、molecule、Taier,袋鼠云數(shù)棧開源家族愈發(fā)壯大,開源項(xiàng)目系列得到了廣泛的發(fā)展,相繼在各類企業(yè)中落地應(yīng)用。

?

今年,數(shù)棧技術(shù)團(tuán)隊(duì)決定對開源項(xiàng)目進(jìn)行整體升級,并推出自主開源計(jì)劃 ——DTstackCon,其中大數(shù)據(jù)開源項(xiàng)目系列以 “十大名劍” 作為概念來源,承載著數(shù)棧技術(shù)團(tuán)隊(duì)對它們能如利劍,為社區(qū)數(shù)字化進(jìn)程的發(fā)展之路披荊斬棘的向往。

?

正是懷揣著這樣殷切的期望,我們決定正式將 FlinkX 更名為 ChunJun!

?

ChunJun 命名取自于中國古代十大名劍之一的純鈞

(ChunJun logo)

?

純鈞是春秋戰(zhàn)國時期鑄劍名師歐冶子為越王勾踐所鑄,其劍身取材珍貴,鋒利無比,劍刃就象壁立千丈的斷崖崇高而巍峨,劍身更是歷經(jīng)千年而不蝕,代表穩(wěn)定而強(qiáng)大堅(jiān)定的意志,正如 ChunJun 作為袋鼠云數(shù)棧的核心計(jì)算引擎,承載著實(shí)時平臺、離線平臺、數(shù)據(jù)資產(chǎn)等多個應(yīng)用的底層數(shù)據(jù)同步及計(jì)算,其強(qiáng)大的功能保障著客戶業(yè)務(wù)數(shù)據(jù)的一致性。

?

ChunJun 的 logo 主體的字母 C 是由許多平行四邊形組成的,這個組合有遞進(jìn)、有組合,正是 ChunJun 的穩(wěn)定、聚合體、分布式、集成的開發(fā)理念的具象體現(xiàn)。

?

同時也傳達(dá)出 ChunJun 核心觀念:提供一個易用、穩(wěn)定、高效的數(shù)據(jù)同步和集成工具。

?

底層采用六邊形蜂巢結(jié)構(gòu),因?yàn)榱呅蔚姆涑彩?“最省勞動力、也最省材料的選擇”。多個六邊形排列在一起之間沒有空隙,這種排列也被稱為是最穩(wěn)定的排列方式。穩(wěn)定,從來是我們開發(fā)的第一考慮。

?


三、什么是 ChunJun

?

ChunJun 是一個基于 Flink 提供易用、穩(wěn)定、高效的批流統(tǒng)一的數(shù)據(jù)集成工具,既可以采集靜態(tài)的數(shù)據(jù),比如 MySQL,HDFS 等,也可以采集實(shí)時變化的數(shù)據(jù),比如 binlog,Kafka 等。同時 ChunJun 也是一個支持原生 FlinkSql 所有語法和特性的計(jì)算框架。目前 ChunJun 在實(shí)際應(yīng)用過程中已服務(wù)了上百家客戶,經(jīng)過多次迭代與沉淀,積累了大量的客戶案例。

?

ChunJun 主要應(yīng)用于大數(shù)據(jù)開發(fā)平臺的數(shù)據(jù)同步 / 數(shù)據(jù)集成模塊,通常采用將底層高效的同步插件和界面化的配置方式相結(jié)合的方式,使大數(shù)據(jù)開發(fā)人員可簡潔、快速的完成數(shù)據(jù)同步任務(wù)開發(fā),實(shí)現(xiàn)將業(yè)務(wù)數(shù)據(jù)庫的數(shù)據(jù)同步至大數(shù)據(jù)存儲平臺,從而進(jìn)行數(shù)據(jù)建模開發(fā),以及數(shù)據(jù)開發(fā)完成后,將大數(shù)據(jù)處理好的結(jié)果數(shù)據(jù)同步至業(yè)務(wù)的應(yīng)用數(shù)據(jù)庫,供企業(yè)數(shù)據(jù)業(yè)務(wù)使用。

?

?


四、ChunJun 功能特點(diǎn)

?

ChunJun 具有以下幾大特色功能點(diǎn):

?


1、超豐富

* 豐富的插件種類:ChunJun 上下游插件多達(dá) 40 種,如常見的 mysql、binlog、logminer 等,大部分插件都支持 source/reader、sink/writer 及維表功能。

?

* 豐富的任務(wù)執(zhí)行模式:支持本地拆箱即用式 - local 模式,F(xiàn)link 自帶 standalone 模式,常用調(diào)度 yarn session 和 yarn pre-job 模式,以及與 k8s 結(jié)合部署的 k8s 模式。

?

* 豐富的任務(wù)類型:ChunJun 支持 json 同步任務(wù),以及 sql 計(jì)算任務(wù),用戶可以根據(jù)自己的需要,考慮是使用配置更加靈活的 json 同步任務(wù),還是計(jì)算更加強(qiáng)大的 sql 計(jì)算任務(wù)。

?


2、超靈活

* 臟數(shù)據(jù)收集系統(tǒng)插件化:面對不同的業(yè)務(wù)場景,可以配置不同的臟數(shù)據(jù)配置,靈活處理,例如:

是否將臟數(shù)據(jù)落盤處理;

是否在日志中打印臟數(shù)據(jù)信息;

臟數(shù)據(jù)最大條數(shù)限制;

臟數(shù)據(jù)存儲到不同類型的數(shù)據(jù)源等。

?

* 指標(biāo)系統(tǒng)插件化:與臟數(shù)據(jù)插件化類似,指標(biāo)系統(tǒng)在設(shè)計(jì)上也采用了插件化設(shè)計(jì),用戶根據(jù)自己的業(yè)務(wù)場景,靈活配置指標(biāo)系統(tǒng)。

?


3、超強(qiáng)大

* 支持增量同步: 對于某些業(yè)務(wù)庫的表,表中的數(shù)據(jù)基本只有插入操作,隨著業(yè)務(wù)的運(yùn)行,表中的數(shù)據(jù)會越來越大。如果每次都整表同步的話,消耗的時間及資源也會越來越多,因此需要一個增量同步的功能,每次只同步增加部分的數(shù)據(jù),對于已經(jīng)同步過的數(shù)據(jù)則不再進(jìn)行重復(fù)的同步工作。

?

增量同步是針對于兩個及以上數(shù)量的同步任務(wù)來說的,對于初次執(zhí)行增量同步的某張表而言,該次同步實(shí)質(zhì)上是整表同步,不同的是在任務(wù)執(zhí)行結(jié)束后會記錄增量字段的結(jié)束值 (endLocation) 并將其上傳至 prometheus 供后續(xù)使用。

?

在構(gòu)建下次增量任務(wù)時獲取該 endLocation 并作為上述過濾條件的參數(shù)值 (startLocation)。在任務(wù)解析到增量任務(wù)配置時,會根據(jù) startLocation 的有無自動構(gòu)建過濾條件,并將其拼接至 where 條件中,最終構(gòu)建出一條如:select id, name, age from test where id > 100 的 SQL,從而達(dá)到增量讀取的目的。

?

* 支持?jǐn)帱c(diǎn)續(xù)傳:對于某些業(yè)務(wù)庫的表,其數(shù)據(jù)量可能非常大,同步可能耗時非常久。如果在同步過程中由于某些原因?qū)е氯蝿?wù)失敗,從頭再來的話成本非常大,因此需要一個斷點(diǎn)續(xù)傳的功能從任務(wù)失敗的地方繼續(xù)。

?

斷點(diǎn)續(xù)傳的本質(zhì)是通過 Flink 的 checkpoint 機(jī)制實(shí)現(xiàn)的,在每次 checkpoint 時,reader 插件會保存當(dāng)前讀取到的字段的值,writer 插件則會在保存 writer 中的指標(biāo)及其他信息,然后將 writer 中的事務(wù)提交。

?

* 支持同步 DDL 數(shù)據(jù):在客戶真實(shí)場景中,對于 DDL 數(shù)據(jù)目前無法處理。在袋鼠內(nèi)部,ChunJun 借助外部數(shù)據(jù)源,支持監(jiān)聽 DDL 語句,并對 DDL 手動執(zhí)行。

?


五、ChunJun 未來規(guī)劃

?

ChunJun 能從一個小項(xiàng)目發(fā)展到今天離不開社區(qū)開發(fā)者們的支持,我們將以此為基,秉承初心,繼續(xù)大力發(fā)展 ChunJun 開源框架。

?


1、技術(shù)發(fā)展

* 支持?jǐn)?shù)據(jù)湖:ChunJun 團(tuán)隊(duì)正在探索湖倉一體的建設(shè)

* 數(shù)據(jù)還原的完善:支持對 DDL 自動解析并交由下游數(shù)據(jù)源自動執(zhí)行

* 更豐富的插件:不僅僅是豐富同步插件,也還要豐富臟數(shù)據(jù)插件,指標(biāo)插件等

* 更完善的調(diào)度:完善 k8s 調(diào)度,給予用戶更完整的 k8s 方案

* 性能與穩(wěn)定性:ChunJun 團(tuán)隊(duì)持續(xù)優(yōu)化代碼結(jié)構(gòu),提高 ChunJun 性能與穩(wěn)定性

?


2、社區(qū)發(fā)展

* ChunJun 技術(shù)融合方案

* ChunJun 系列直播公開課

* ChunJun Meetup 技術(shù)沙龍會


袋鼠云批流一體分布式同步引擎 ChunJun(原 FlinkX)的前世今生的評論 (共 條)

分享到微博請遵守國家法律
黄山市| 布尔津县| 玉树县| 惠东县| 修武县| 白玉县| 牙克石市| 荃湾区| 玉门市| 习水县| 江北区| 武汉市| 成武县| 佳木斯市| 马边| 田林县| 金门县| 静乐县| 巴青县| 宜丰县| 泰来县| 屏东市| 耒阳市| 法库县| 西丰县| 通州市| 延庆县| 延安市| 沭阳县| 遂宁市| 侯马市| 山丹县| 泰兴市| 西畴县| 盘山县| 东海县| 饶平县| 霸州市| 嘉黎县| 曲周县| 阿坝县|