【世界獨家】又一銀行數(shù)據(jù)丟失,銀行數(shù)據(jù)庫究竟在干嘛
最近又有新聞爆料,客戶在某銀行支票賬戶的存款余額消失。官方回應(yīng)為“技術(shù)故障導(dǎo)致存款數(shù)據(jù)丟失”,幸虧最終存款數(shù)據(jù)恢復(fù),得以妥善解決!
文檔君第一眼看到新聞,立馬緊張起來。查了查自己銀行卡余額,哦,那沒事了!
不過大家看余額的時候有沒有意識到,我們的錢已經(jīng)被量化成數(shù)據(jù)了?
【資料圖】
咦?我們的錢怎么就變成數(shù)據(jù)了?
很久以前,人們的錢還是一串串貝殼;但是現(xiàn)在,你有多久沒有用過現(xiàn)金了?
我們的財富,正在不知不覺地變成一串串?dāng)?shù)字。而財富的增減也就變成了數(shù)字的增減。
問題來了,銀行會不會算錯數(shù)據(jù)啊!會不會把我的數(shù)據(jù)弄丟啊!
銀行數(shù)據(jù)庫說:放心!有我呢!維護(hù)數(shù)據(jù)安全是我的重要使命。
那么,什么是銀行數(shù)據(jù)庫呢?
初識數(shù)據(jù)庫
簡單來說,銀行數(shù)據(jù)庫就和你老婆一樣,專門管錢的。
詳細(xì)來說,它會管你什么時間,什么地點,給你多少錢,還剩多少錢。
但是,因為它要管的人太多了,所以,銀行對于數(shù)據(jù)庫的一致性、性能和系統(tǒng)的服務(wù)響應(yīng)能力等都有嚴(yán)格的要求。一個合格的數(shù)據(jù)庫,需要滿足以下幾點:
1)賬務(wù)不能錯,數(shù)據(jù)不能丟
你每次取出或匯入金額后,總金額都是得確保正確;同樣的,如果賬戶里的數(shù)據(jù)丟了,很可能出現(xiàn)存款丟失的問題,讓你賬戶余額里少了一個小目標(biāo)豈不是大罪!
2)系統(tǒng)不能停,聯(lián)機(jī)不能慢
由于支付業(yè)務(wù)的特殊性,數(shù)據(jù)庫要求 on call 24 小時,時刻保持清醒高效不出錯。千萬不能像我們一樣,到點就困!
3)批量不能晚,數(shù)據(jù)易遷移
由于銀行業(yè)務(wù)龐大,許多對賬操作需要批量進(jìn)行,并且數(shù)據(jù)庫的遷移也必須易于執(zhí)行,否則會影響第二天銀行的開業(yè)。
滿足上述要求的數(shù)據(jù)庫也有不同類型,我們一起來看看吧!
集中式數(shù)據(jù)庫
集中式數(shù)據(jù)庫將數(shù)據(jù)在物理空間上集中存儲和處理,是一種較為經(jīng)典、傳統(tǒng)的架構(gòu)模式。
我們可以理解成,集中式數(shù)據(jù)庫是一個身上滿是口袋的人,咱們所有的錢分別塞在這個人不同的口袋里。當(dāng)我們需要取錢時,這個人就開始找對應(yīng)的口袋,將你需要的鈔票清點出來,交給你。
簡而言之,他既要負(fù)責(zé)存儲你的錢,還要負(fù)責(zé)清點你的錢。
由于都是它一個人管理,所以哪個口袋出了問題,也很容易定位。并且由于不需要協(xié)調(diào)其他資源,所以可以達(dá)到“立等可取”的效果。
隨著移動支付的普及,取錢的次數(shù)越來越頻繁,取錢的人越來越多,他不免有點分身乏術(shù)!
一旦有一個口袋破了,手忙腳亂的它也無法兼顧其他口袋。
因此我們就有了分布式數(shù)據(jù)庫。
分布式數(shù)據(jù)庫
分布式數(shù)據(jù)庫是物理上分散而邏輯上集中的數(shù)據(jù)庫系統(tǒng),通過計算、存儲、管理三大模塊,共同對外提供服務(wù)。他的由來歸功于服務(wù)器的虛擬化技術(shù)。
想象在你面前擺放著 N 臺服務(wù)器,通過虛擬化技術(shù)可以將這些服務(wù)器中的所有硬盤(存儲模塊)整合成一個超大面積的空房子,然后再給這個房子劃分不同的房間,用于存儲不同用戶的財富。
需要注意的是,同一用戶的不同財富可以放在不同房間中【私房錢放一個房間,預(yù)備上交的錢放一個房間】。
那么,是誰來給這個房子劃分新房間呢?—— 計算模塊。他就是這個房子的主人,除了負(fù)責(zé)房子空間的規(guī)劃,他還需要調(diào)度不同房間的剩余資源,為每一個房間門配上對應(yīng)的鑰匙。
當(dāng)申請取款的人變多時,他需要仔細(xì)規(guī)劃每個房間提供多少金額,才能盡可能減少金錢的冗余移動。
看到這里,你會有疑問,萬一哪個房間的門鎖壞了,關(guān)不上門,怎么辦?不要擔(dān)心,我們還有管理模塊。
他就像倉庫管理員一樣,時刻監(jiān)控每個房間是否安全,定期加固房間,升級屋內(nèi)配件。當(dāng)房子空間不夠時,他還需要負(fù)責(zé)部署開拓新的房間,并且將原先放在舊房間的小錢錢進(jìn)行無損遷移。
這樣的分工協(xié)作構(gòu)成了一套井然有序的分布式數(shù)據(jù)庫。
由于房間都是獨立的,所以一個房間出現(xiàn)故障,其他房間還可以繼續(xù)向我們敞開,為我們提供支付服務(wù)。這就解決了集中式數(shù)據(jù)庫由于一個口袋破了就手忙腳亂的問題。
當(dāng)然,分布式數(shù)據(jù)庫遠(yuǎn)比文檔君說的要復(fù)雜。
計算模塊如何計算?不同房間如何進(jìn)行信息交流?數(shù)量如此龐大的房間如何進(jìn)行統(tǒng)一管理?這些都是需要攻克的難題。
難題雖難,也難不住聰明的人類。
回顧一下咱們今天的知識,不難發(fā)現(xiàn),集中式數(shù)據(jù)庫和分布式數(shù)據(jù)庫各有優(yōu)缺點。
了解完數(shù)據(jù)庫,咱們打工人繼續(xù)努力,豐富自己小金庫!
本文來自微信公眾號:中興文檔 (ID:ztedoc)
標(biāo)簽: