偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

數(shù)據(jù)庫遷移,要停機發(fā)布么?看看別家的程序員怎么做的

運維 數(shù)據(jù)庫運維
很多公司,在進行數(shù)據(jù)遷移的時候,都會選擇停服來處理,這是一種偷懶的方法,數(shù)據(jù)遷移能不能做到不停服呢?今天我們來介紹下這個高速換輪胎的技術(shù),數(shù)據(jù)庫遷移。

本來以為過年了要好好寫文章,因為疫情的關(guān)系,新增的不少的需求。希望這場疫情早日過去吧,武漢加油。今天我們來聊一聊數(shù)據(jù)庫遷移,這個其實非常的常見,例如我們要從自己的機房將數(shù)據(jù)遷移到騰訊云或者阿里云這些線上服務(wù),或者我們有時候需要把一個業(yè)務(wù)拆分成多個子業(yè)務(wù),為了減少系統(tǒng)的耦合,我們通常也會選擇拆庫,這就需要進行數(shù)據(jù)遷移。很多公司,在進行數(shù)據(jù)遷移的時候,都會選擇停服來處理,這是一種偷懶的方法,數(shù)據(jù)遷移能不能做到不停服呢?今天我們來介紹下這個高速換輪胎的技術(shù),數(shù)據(jù)庫遷移。

數(shù)據(jù)庫遷移,要停機發(fā)布么?看看別家的程序員怎么做的

 

這個是最常見的數(shù)據(jù)遷移的一個流程。一開始,我們的應(yīng)用都是讀寫舊的數(shù)據(jù)庫,這個時候我們還沒有開啟數(shù)據(jù)遷移。緊接著,我們會有一個新的數(shù)據(jù)庫,一般來說,這個時候,我們會開啟雙寫,什么是雙寫呢?就是對數(shù)據(jù)庫的寫操作,我們既寫到舊庫,又寫到新庫。如果擔(dān)心因為雙寫而造成的耗時增加,我們可以選擇異步同步的模式,但是異步勢必增加了系統(tǒng)的復(fù)雜性,我們需要把失敗的日志記錄下來,以便后期進行處理。

在第二步的時候,我們?nèi)匀皇亲x取舊數(shù)據(jù)庫的數(shù)據(jù),這個時候?qū)€上的業(yè)務(wù)幾乎是沒有影響的,接下來,我們可以準(zhǔn)備讀取新庫的數(shù)據(jù),為了減小影響,我們可以采用一定的灰度策略,先讓部分流量讀取新庫,然后再慢慢擴大灰度范圍,這個時候所有的寫請求還是雙寫的,一旦發(fā)現(xiàn)有問題,可以回退到第二步甚至是第一步,減少對業(yè)務(wù)的影響。當(dāng)服務(wù)穩(wěn)定下來之后,我們可以去掉對舊庫的寫入,這樣子就能完成一次數(shù)據(jù)遷移。

[[313745]]

相信很多人會問,說的容易。那么對于歷史數(shù)據(jù),怎么遷移到新庫呢?這里我們介紹兩種常見的方法,一是懶惰遷移,二是主動遷移。什么是懶惰遷移呢?這個是從英文單詞Lazy翻譯過來的,就是如果這行數(shù)據(jù)沒有被使用到,我們就不管他,如果它被使用到,那么我們就把它遷移過來。一般我們會使用一個key-value來記錄下哪些key被懶惰遷移過,當(dāng)我們更新舊表的時候,如果發(fā)現(xiàn)這個key沒有被遷移,那么就順路把他寫到新表里面,并且更新下鍵值數(shù)據(jù),表示這個key已經(jīng)被遷移過了,后面雙寫的時候,直接雙寫即可,無需進行數(shù)據(jù)遷移。

另外一個是主動遷移,有些數(shù)據(jù),可能在進行數(shù)據(jù)遷移的時候就沒被訪問過,例如用戶可能幾個月不登錄,你不能因為數(shù)據(jù)遷移就把他拋棄了。所以我們需要對這些冷數(shù)據(jù)進行數(shù)據(jù)遷移,簡單來說,就是掃取數(shù)據(jù)庫中的存量數(shù)據(jù),然后將他們寫入新的數(shù)據(jù)庫即可。

[[313746]]

總結(jié)

這里要注意的是,我們在數(shù)據(jù)遷移的時候,如果用戶頻繁地修改數(shù)據(jù),是有可能造成數(shù)據(jù)不一致的,所以,一般我們都會選擇在晚上,用戶活躍度低的時候進行數(shù)據(jù)遷移。甚至在業(yè)務(wù)方便會去限制用戶的并發(fā)請求數(shù),從而減少因為并發(fā)而出現(xiàn)數(shù)據(jù)不一致的情況。上述方案,對于大多數(shù)公司與業(yè)務(wù),其實已經(jīng)夠用了,當(dāng)然,如果你的業(yè)務(wù)場景更加復(fù)雜,數(shù)據(jù)量更加大,還要進一步分析,進一步制定遷移方案。歡迎大家關(guān)注我,共同學(xué)習(xí),共同進步。大家的支持是我繼續(xù)嘮嗑的動力。同名公眾號(沙茶敏碎碎念) 

責(zé)任編輯:龐桂玉 來源: 今日頭條
相關(guān)推薦

2023-09-27 22:44:18

數(shù)據(jù)遷移數(shù)據(jù)庫

2021-09-28 09:57:50

程序員技能開發(fā)

2011-09-26 09:52:04

程序員

2011-10-10 09:22:27

程序員

2015-09-20 18:31:29

阿里云心電數(shù)據(jù)云上安心

2021-10-12 10:22:33

數(shù)據(jù)庫架構(gòu)技術(shù)

2012-11-01 11:31:56

程序員編程開發(fā)

2013-01-17 10:10:44

程序員

2023-09-27 07:18:27

Nginxsession客戶端

2015-03-25 13:16:55

SQL Server數(shù)據(jù)庫安全開發(fā)人員

2017-10-20 13:28:50

2015-10-19 17:49:43

程序員泡沫工資

2019-08-16 09:12:59

數(shù)據(jù)庫PostgreSQL Oracle

2015-07-20 10:11:08

程序員幸福

2017-11-08 12:25:37

小程序運營公眾號

2018-07-17 11:10:47

程序員工資行業(yè)

2012-11-14 14:18:57

程序員

2013-08-20 09:33:59

程序員

2011-07-05 11:08:05

程序員

2021-11-10 09:19:42

數(shù)據(jù)庫程序員性能
點贊
收藏

51CTO技術(shù)棧公眾號