專訪平安科技王鵬沖:平安數(shù)據(jù)庫的PG之路
原創(chuàng)由Postgres中國用戶會舉辦的“Postgres 2015 全國用戶大會”于北京麗亭華苑酒店舉行,本次大會邀請了多位資深專家給技術(shù)人員帶來一場精彩的知識盛宴。在大會現(xiàn)場,平安科技王鵬沖就平安科技引入PostgreSQL的實(shí)踐經(jīng)驗和51CTO記者進(jìn)行交流。
【受訪者簡介】
王鵬沖,當(dāng)前在平安科技數(shù)據(jù)庫技術(shù)部任職數(shù)據(jù)庫服務(wù)分組經(jīng)理。10多年數(shù)據(jù)庫管理經(jīng)驗,從Sybase到Oracle再到Mysql,現(xiàn)剛接觸PG。對技術(shù)擁有濃厚興趣,愿與大家共建國內(nèi)***開源數(shù)據(jù)庫生態(tài)圈。
Postgres發(fā)展現(xiàn)狀、未來方向及優(yōu)勢
據(jù)報告顯示,PostgreSQL的商業(yè)版EDB已經(jīng)進(jìn)入***象限,并且日趨接近成熟的商業(yè)版數(shù)據(jù)庫例如Oracle??吹介_源的數(shù)據(jù)庫,商業(yè)化版本,整個社區(qū)的成熟度,用戶量以及整個生態(tài)圈的完善程度都在不斷進(jìn)化中,平安也希望能夠有幸成為其中一員,推動整個Postgres在中國的行業(yè)發(fā)展。
當(dāng)問及Postgres在一定領(lǐng)域上很流行,其優(yōu)勢是什么?王鵬沖從三個角度來分析的:
- 成本。天下沒有免費(fèi)的午餐,如果不是從成本考慮的話,尤其是作為Oracle的DBA來講,其實(shí)對oracle還是有比較深的感情的,沒必要去放棄很熟悉的一個領(lǐng)域,然后進(jìn)入一個新的領(lǐng)域。所以這個一個是成本的考慮,因為畢竟開源的即使是商業(yè)化的產(chǎn)品也比傳統(tǒng)的商業(yè)數(shù)據(jù)庫更加便宜。
- 互聯(lián)網(wǎng)化應(yīng)用趨勢。現(xiàn)在的互聯(lián)網(wǎng)化的營銷手段會給數(shù)據(jù)庫帶來壓力,如雙十一大促之后,就會面臨一些資源的回收、釋放等,這種特殊的需求對于Oracle數(shù)據(jù)庫或一些傳統(tǒng)的架構(gòu)來講,比較重,不太能靈活的做到擴(kuò)展和彈性的收縮。
- 國家監(jiān)管。國家監(jiān)管層面要求信息系統(tǒng)做到自主可控,促成現(xiàn)在開源的數(shù)據(jù)庫產(chǎn)品越來越蓬勃發(fā)展。
平安科技引入PG的數(shù)據(jù)庫的原因及引進(jìn)之后的改變
平安科技引用 PG的數(shù)據(jù)庫的原因除了在一些特定的場景下,傳統(tǒng)數(shù)據(jù)庫擴(kuò)容伸縮相對較難,橫向擴(kuò)展的手段實(shí)施起來比較復(fù)雜等因素之外,對PostgreSQL來講,其特性是可以利用起來去做數(shù)據(jù)庫整合。例如這樣一個應(yīng)用場景,既用到關(guān)系型數(shù)據(jù)又用到地理位置信息數(shù)據(jù),這要就既要用oracle數(shù)據(jù)庫,又要用Mongo DB來支持應(yīng)用。對于PostgreSQL來講,一個數(shù)據(jù)庫就可以了。這是因為PostgreSQL有豐富的插件,PostgreSQL既能支持關(guān)系型數(shù)據(jù),又能支持非關(guān)系型數(shù)據(jù),對于企業(yè)來源講就容易把數(shù)據(jù)庫類型整合起來,減少投入各方面投入,如開發(fā)成本、運(yùn)維成本等。
談到平安科技引進(jìn)PG的數(shù)據(jù)庫給平安科技帶來的改變,王鵬沖這樣說,PG地理位置信息插件,目前正在研究,還沒有真正的用到系統(tǒng)中。平安科技有一套基于Mongo DB的地理位置信息研發(fā)的系統(tǒng),計劃在未來用PG替換到這一部分。Greenplum開源以來,平安也在對其做研究,對海量關(guān)系型數(shù)據(jù)的挖掘和分析,GP在這個領(lǐng)域是佼佼者,而GP的核心也是PG,挖掘開源的GP看看對平安在企業(yè)內(nèi)部 一些場景是否有可用之處。
引用PG初期所遇問題的解決方案及PG系統(tǒng)在平安的現(xiàn)狀
王鵬沖說,任何東西引入到一個新環(huán)境下面肯定會有些反彈,因為大家都是有懷舊情緒或者是按照現(xiàn)在的慣性去工作。平安科技是傳統(tǒng)的公司,開發(fā)人員基于Oracle開發(fā)時間很長,用熟了Oracle,突然要推另外一種數(shù)據(jù)庫產(chǎn)品時,就會產(chǎn)生抗拒心理。這樣一來,要做的事情就是做好無縫切換,對開發(fā)者的影響降到***,如發(fā)掘比較便利的工具,或是給開發(fā)人員做一些培訓(xùn)等。也可以跟社區(qū),跟商業(yè)服務(wù)的提供商進(jìn)行溝通,尋求一些資源和幫助,得到多方面資源能的協(xié)助們,這樣新產(chǎn)品的落地和后期的推廣會走的更加順暢。
平安科技和PG相關(guān)的系統(tǒng)已經(jīng)有了基本的架構(gòu)規(guī)范、開發(fā)規(guī)范。HA的架構(gòu)、監(jiān)控、備份,日常運(yùn)維等這些都已經(jīng)完成,目前已經(jīng)有部分新建的系統(tǒng)已經(jīng)是基于PG上線。
采訪***, 王鵬沖說,從業(yè)務(wù)角度出發(fā),作為一個開發(fā)者來說,期望 在未來,其一,希望PG在分片的架構(gòu)上能夠更加成熟,國內(nèi)有更多的應(yīng)用,更多的公司能夠把它用起來,而且有實(shí)實(shí)在在的案例在那里。其二,PG的分區(qū)表得以改善,因為如是做OracleDB出身,PG的分區(qū)表用起來比較難用。其三,平安科技是金融集團(tuán)下的IT公司,一樣處于監(jiān)管部門監(jiān)管之下,未來也希望能夠有更優(yōu)秀的國產(chǎn)數(shù)據(jù)庫可供企業(yè)用戶來選擇。