Redis是目前最流行的鍵值對存儲數(shù)據(jù)庫,憑借高性能和豐富的數(shù)據(jù)類型的特性,不僅可以作為緩存,還可以作為一個可持久化的數(shù)據(jù)庫存儲。隨著業(yè)務的發(fā)展和版本的迭代,必然會遇到內(nèi)存不足、集群節(jié)點不夠和BUG等一系列問題。為了防止這些問題導致的系統(tǒng)故障,常常會把對內(nèi)存、集群節(jié)點擴縮容和版本升級等操作作為工作考核的重要一項。這些操作都涉及了數(shù)據(jù)的遷移,所以,提供高效、安全的不停機數(shù)據(jù)遷移方案是非常有必要的。
現(xiàn)在,NineData 在支持業(yè)務不中斷的前提下,實現(xiàn)了配置簡單、穩(wěn)定、高效、安全的數(shù)據(jù)遷移服務,很好地滿足版本升級、擴容、縮容等場景下對數(shù)據(jù)遷移和同步的需求。經(jīng)實測,NineData 可在 2分鐘內(nèi)完成2000萬個 key(5GB)數(shù)據(jù)的遷移,平均 遷移速度為 164398 個key/秒,性能是開源工具的2倍多。
1、傳統(tǒng)的遷移方案
目前,數(shù)據(jù)遷移主要的方式有:使用 RDB 遷移,或一些開源工具進行數(shù)據(jù)遷移。對于這些方式的遷移,會存在一些問題:
需要停機,對于拷貝 RDB 文件方式的遷移,不能保障在線業(yè)務,并且也不能兼容大版本升級。
準確性難保障,不支持數(shù)據(jù)檢測能力,遷移后的數(shù)據(jù)質(zhì)量難以保障。
可靠性差,對于開源工具,遷移異常后,進程直接退出。
運維性差,不能進行暫停、限流、告警等操作。
2、高性能的遷移方案
NineData 提供的數(shù)據(jù)復制同時包含了數(shù)據(jù)遷移和數(shù)據(jù)同步的能力,在不影響業(yè)務的前提下,提供了高效、穩(wěn)定、安全的遷移能力。相較于傳統(tǒng)遷移比,NineData 的 Redis 數(shù)據(jù)遷移能力有如下優(yōu)勢:
?? 簡單易用
一分鐘即可完成任務配置,并全自動化完成任務遷移。
?? 強勁性能
通過動態(tài)攢批、隊列優(yōu)化、流式內(nèi)存管理等核心技術,遷移性能達到16萬key/秒,性能是開源遷移工具的2倍,有效保障遷移效率。
?? 高可靠
結合新型斷點、異常診斷及豐富的修復手段,對于遷移過程中可能出現(xiàn)軟硬件故障,提供完善的容災能力,大大提高了遷移的成功率。
通過上述優(yōu)勢,保證了 NineData 在 Redis 遷移場景下的領先性。另外,NineData 還提供了對比功能,包含全量、快速和不一致復檢的對比方式,并且也支持不同的對比頻率。在遷移或復制結束后,通過對比,有效地保障數(shù)據(jù)的質(zhì)量。
3、操作使用
NineData 在提供強大遷移能力的同時,也保證了使用的簡單性,只需1分鐘就能完成遷移任務的配置,實現(xiàn)完全自動化的數(shù)據(jù)遷移過程。下面我們來看下整個任務的配置過程:
3.1 遷移鏈路的配置
遷移鏈路的配置
1. 配置任務名稱,選擇要遷移的源和目標實例。
2. 選擇復制類型,數(shù)據(jù)遷移選擇結構和全量復制(數(shù)據(jù)遷移)。
3. 根據(jù)需要,選擇合適的沖突處理策略。
3.2 選擇遷移對象
選擇遷移對象
選擇遷移對象:可選擇不同 DB 進行遷移。
3.3 配置映射對象
配置映射對象
配置映射:可以把源實例的多個數(shù)據(jù)庫(0~15)映射到目標實例的指定1個或多個數(shù)據(jù)庫,通過該映射能力可以實現(xiàn)類似于 MySQL 多源復制的場景。
3.4 預檢查
預檢查
通過完善的檢查項,保證了遷移任務的穩(wěn)定性。到此,我們就完成了一個高效、安全的 Redis 遷移任務的配置,當完成配置并啟動任務后,NineData 會自動啟動全量復制及增量復制過程,實現(xiàn)全自動化的數(shù)據(jù)遷移。
同時,為了提供更好的遷移體驗,NineData 針對遷移過程提供了完善的觀測、干預能力。其不但提供對象遷移的詳細狀態(tài)、進展、詳情,還通過監(jiān)控和日志透露后臺線程的內(nèi)部執(zhí)行情況,幫助用戶全方位追蹤遷移進展。同時,還針對運行過程中可能出現(xiàn)的異常情況,提供基礎診斷和遷移限流能力,讓用戶能夠自主快速地診斷并修復鏈路,保障遷移穩(wěn)定性。遷移期間的信息:
NineData針對遷移過程提供了完善的觀測能力
NineData提供完善的可干預能力
NineData提供基礎診斷和遷移限流能力
4、總結
NineData 基于全量復制、增量日志復制技術,提供了高效、安全可靠的 Redis 不停機遷移方案。當然,除了 Redis,NineData 已經(jīng)支持數(shù)十種常見數(shù)據(jù)庫的遷移復制,實現(xiàn)數(shù)據(jù)庫遷移、數(shù)據(jù)容災、數(shù)據(jù)雙活、數(shù)據(jù)倉庫實時集成等業(yè)務場景。同時,除了 SAAS 模式外,還提供了企業(yè)專屬集群模式,滿足企業(yè)最高的數(shù)據(jù)安全合規(guī)要求。目前,NineData已在運營商、金融、制造業(yè)、地產(chǎn)、電商等多個行業(yè)完成大規(guī)模應用實踐。
審核編輯 黃宇
-
數(shù)據(jù)傳輸
+關注
關注
9文章
2019瀏覽量
66069 -
開源
+關注
關注
3文章
3688瀏覽量
43830 -
Redis
+關注
關注
0文章
387瀏覽量
11444
發(fā)布評論請先 登錄
Redis集群部署配置詳解
cypress3014怎么查看USB走線每幀傳輸?shù)膱D像數(shù)據(jù)量?
HAL庫SPI DMA批量傳輸數(shù)據(jù)量最大為2^16,有沒有辦法改成上限為2^32?
ADS1232高速測量時出現(xiàn)20分鐘的長周期波動,是什么原因呢?
使用TLV5637進行數(shù)據(jù)轉換,同一個文件,有的時候可以量的到輸出信號,有的時候就量不到,為什么?
一種輕量分表方案-MyBatis攔截器分表實踐
Redis Cluster之故障轉移

基于javaPoet的緩存key優(yōu)化實踐

使用LMP90100連續(xù)工作2、3分鐘后,每片LMP90100返回的數(shù)據(jù)都是某個固定通道的數(shù)據(jù),為什么?
緩存對大數(shù)據(jù)處理的影響分析
信號板上面的ADS1255開機不到1分鐘就發(fā)燙,為什么?
C2000?第2代至第3代MCU功能安全使能器遷移指南

評論