近期關(guān)于國(guó)產(chǎn)數(shù)據(jù)庫(kù)的討論非常多,大家的態(tài)度褒貶不一。
作為一個(gè)從業(yè)多年的老DBA盾饮,也談一談自己的看法。
首先土浸,作為數(shù)據(jù)庫(kù)從業(yè)人員,很欣喜的能夠看到數(shù)據(jù)庫(kù)行業(yè)的百貨齊放彭羹。
隨著國(guó)產(chǎn)數(shù)據(jù)庫(kù)廠商的增多黄伊,對(duì)于數(shù)據(jù)庫(kù)行業(yè)的人才需求越來(lái)越大。這對(duì)數(shù)據(jù)庫(kù)從業(yè)者來(lái)說(shuō)是一個(gè)非常好的事情派殷。
就拿我們公司來(lái)說(shuō)毅舆,之前對(duì)于老員工是千年不漲薪資。以前覺(jué)得沒(méi)壓力愈腾,因?yàn)檎幸粋€(gè)DBA太容易了憋活,走了一個(gè)后面還有大把的人排隊(duì)等著進(jìn)。但現(xiàn)在不一樣了虱黄,給的待遇不高悦即,外面的廠商隨便就翻番,很容易就把人挖走了橱乱」际幔可是后面又補(bǔ)不進(jìn)人來(lái),交付端的壓力就會(huì)越來(lái)越大泳叠,時(shí)間長(zhǎng)了就會(huì)導(dǎo)致服務(wù)質(zhì)量下降作瞄,內(nèi)部軍心渙散,導(dǎo)致更多的人離職危纫。時(shí)間長(zhǎng)了就成了惡性循環(huán)宗挥。
所以這兩年也慢慢開(kāi)始主動(dòng)漲工資,究其根本种蝶,我覺(jué)得還是數(shù)據(jù)庫(kù)行業(yè)人才的需求大了契耿,使得這個(gè)行業(yè)的整體待遇水平在不斷的上升。
其次螃征,國(guó)產(chǎn)數(shù)據(jù)庫(kù)的水平到底如何搪桂,該不該用國(guó)產(chǎn)數(shù)據(jù)庫(kù)。
說(shuō)到數(shù)據(jù)庫(kù)盯滚,人們自然會(huì)想到Oracle踢械。一旦聽(tīng)說(shuō)有一個(gè)新的數(shù)據(jù)庫(kù)產(chǎn)品,也會(huì)下意識(shí)的和Oracle做一番比較魄藕。
Oracle的數(shù)據(jù)庫(kù)產(chǎn)品誕生于上世紀(jì)70年代末期内列,經(jīng)過(guò)30多年的發(fā)展,早已經(jīng)成為數(shù)據(jù)庫(kù)領(lǐng)域的王者泼疑,市場(chǎng)占有率超過(guò)50%德绿。反觀國(guó)產(chǎn)數(shù)據(jù)庫(kù)荷荤,大部分基于MySQL或PostgreSQL兩個(gè)開(kāi)源數(shù)據(jù)庫(kù)產(chǎn)品開(kāi)發(fā),這些產(chǎn)品基本都是一些大廠作為內(nèi)部支撐系統(tǒng)使用移稳,真正以產(chǎn)品的形態(tài)對(duì)外商用蕴纳,也就是近5年的事。
指望一個(gè)5年的商業(yè)產(chǎn)品和發(fā)展了30年的頂級(jí)產(chǎn)品去比較个粱,很明顯不能期望太多古毛。
但這樣就不應(yīng)該選擇國(guó)產(chǎn)數(shù)據(jù)庫(kù)嗎?很明顯也不是這樣的都许。這里從我個(gè)人的角度列舉以下幾點(diǎn)理由:
其一稻薇,國(guó)產(chǎn)數(shù)據(jù)庫(kù)能夠解決某個(gè)特定場(chǎng)景的問(wèn)題。
隨著IT技術(shù)的不斷發(fā)展胶征,數(shù)據(jù)類(lèi)型也發(fā)生了很大的變化塞椎,數(shù)據(jù)應(yīng)用的場(chǎng)景也越來(lái)越多。
Oracle數(shù)據(jù)庫(kù)在基礎(chǔ)領(lǐng)域已經(jīng)足夠成熟睛低,因此在朝著多模態(tài)的方向發(fā)展案狠,比如最新版的21C中,支持區(qū)塊鏈钱雷、JSON等眾多的新數(shù)據(jù)類(lèi)型骂铁,建設(shè)一個(gè)新的應(yīng)用系統(tǒng)時(shí),不需要考慮太多架構(gòu)上的問(wèn)題罩抗。數(shù)據(jù)統(tǒng)統(tǒng)都放在Oracle數(shù)據(jù)庫(kù)拉庵,對(duì)于大多數(shù)應(yīng)用系統(tǒng)來(lái)說(shuō),都是一個(gè)不錯(cuò)的選擇套蒂。
而國(guó)產(chǎn)數(shù)據(jù)庫(kù)钞支,更多的是專(zhuān)注在某一個(gè)特定的場(chǎng)景中,比如聯(lián)機(jī)在線交易(OLTP)泣懊,這類(lèi)系統(tǒng)通常都是小事務(wù)伸辟,由于要面對(duì)前端用戶,對(duì)于系統(tǒng)響應(yīng)時(shí)間要求非常高馍刮。而決策分析或者報(bào)表之類(lèi)的業(yè)務(wù),對(duì)于響應(yīng)時(shí)間的要求并不是很高窃蹋,但處理的數(shù)據(jù)量非常大卡啰,這時(shí)候又需要選擇另外一套數(shù)據(jù)庫(kù)系統(tǒng)來(lái)處理這部分業(yè)務(wù)。
其二警没,單體處理能力的不足匈辱,可以通過(guò)架構(gòu)來(lái)彌補(bǔ)。
市面上的國(guó)產(chǎn)數(shù)據(jù)庫(kù)杀迹,通常都是以分布式的形態(tài)出現(xiàn)亡脸。
不可否認(rèn),分布式有其獨(dú)到之處。比如對(duì)于資源的動(dòng)態(tài)擴(kuò)容浅碾,對(duì)于超大事務(wù)的支持等大州。但分布式使得整個(gè)架構(gòu)更加復(fù)雜,構(gòu)造數(shù)據(jù)一致性需要額外的成本垂谢,而且跨節(jié)點(diǎn)的分布式事務(wù)厦画、全局事務(wù)的完整性上也存在著天然的弊端。(當(dāng)然滥朱,這些弊端也可以看做是國(guó)產(chǎn)數(shù)據(jù)庫(kù)未來(lái)的發(fā)力方向根暑,誰(shuí)做的更好,就更有可能在競(jìng)爭(zhēng)中勝出徙邻。)
因此我認(rèn)為排嫌,國(guó)產(chǎn)數(shù)據(jù)庫(kù)之所以選擇分布式,主要是基于兩方面的原因:?jiǎn)误w處理能力不足和高可用的需要缰犁。
即使是OLTP場(chǎng)景躏率,單體的處理能力上,國(guó)產(chǎn)數(shù)據(jù)庫(kù)和Oracle也存在較大的差距民鼓,這些差距更多的體現(xiàn)在CPU和內(nèi)存等計(jì)算資源上薇芝。所以同等類(lèi)型的業(yè)務(wù),部署在國(guó)產(chǎn)數(shù)據(jù)庫(kù)上丰嘉,需要更多的計(jì)算資源來(lái)支撐夯到。所謂能力不夠,架構(gòu)來(lái)湊饮亏,就是如此耍贾。
Oracle數(shù)據(jù)庫(kù)的RAC和ASM等技術(shù),能夠提供實(shí)例級(jí)和存儲(chǔ)級(jí)的高可用保護(hù)路幸。國(guó)產(chǎn)數(shù)據(jù)庫(kù)暫時(shí)還做不到這一點(diǎn)荐开,因此需要分布式技術(shù)從整體架構(gòu)提供高可用保護(hù)。
其三简肴,技術(shù)之外的因素晃听。
這兩年發(fā)生了很多的事情,數(shù)據(jù)庫(kù)作為一個(gè)非常重要的基礎(chǔ)產(chǎn)業(yè)砰识,不能完全受制于人能扒。
非技術(shù)的因素,這里不展開(kāi)來(lái)說(shuō)了辫狼。作為一個(gè)中國(guó)人初斑,作為中國(guó)的數(shù)據(jù)庫(kù)從業(yè)者,應(yīng)該有這樣的責(zé)任感膨处,為國(guó)產(chǎn)數(shù)據(jù)庫(kù)的產(chǎn)業(yè)發(fā)展见秤,做出自己的貢獻(xiàn)砂竖。