在上篇「Redis高效、安全的不停機(jī)數(shù)據(jù)遷移方案」的文章中,介紹了NineData在Redis遷移場(chǎng)景下的性能和優(yōu)勢(shì)。因?yàn)閿?shù)據(jù)在主備、多云和多區(qū)域環(huán)境之間的遷移流動(dòng),難免會(huì)產(chǎn)生數(shù)據(jù)一致性的問(wèn)題,而結(jié)構(gòu)與數(shù)據(jù)不一致往往是導(dǎo)致故障的原因之一。所以,如何快速準(zhǔn)確地完成 Redis 數(shù)據(jù)對(duì)比成為了一個(gè)重要的問(wèn)題。
現(xiàn)在,NineData 在支持業(yè)務(wù)不中斷的前提下,實(shí)現(xiàn)了配置簡(jiǎn)單、高效和安全的數(shù)據(jù)對(duì)比服務(wù),很好地保障了各場(chǎng)景下因數(shù)據(jù)遷移導(dǎo)致數(shù)據(jù)不一致的問(wèn)題。經(jīng)實(shí)測(cè),NineData可在 1 分鐘內(nèi)完成 800 萬(wàn)個(gè)key( 2GB,涉及所有類型)的數(shù)據(jù)對(duì)比,平均對(duì)比速率為 13萬(wàn)/秒,并且找出不一致的key,生成詳細(xì)的對(duì)比報(bào)告,幫助您快速定位和修復(fù)不一致的數(shù)據(jù)。
目前,數(shù)據(jù)對(duì)比主要的方式有:通過(guò)解析遍歷RDB二進(jìn)制文件、SCAN遍歷實(shí)例以及一些開(kāi)源工具進(jìn)行數(shù)據(jù)對(duì)比,對(duì)于這些方式的對(duì)比,會(huì)存在一些問(wèn)題:
兼容性差,不同版本的Redis,RDB文件格式發(fā)生變化,對(duì)于解析RDB文件方式的對(duì)比,需要開(kāi)發(fā)適配。
可用性差,對(duì)比完成之后,無(wú)法自動(dòng)生成修復(fù)操作。
可靠性差,對(duì)于開(kāi)源工具,對(duì)比異常后,無(wú)法斷點(diǎn)。
運(yùn)維性差,不能進(jìn)行進(jìn)度查看、暫停、告警等操作。
NineData高效的數(shù)據(jù)對(duì)比方案
NineData 在提供了「數(shù)據(jù)復(fù)制」和「可視化管理」的同時(shí),又進(jìn)一步拓展了Redis對(duì)比的能力,很好地滿足了Redis對(duì)于數(shù)據(jù)一致性的要求。相較于傳統(tǒng)對(duì)比,NineData 的Redis數(shù)據(jù)對(duì)比能力有如下優(yōu)勢(shì):
簡(jiǎn)單易用:一分鐘即可完成任務(wù)配置,并全自動(dòng)化完成對(duì)比任務(wù)。
強(qiáng)勁性能:通過(guò)多線程、隊(duì)列優(yōu)化、流式內(nèi)存管理等核心技術(shù),對(duì)比性能達(dá)到 13萬(wàn)/秒,有效保障對(duì)比效率。
完善的功能:支持Redis數(shù)據(jù)的一致性對(duì)比,同時(shí)提供了一次性對(duì)比、周期性對(duì)比、快速對(duì)比等適合多種使用場(chǎng)景的對(duì)比功能,并且也提供了不一致數(shù)據(jù)修復(fù)的能力。
可視化界面:擁有簡(jiǎn)潔直觀的用戶界面,無(wú)需復(fù)雜的設(shè)置即可進(jìn)行數(shù)據(jù)對(duì)比,并且以直觀的圖表和報(bào)告呈現(xiàn)對(duì)比結(jié)果,使您輕松理解數(shù)據(jù)差異。
安全可靠:NineData 平臺(tái)通過(guò)國(guó)家公安部三級(jí)網(wǎng)絡(luò)安全等級(jí)保護(hù)認(rèn)證,為企業(yè)的信息安全提供高等級(jí)的防護(hù)。
通過(guò)上述優(yōu)勢(shì),保證了 NineData 在Redis對(duì)比場(chǎng)景下的領(lǐng)先性。另外,NineData 還提供了對(duì)比功能,包含全量、快速和不一致復(fù)檢的對(duì)比方式,并且也支持不同的對(duì)比頻率。在遷移或復(fù)制結(jié)束后,通過(guò)對(duì)比,有效地保障數(shù)據(jù)的質(zhì)量。
對(duì)比鏈路的配置
NineData數(shù)據(jù)對(duì)比鏈路的配置
1. 配置任務(wù)名稱,選擇要對(duì)比的源數(shù)據(jù)源和目標(biāo)數(shù)據(jù)源。
2. 對(duì)比頻率,可選擇一次性對(duì)比或按照需要定期對(duì)比。
3. 對(duì)比方式,可選擇全量數(shù)據(jù)對(duì)比或自定義抽樣比例對(duì)比。
選擇對(duì)比對(duì)象
通過(guò)NineData數(shù)據(jù)對(duì)比選擇對(duì)比對(duì)象
選擇對(duì)比對(duì)象:可選擇不同DB進(jìn)行對(duì)比。
配置映射對(duì)象
通過(guò)NineData配置映射對(duì)象
配置映射:可以把源實(shí)例的多個(gè)數(shù)據(jù)庫(kù)映射到目標(biāo)實(shí)例指定的1個(gè)或多個(gè)數(shù)據(jù)庫(kù)。
預(yù)檢查
NineData數(shù)據(jù)對(duì)比提供了預(yù)檢查功能
通過(guò)完善的檢查項(xiàng),保證了對(duì)比任務(wù)的穩(wěn)定性。到此,我們就完成了一個(gè)快速、高效的Redis對(duì)比任務(wù)的配置,當(dāng)完成配置并啟動(dòng)任務(wù)后,NineData就實(shí)現(xiàn)全自動(dòng)化的數(shù)據(jù)對(duì)比。
同時(shí),為了提供更好的對(duì)比體驗(yàn),NineData針對(duì)對(duì)比過(guò)程提供了完善的觀測(cè)、干預(yù)能力。其不但提供對(duì)象對(duì)比的詳細(xì)狀態(tài)、進(jìn)展、詳情,還通過(guò)監(jiān)控和日志透露后臺(tái)線程的內(nèi)部執(zhí)行情況,幫助用戶全方位追蹤對(duì)比進(jìn)展。同時(shí),還針對(duì)運(yùn)行過(guò)程中可能出現(xiàn)的異常情況,提供告警和對(duì)比暫停能力,讓用戶能夠自主快速地診斷并修復(fù)異常,保障對(duì)比的穩(wěn)定性。對(duì)比期間的信息:
NineData提供對(duì)比期間的信息總覽
在監(jiān)控中可以看到對(duì)比的RPS,實(shí)時(shí)了解對(duì)比的性能。除了監(jiān)控外,如果遇到數(shù)據(jù)不一致的情況,在操作列中則會(huì)出現(xiàn)「查看詳情」按鈕。進(jìn)去可以看到具體key的不一致信息:
通過(guò)NineData查看具體key的不一致信息
最后,在操作列中可以看到「SQL」按鈕,會(huì)顯示提供修復(fù)不一致數(shù)據(jù)的操作:
NineData生成修復(fù)不一致數(shù)據(jù)的變更SQL
總結(jié)
NineData 數(shù)據(jù)對(duì)比是一款云原生數(shù)據(jù)對(duì)比產(chǎn)品,具備每秒處理100萬(wàn)筆記錄的高效能力。它提供了一站式支持,適用于IDC自建、云主機(jī)自建以及云數(shù)據(jù)庫(kù)。并支持多種數(shù)據(jù)庫(kù),除了Redis之外,還包括MySQL、SQL Server、PostgreSQL、MongoDB、ClickHouse、Doris等,可進(jìn)行數(shù)據(jù)庫(kù)間的結(jié)構(gòu)對(duì)比和數(shù)據(jù)對(duì)比。
此外,NineData還支持同構(gòu)和異構(gòu)數(shù)據(jù)源之間的數(shù)據(jù)一致性校驗(yàn)。用戶可以選擇結(jié)構(gòu)對(duì)比、全量對(duì)比、抽樣對(duì)比、周期性對(duì)比等多種對(duì)比方式。NineData能夠動(dòng)態(tài)監(jiān)測(cè)數(shù)據(jù)庫(kù)負(fù)載,自適應(yīng)調(diào)整對(duì)比速度,確保數(shù)據(jù)庫(kù)的穩(wěn)定性。豐富的數(shù)據(jù)源支持使得NineData能夠滿足不同客戶的需求。此外,NineData在結(jié)構(gòu)對(duì)比方面擁有業(yè)界領(lǐng)先的覆蓋度,對(duì)象類型及屬性覆蓋度業(yè)界 NO.1。
審核編輯 黃宇
-
數(shù)據(jù)庫(kù)
+關(guān)注
關(guān)注
7文章
3803瀏覽量
64409 -
Redis
+關(guān)注
關(guān)注
0文章
376瀏覽量
10879
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論