【視頻采訪】網(wǎng)易數(shù)據(jù)傳輸服務(wù)NDC高可用實(shí)踐
【51CTO.com原創(chuàng)稿件】NDC全稱Netease data canal,即網(wǎng)易數(shù)據(jù)運(yùn)河,是一個(gè)平臺(tái)化的結(jié)構(gòu)化數(shù)據(jù)傳輸系統(tǒng),目的是解決結(jié)構(gòu)化數(shù)據(jù)的實(shí)時(shí)遷移、同步、訂閱、OLTP到OLAP的實(shí)時(shí)數(shù)據(jù)整合等問題。我們希望能夠借此將數(shù)據(jù)庫中的數(shù)據(jù)與其他系統(tǒng)打通,從而構(gòu)建一個(gè)能夠整合所有數(shù)據(jù)庫的“數(shù)據(jù)運(yùn)河”,任何系統(tǒng)都能夠從“運(yùn)河”中獲取數(shù)據(jù)。
此次由51CTO主辦的2017WOTA全球架構(gòu)與運(yùn)維技術(shù)峰會(huì)上,網(wǎng)易資深工程師馬進(jìn)老師分享了主題為《網(wǎng)易數(shù)據(jù)傳輸服務(wù)NDC高可用實(shí)踐》的演講。
應(yīng)用場(chǎng)景
從應(yīng)用方視角看來,可以將NDC的應(yīng)用場(chǎng)景分為三類:第一類是數(shù)據(jù)遷移,像DDB到Oracle這樣的異構(gòu)數(shù)字遷移,同時(shí)可以解決DDB內(nèi)部在線擴(kuò)容問題和遷移問題。第二類數(shù)據(jù)同步,場(chǎng)景較為復(fù)雜一些,如跨域甚至跨國的數(shù)據(jù)實(shí)時(shí)同步,一般不強(qiáng)調(diào)異構(gòu),需要解決的是高延遲,復(fù)雜拓?fù)涔芾淼膯栴}。第三類數(shù)據(jù)訂閱,通過數(shù)據(jù)來驅(qū)動(dòng)業(yè)務(wù),實(shí)現(xiàn)業(yè)務(wù)間異步解耦。
最后,通過這些應(yīng)用場(chǎng)景可以總結(jié)出NDC的兩個(gè)核心需求:第一,獲取數(shù)據(jù)庫實(shí)時(shí)變更的能力。第二,數(shù)據(jù)快速發(fā)布的能力。如MySQL到Oralce的數(shù)據(jù)遷移,需要增量遷移的速度要比MySQL線上增量更新快,否則相遷移或者同步永遠(yuǎn)無法完成,這就考驗(yàn)NDC數(shù)據(jù)發(fā)布的速度。另外一點(diǎn),是需要NDC提供完善的高可用方案,允許數(shù)據(jù)重復(fù),但是不能丟,還要提供一個(gè)不停服務(wù)的能力。