在上篇「快、準(zhǔn)、穩(wěn)的實(shí)現(xiàn)億級(jí)別MySQL大表遷移」的文章中,介紹了NineData在單張大表場景下的遷移性能和優(yōu)勢。但在大部分場景中,可能遇到的是多張表構(gòu)成的大數(shù)據(jù)量場景下的數(shù)據(jù)搬遷問題。因?yàn)榘徇w數(shù)據(jù)量較大,遷移的時(shí)長、穩(wěn)定性及準(zhǔn)確性都受到極大的挑戰(zhàn),常見的遷移工具通常不能很好得支持。為此,NineData針對(duì)這種場景專門進(jìn)行針對(duì)性的優(yōu)化,以提供高效、準(zhǔn)確、穩(wěn)定的大數(shù)據(jù)量遷移能力。
1、傳統(tǒng)的遷移方案
目前,數(shù)據(jù)遷移主要分為邏輯遷移和物理遷移,邏輯遷移主要有mysqldump、mydumper ,物理遷移主要有XtraBackup。對(duì)于這類導(dǎo)入導(dǎo)出和拷貝文件的傳統(tǒng)遷移方案,在遷移中會(huì)存在一些問題:
要求業(yè)務(wù)停機(jī),在遷移過程中,通過需要停止服務(wù),保持靜態(tài)遷移數(shù)據(jù),由于遷移數(shù)據(jù)量大,需要的遷移時(shí)間較長,這也意味著業(yè)務(wù)停機(jī)時(shí)間較長。
遷移時(shí)間久,對(duì)于mysqldump的邏輯遷移,單線程導(dǎo)出表,遷移時(shí)間長。
可靠性差,導(dǎo)出異常后,不支持?jǐn)帱c(diǎn)能力,在遷移過程中,如果遇到數(shù)據(jù)庫、軟件或硬件任何問題導(dǎo)致的任務(wù)中斷,都需要從頭遷移,遷移難度高。
保障能力弱,遷移期間,不能提供完善的觀測跟干預(yù)能力;同時(shí),比較缺乏結(jié)構(gòu)及數(shù)據(jù)對(duì)比能力,缺乏質(zhì)量保障體系,可能影響遷移成功性。
2、高性能的遷移方案
NineData 提供的數(shù)據(jù)復(fù)制同時(shí)包含了數(shù)據(jù)遷移和數(shù)據(jù)同步的能力,在不影響業(yè)務(wù)的前提下,提供了高效、穩(wěn)定、可運(yùn)維的大數(shù)據(jù)量遷移能力。經(jīng)實(shí)測,在源及目標(biāo)實(shí)例同城情況下,500GB的MySQL數(shù)據(jù)的遷移,只需1個(gè)小時(shí),平均遷移速度142MB/s。
通過對(duì) MySQL 大數(shù)據(jù)量遷移的性能測試,和傳統(tǒng)遷移比,NineData 數(shù)據(jù)遷移的優(yōu)勢有:
簡單易用:一分鐘即可完成任務(wù)配置,并全自動(dòng)化完成任務(wù)遷移。
強(qiáng)勁性能:完善的智能分片、表級(jí)行級(jí)并發(fā)、動(dòng)態(tài)攢批等核心技術(shù),有效保證遷移性能。
高可靠:結(jié)合新型斷點(diǎn)、異常診斷及豐富的修復(fù)手段,對(duì)于遷移過程中可能出現(xiàn)軟硬件故障,提供完善的容災(zāi)能力,大大提高了大數(shù)據(jù)量遷移的成功率。
數(shù)據(jù)質(zhì)量保障:NineData 還提供了對(duì)比功能,包含數(shù)據(jù)和結(jié)構(gòu)的對(duì)比,以及全量、快速(抽樣)和不一致復(fù)檢的對(duì)比方式,并且也支持不同的對(duì)比頻率。在遷移或復(fù)制結(jié)束后,通過數(shù)據(jù)和結(jié)構(gòu)對(duì)比,能有效的保障數(shù)據(jù)的一致性。
NineData 在提供強(qiáng)大遷移能力的同時(shí),也保證了使用的簡單性,只需要1分鐘就能完成遷移任務(wù)的配置,實(shí)現(xiàn)完全自動(dòng)化的數(shù)據(jù)遷移過程。下面我們來看下整個(gè)任務(wù)的配置過程:
2.1 配置遷移鏈路
1. 配置任務(wù)名稱,選擇要遷移的源和目標(biāo)實(shí)例。
2. 選擇復(fù)制類型,數(shù)據(jù)遷移選擇結(jié)構(gòu)和全量復(fù)制(數(shù)據(jù)遷移)。
3. 根據(jù)需要,選擇合適的沖突處理策略。
2.2 選擇遷移對(duì)象
選擇遷移對(duì)象:針對(duì)不同粒度選擇遷移對(duì)象,也可以選擇部分遷移對(duì)象。
2.3 配置映射對(duì)象
配置映射和過濾規(guī)則:可自定義遷移的庫名、表名和按照不同的過濾條件進(jìn)行多表的部分?jǐn)?shù)據(jù)遷移,也可以針對(duì)表的列名進(jìn)行映射和部分列遷移。
2.4 預(yù)檢查&啟動(dòng)
通過豐富的檢查項(xiàng),保證了遷移任務(wù)的穩(wěn)定性;通過開啟數(shù)據(jù)對(duì)比,保證了遷移后數(shù)據(jù)的一致性。到此,我們就完成了一個(gè)高性能遷移任務(wù)的配置。
同時(shí),為了提供更好的遷移體驗(yàn),NineData針對(duì)遷移過程提供了完善的觀測、干預(yù)能力。其不但提供對(duì)象遷移的詳細(xì)狀態(tài)、進(jìn)展、詳情,還通過監(jiān)控和日志透露后臺(tái)線程的內(nèi)部執(zhí)行情況,幫助用戶全方位追蹤遷移進(jìn)展。同時(shí),還針對(duì)運(yùn)行過程中可能出現(xiàn)的異常情況,提供基礎(chǔ)診斷能力,及修復(fù)、跳過、移除等多種修復(fù)策略和遷移限流能力,讓用戶能夠自主快速得診斷并修復(fù)鏈路,保障遷移穩(wěn)定性。
3、總結(jié)
NineData 提供的高效、快速、穩(wěn)定的MySQL大數(shù)據(jù)量遷移能力,很好的補(bǔ)充了傳統(tǒng)遷移方案的不足。當(dāng)前,NineData 已經(jīng)支持?jǐn)?shù)十種常見數(shù)據(jù)庫的遷移復(fù)制,同時(shí),除了SAAS模式外,還提供了企業(yè)專屬集群模式,滿足企業(yè)最高的數(shù)據(jù)安全合規(guī)要求。目前,NineData已在運(yùn)營商、金融、制造業(yè)、地產(chǎn)、電商等多個(gè)行業(yè)完成大規(guī)模應(yīng)用實(shí)踐。如果您感興趣的話,可以登錄官網(wǎng):數(shù)據(jù)遷移-遷移工具-數(shù)據(jù)傳輸-NineData-玖章算術(shù),立即開始使用。
審核編輯 黃宇
-
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3734瀏覽量
64170 -
MySQL
+關(guān)注
關(guān)注
1文章
791瀏覽量
26351 -
數(shù)據(jù)遷移
+關(guān)注
關(guān)注
0文章
66瀏覽量
6931
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論