我的資料庫學習“曲線”----牛新莊 (zt)

yxyup發表於2009-02-12

編者按:牛新莊,資料庫維護、優化和架構專家;曾獲得國內資料庫領域最高榮譽——“2006年中國首屆傑出資料庫工程師”; 數年前曾被IBM全球軟體部以年薪60萬元人民幣聘用,而他卻婉然拒絕。這樣一個躲藏在幕後的“牛人”,有著怎樣的學習、發展之路?為此,本刊特邀牛新莊 博士,請他講述一個真實版的“資料庫之路”。 

選定發展方向
      1999年,我在開始讀研時就給自己確定了以後的發展方向。
      當時有兩個方向:網路,資料庫技術。因為在2000年之時,網路大熱,市場上擁有CCNP、CCIE證書的人特別牛。所以我當時也考下了CCNP證書,但 後來發現網路方向涉及很多硬體層面的東西,這些都對廠商的依賴性太強,個人發揮空間不大。而我喜歡鑽研,所以慢慢開始轉向專攻資料庫技術。
      在認準資料庫這個方向後,我開始深入學習資料庫理論方面的知識。當時,人大王珊教授的《資料庫系統原理教程》一書,我讀了幾十遍。在學習資料庫理論的同 時,我開始接觸並深入學習DB2和Oracle,並從1999年開始使用DB2 V5.2。那時,市場上關於DB2方面的技術書籍幾乎沒有,網際網路也不像現在這麼發達。因為我的導師做一個課題需要用到DB2資料庫,但是我只能依靠檢視 DB2隨機文件來學習。那時,我還自己兼職,通過幫別人做些小軟體賺錢,外加課題經費,以支付考OCP認證和DB2認證的費用。
      到現在為止,我一直認為考認證是一個很好的學習動力。因為考試費用不菲,如果不想浪費錢只能拼命看書。我在讀研的2000年就通過了OCP 8i認證,後來又陸續通過DB2 V5.2認證。這些認證極大地增強了我的自信。同時,在幫助導師用PB、Delphi等程式設計工具做應用開發時,我有意識地增強對SQL的學習,這對我後來 的效能調優工作非常有幫助。
      這裡我想說的是,做好一個時期的人生規劃非常重要。我們首先要有一個明確的努力方向和規劃,然後有意識的往這個方向努力。這種積極主動的學習要比被動學習效率高很多。 

第一次做培訓
      “機遇偏愛於有準備的頭腦”,這句話雖是老生常談,卻是人生真諦。記得2000年底,我在網上看到一個帖子說需要一個人去安裝DB2資料庫,差旅報銷,每 天500元,我喜出望外。因為這項工作需要有DB2認證才能去,而我那時DB2高階系統管理和應用開發的認證都有,所以很快就通過了對方的稽核。但是當我 到客戶現場時才發現,不是安裝DB2而是要給客戶講課,當時我就傻眼了,因為講課需要的知識遠比安裝配置資料庫要難得多,更何況我之前根本沒有講過課。沒 辦法,壓力也是動力,只能前一天夜裡看教材備課到凌晨5點。短短睡了兩個小時後,8點半去講課。四天講課下來,我總共休息了12個小時。還好自己畢竟有 DB2應用開發經驗和DB2認證做基礎,總算勉強應付了過去。只是沒想到的是,這次並不算順利的培訓,竟是我未來幾年培訓生涯的開始。 

將培訓當學習的動力
      經過第一次講課後,我看到了自己的差距,知道僅有認證是不夠的。客戶的很多問題,書本上沒有答案,需要自己在實踐經驗上做努力。另外,講課前講師需要把一些原理、概念性的東西弄清楚,也需要對資料庫進行深入學習。
      後來,IBM培訓部通過一些渠道知道我能講DB2且擁有相關證書,就找我講授DB2系列課程。所以,從2001年開始,我就經常作為IBM官方講師講授 DB2系列的所有課程。我自認為講課是一個很好的學習過程,因為課前要深入瞭解概念,對於自己的理論深入學習有很大幫助。同時,課堂上學員的實際操作問題 也會強迫自己做更深入的研究。
      我對培訓有這樣的認識:學員聽你講三個小時,要遠遠勝過自己看3小時的書。如果把一堂課的內容比喻成一杯水,那老師至少應該提前儲備一桶水。所以,在講課 之前,我精心準備實驗,深入和學員交流。我講課從不照本宣科,而是自己準備了很多教材外比較實用的知識來擴充套件教材內容。同時爭取上課過程中把一些概念用淺 顯易懂的例子來講解。要想做到這些,首先自己必須對這個概念有深刻的理解才行,這一切都在客觀上促進了自己的學習。
      隨著培訓的增多,有部分客戶開始找我做實際的調優工作。記得我第一次去為客戶現場調優是2001年,去大連大通證券解決鎖等待問題。客戶環境用的是AIX 和CICS。當時雖然問題解決了,但自己心裡還是比較虛,因為對AIX和CICS不瞭解,萬一是這兩個方面有問題,自己就沒辦法搞定了;這讓我認識到一個 複雜系統的調整往往需要具備多方面的知識。這件事之後,我在網上買了一個140的IBM工作站小機,自己安裝AIX並開始學習。 

資料庫學習Tips
      根據我對資料庫的理解,目前市場上雖然有Oracle,DB2,Informix,Sybase和SQL Server資料庫,但Informix資料庫已經被IBM收購,而Sybase資料庫在技術和市場上正走向沒落,佔據市場主要份額的就是 Oracle,DB2和SQL Server資料庫。SQL Server資料庫非常好,但是很遺憾的是隻能在Windows平臺使用。所以如果你深入研究SQL Server資料庫,我只能說獲取高薪的概率稍低,而且坦白的說,使用SQL Sever資料庫的企業一般是中小企業居多。而國內做Oracle資料庫的人太多,如果你想在Oracle領域出人頭地,難度極大。但是,做DB2資料庫 的人反而不太多,物以稀為貴。況且,DB2資料庫廣泛應用在銀行、電信、製造行業、零售行業、保險行業等“高薪”領域中,所以我強烈建議學習DB2資料 庫,做IBM技術一般獲取高薪的概率相對會大一些。我們的時間精力是有限的,所以必須選擇好方向然後努力為之。除了SQL Server,這幾個資料庫我都在使用,我個人感覺除了功能外,對於執行穩定而言,相對於Oracle不太穩定的優化器,DB2無疑是最穩定的,它的優化 器無比強大。如果能在鎖方面再有更先進的技術,那麼DB2將是完美的。

這期間,我一邊學習,一邊通過了AIX的全部認證。記得非常清楚的是,為了做HA的實驗,我花費了很大工夫。因為那時小型機不像今天這麼普及,無法 搞到7133陣列。後來我又學習了CICS、WebSphere、MQ和儲存。就這樣,在我培訓的過程中,發現自己哪方面薄弱並且感覺這個方向有前途,我 就會開始學習。不過,那時我的技術主要還是圍繞IBM產品為主。由於自己對培訓比較用心且頗受客戶好評,找我做培訓的國內培訓機構開始變多。這個期間我自 己的技術水平也增長很快。
      2002年11月,我參加了首屆 “IBM DeveloperWorksLive! China 2002”大會,並獲得IBM首次在國內評選的“傑出軟體技術專家”獎,當時在6名獲獎者中名列第2。這個獎項客觀上對我在客戶群的擴充方面起到很大幫 助。找我解決問題的人更多了,所以2002—2003年也成了我技術提升最快的兩年。
      這兩年內,我陸續學習了HP-UX、WebSphere和MQ並通過認證。我自己的感覺是,如果你把一門技術研究得非常深、非常透,由於觸類旁通的緣故, 再去學習另一門技術時就很輕鬆。所以,我在學完AIX再去學習HP-UX時,感覺非常輕鬆。同樣,在學習ORACLE和DB2後再去學習Informix 也同樣很容易。通過這種縱向的深入和橫向的比較,各種產品的所長所短也會非常清楚,自己的技術視野無意間更加全面化。而且通過對一個產品的深入,你往往能 夠發現這個產品的缺點和需要改進的地方。就拿DB2來說,每次版本更新的新特性,在新版本未上市前我就可以猜得差不多了。這主要有三個原因:一是我貼近真 實使用者,瞭解他們的真正需求;二是自己一直在用且不斷總結思考;三是這些特性別的資料庫有,而DB2沒有,那在下個版本就會增加。所以相對來說,我自身對 新版本的新特性學習就非常輕鬆了。就DB2而言,我擁有DB2 V5.2 、V7.1、V8.1和DB2 V9的全部認證,而且我應該是國內第一個把DB2 V8認證全部通過的人,當然,這其中也有巧合的成分。 
      重要的一點是:學習過程中,要不斷地把實踐和理論融合,知其然更知其所以然,這樣提升就會快很多。 

現場救援“趕場”記
      2004—2005年是我最忙碌的兩年,那時候找我講課的培訓機構和需要效能調優的客戶非常多,基本上整天在天上飛。培訓機構找我講課常常需要提前一個月 預約。那兩年內,除了過年幾天,其他時間都是在做培訓和診斷、調優,足跡遍及國內主要城市。我自己基本上是國內六大銀行開發中心和資料中心培訓的指定講 師,併為北京銀信科技、山東農信、廣東農信,交行大集中IBP等專案做資料庫技術顧問。
      那時的我年輕、精力充沛。記得最刺激的一次是2004年9月的一天,上午9點為上海移動IT部門做AIX動態邏輯分割槽(DLPAR)培訓,結束時是17 點。之後,立刻坐計程車前往揚州,於20點到達揚州供電局並協助他們進行電力負荷控制系統專案上線,一直奮戰到凌晨3點半。接著,又連夜乘計程車趕往上 海,在凌晨6點到達酒店。休息兩小時後,8點出發,準時出現在上海移動培訓現場。那時我對報酬不太在意,想的主要是用心積累技術經驗和客戶資源。在我看 來,能夠不斷通過實踐讓自己成長是第一要義。而且,去的客戶現場越多,處理的問題就越多,也就越多地發現自己的不足,然後再拼命學習,不斷積累、總結和思 考,進入了一個良性迴圈。
      至今我仍然懷念那段充實、緊張而充滿激情的光輝歲月。2004年和2005年,一方面因為以獨立諮詢顧問的個人身份無法出具發票;另一方面,專案越做越 大,尤其是很多銀行的資料庫架構和維護專案涉及合同金額也越來越大,需要簽訂正式公司合同。於是,我就分別在上海、北京註冊了公司。當然這些年我並非都是 一帆風順,也犯過一些重大錯誤,例如:我曾經在2002年5月1日把海南美蘭機場的資料庫調死,導致機場航班資訊管理系統癱瘓。早期也曾經因為調整某證券 系統當機而影響股民交易,這些都對客戶造成了影響,但這些都是成長必須要走的路。經過這兩次事件後,我自己也思考、總結了很多,在之後的調優工作中我基本 上再沒有犯過錯誤。

我的祕訣:學習、積累、規劃
      2006年8月我獲得“2006年中國首屆傑出資料庫工程師”稱號,算是對我多年學習資料庫的一個總結。自2007年開始,我專注於做一些大客戶的運維工 作,並相應減少了培訓次數。2008年,我被建設銀行以年薪217萬聘請為資深技術專家來維護Oracle和Informix資料庫。就做技術而言,以一 己之力能掙到年薪幾百萬常常令我感到自豪,也讓我感受到技術的魅力,覺得自己多年來對技術的鑽研得到了認可。
      之所以講述我的技術之路,主要目的是給大家一些參考,儘可能多地去了解社會的需求,有意識給自己制定人生規劃。我自己認為,多年來能取得這樣的成績,勤奮、努力和堅持一直是我最看重的。因為有了這些,才不至於當機遇光顧時,你卻不知所措。
      現在很多年輕人,恰恰缺少的就是這樣的忘我與痴迷,在我熟悉的資料庫技術領域,很多年輕人越來越早地將注意力集中在薪水和職位上,這是很不明智的行為。其 實,往往那些將諸如高薪與職位忘懷的人反而能更快地取得成功。“不經一番寒徹骨,安得梅花撲鼻香?”這樣的道理人人都懂,可能夠真正去實踐的人卻並不多。 結合我的學習經驗與感悟,我總結有16字要訣:去除浮躁,認真學習,不斷積累,尋找機遇。
      最後,我用這句話與大家共勉:古之成大事者,不唯有超世之才,亦唯有堅韌不拔之志也! 

作者簡介:
      牛新莊博士,研究方向為資料倉儲和資料探勘。是IBM官方資深培訓講師(培訓DB2,AIX,MQ,WebSphere和CICS)。2002年獲IBM 傑出軟體專家獎,2006年獲“首屆中國傑出資料庫工程師獎”、“2006年IT168技術卓越獎”。是中信銀行、山東農信、廣東農信等公司資深技術顧 問,中國建設銀行總行特聘資深技術專家。擁有OCP,AIX,DB2,HP-UX,MQ,CICS和WebSphere等二十多項國際認證。著有 《Oracle資料庫開發講座——Oracle9i Jdeveloper與J2EE實務應用》、《DB2應用開發實戰指導》、《循序漸進DB2-系統管理、執行維護與應用案例》、《深入解析DB2-高階管 理、內部體系結構與診斷案例》和《DB2效能調整與優化》等書。




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7364032/viewspace-548846/,如需轉載,請註明出處,否則將追究法律責任。

相關文章