Hana 實(shí)時數(shù)據(jù)同步優(yōu)化(3)

簡述

CloudCanal 近期對 Hana 源端鏈路做了新一輪優(yōu)化霎匈,優(yōu)化點(diǎn)主要來自用戶實(shí)際場景使用,這篇文章簡要做下分享此衅。

本輪優(yōu)化主要包含:

  • 新增任務(wù)級增量表
  • 新增增量表定時清理能力
  • 新增增量表表結(jié)構(gòu)自動演進(jìn)能力
  • 任務(wù)延遲判定優(yōu)化
  • Hana 1.x 的兼容
  • 產(chǎn)品化和文檔優(yōu)化

優(yōu)化點(diǎn)

任務(wù)級增量表

CloudCanal Hana 源端任務(wù)原本不支持修改默認(rèn)增量表金句,導(dǎo)致不同任務(wù)的觸發(fā)器將增量數(shù)據(jù)寫入同一個表泪勒,不同任務(wù)將相互影響栅组。

比如,A 任務(wù)訂閱的表積壓大量數(shù)據(jù)梅掠,將影響B(tài),C,D等訂閱相同表的任務(wù)增量同步效率酌住。

為解決這一問題店归,本輪優(yōu)化支持 每個任務(wù)可單獨(dú)設(shè)置增量表 ,以此確保任務(wù)之間互不影響赂韵。

1.png

增量表定時清理

觸發(fā)器將增量數(shù)據(jù)寫入增量表后娱节,若未及時清理,可能導(dǎo)致空間占用增加祭示。

在之前的版本中肄满,用戶只能手動定期清理,過程繁瑣且具備一定風(fēng)險(清理錯)质涛。

本輪優(yōu)化增加設(shè)置任務(wù)參數(shù) triggerDataCleanEnabled 打開自動定時清理增量表功能稠歉,并提供兩個參數(shù)進(jìn)行控制:

  • triggerDataCleanIntervalMin:增量表清理間隔(單位:分鐘)
  • triggerDataRetentionMin:增量表數(shù)據(jù)保留時間(單位:分鐘)

通過這套機(jī)制,用戶能夠靈活控制增量表的清理操作汇陆,同時確保未消費(fèi)的增量數(shù)據(jù)不會被意外清除怒炸。

2.png

增量表自動演進(jìn)

Hana 增量任務(wù)創(chuàng)建時自動生成增量表,CloudCanal 依賴于增量表實(shí)現(xiàn)各種能力毡代,但隨著 CloudCanal 版本更新阅羹,可能對增量表進(jìn)行變更(比如加入新字段)。

由此帶來的問題是:用戶在更新 CloudCanal 后需要手動執(zhí)行 DDL 以適應(yīng)增量表結(jié)構(gòu)的變化教寂,若存在大量增量表捏鱼,操作相當(dāng)復(fù)雜。

為解決此問題酪耕,CloudCanal 新增 增量表結(jié)構(gòu) DIFF 能力导梆,在任務(wù)啟動時 自動生成差異 DDL 實(shí)現(xiàn)對增量表的自動演進(jìn)

3.png

延遲判定優(yōu)化

Hana 源端增量同步使用位點(diǎn)(增量表自增ID)來判斷延遲迂烁,當(dāng)位點(diǎn)向前推進(jìn)時可準(zhǔn)確獲取延遲看尼,但若無變更事件導(dǎo)致位點(diǎn)不更新,延遲會持續(xù)增大盟步,實(shí)際上并未發(fā)生延遲藏斩。

為解決這一問題,本輪優(yōu)化 通過查詢增量表來判斷是否存在延遲却盘,具體邏輯為:

  • 若存在數(shù)據(jù)灾茁,系統(tǒng)根據(jù)增量數(shù)據(jù)的時間戳計(jì)算延遲。
  • 若無數(shù)據(jù)谷炸,任務(wù)獲取當(dāng)前時間發(fā)送心跳事件,并根據(jù)心跳上的時間戳計(jì)算延遲禀挫。

時間戳僅在重置位點(diǎn)時才用于數(shù)據(jù)查找旬陡,且在查找時進(jìn)行時區(qū)轉(zhuǎn)換處理。

Hana 1.x 的兼容

CloudCanal 之前版本只支持 Hana 2.x 版本语婴,但是隨著用戶使用描孟,我們發(fā)現(xiàn)一些用戶還是在使用 Hana 1.x 版本驶睦。

Hana 1.x 版本的觸發(fā)器和 2.x 存在一定的差異,且元信息獲取邏輯也不同匿醒。

本輪優(yōu)化對上述差異點(diǎn)進(jìn)行了兼容性優(yōu)化场航,使 CloudCanal 能夠比較全面的支持 Hana 1.x 和 2.x 版本的數(shù)據(jù)同步。

產(chǎn)品化增強(qiáng)

本輪優(yōu)化除了內(nèi)核層面增強(qiáng)廉羔,對產(chǎn)品能力和文檔做了一系列優(yōu)化溉痢,有效解決用戶在數(shù)據(jù)源添加、任務(wù)創(chuàng)建等環(huán)節(jié)中常見的權(quán)限問題憋他。

這些優(yōu)化舉措讓用戶創(chuàng)建遷移同步鏈路更加流暢镀娶,節(jié)省時間。

未來方向

更多目標(biāo)鏈路

目前 Hana 支持的目標(biāo)端有 MySQL揪罕、Starrocks梯码、Doris 等,接下來的版本將打通 TiDB好啰、OceanBase轩娶、AdbForMySQL 等目標(biāo)鏈路,這個需求主要來自于用戶坎怪。

優(yōu)化多字段觸發(fā)的處理速度

在處理多字段表(單個表 300+ 字段)時罢坝,目前觸發(fā)器的執(zhí)行效率不滿足預(yù)期,導(dǎo)致 DML 操作速度較慢搅窿,我們后續(xù)將對觸發(fā)器模板進(jìn)行性能優(yōu)化嘁酿,以提高處理速度。

總結(jié)

本文簡要介紹 CloudCanal 近期對 Hana 源端數(shù)據(jù)同步的優(yōu)化男应,以及鏈路未來的方向闹司,希望對讀者有所幫助。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沐飘,一起剝皮案震驚了整個濱河市游桩,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌耐朴,老刑警劉巖借卧,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異筛峭,居然都是意外死亡铐刘,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進(jìn)店門影晓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來镰吵,“玉大人檩禾,你說我怎么就攤上這事“碳溃” “怎么了盼产?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長勺馆。 經(jīng)常有香客問我戏售,道長,這世上最難降的妖魔是什么谓传? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任蜈项,我火速辦了婚禮,結(jié)果婚禮上续挟,老公的妹妹穿的比我還像新娘紧卒。我一直安慰自己,他們只是感情好诗祸,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布跑芳。 她就那樣靜靜地躺著,像睡著了一般直颅。 火紅的嫁衣襯著肌膚如雪博个。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天功偿,我揣著相機(jī)與錄音盆佣,去河邊找鬼。 笑死械荷,一個胖子當(dāng)著我的面吹牛共耍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播吨瞎,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼痹兜,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了颤诀?” 一聲冷哼從身側(cè)響起字旭,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎崖叫,沒想到半個月后遗淳,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡心傀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年洲脂,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡恐锦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出疆液,到底是詐尸還是另有隱情一铅,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布堕油,位于F島的核電站潘飘,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏掉缺。R本人自食惡果不足惜卜录,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望眶明。 院中可真熱鬧艰毒,春花似錦、人聲如沸搜囱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蜀肘。三九已至绊汹,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間扮宠,已是汗流浹背西乖。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留坛增,地道東北人获雕。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像轿偎,于是被迫代替她去往敵國和親典鸡。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內(nèi)容