CIO如何尋找合適的Oracle DBA ?
為什么好的Oracle DBA那么難找?
“Duncan……可不可以幫我介紹幾個數(shù)據(jù)庫管理員(Database Administrator;DBA)來我們這邊上班?”做了幾年的數(shù)據(jù)庫顧問服務后,客戶看到我,總是希望我可以幫他們介紹幾個DBA。
因為我自己在DBA這個職位上的培訓,是從“信息”教育培訓中心出來的。我通常都會這樣回答他們:“你們可以找有OCP(Oracle Certified Professional)認證的人進來,我自己也是從教育培訓中心出來的。”講到這里,有些客戶可能是不好意思得罪“我的出身”,唯唯諾諾的不講話了……
有些比較熟的客戶可能會直接說:“Duncan,不是啦,我們也知道教育培訓中心,他們每年都會培訓出一些取得OCP證照的Oracle DBA,像我們公司的 XXX也是那樣出身的,但總覺得沒有你那邊的好用……所以……”
數(shù)據(jù)庫管理員也無解的問題癥結在哪?
好用的Oracle DBA為什么這么難找?這不但是很多CIO的痛,也是很多IT主管攪盡腦汁也解決不了的問題。那么,究竟從上述教育培訓中心出來的Oracle DBA都跑到那去了?
以我當初受訓的那班為例,我們班上一共有25個學員,當初隨班考取OCP認證的大約有15人(之后考到的,我就不清楚了),在幾年職場洗滌后,現(xiàn)在大概只剩下6個人從事與Oracle DBA相關的工作。這6個人中,有三個人是以主管的身份“兼作”O(jiān)racle DBA。Oracle DBA在IT職場的陣亡率很高。主要的問題在于,造成Oracle數(shù)據(jù)庫發(fā)生問題的原因,經(jīng)常不單只從數(shù)據(jù)庫而來。
以我的一個客戶為例,小白(人名純屬虛構,如果雷同,純屬意外)是一個擁有OCP證照,且對數(shù)據(jù)庫本身的架構、運作原理有一定了解的數(shù)據(jù)庫管理員。原以為一切都沒問題的,無奈小白剛一就任,就面臨到替換公司數(shù)據(jù)庫系統(tǒng)主機的問題。小白沒有程序開發(fā)與主機系統(tǒng)管理等經(jīng)驗(小白是那種一畢業(yè)就去考OCP的證照,接著做Oracle DBA的人),因此,一就任就面臨到不少挑戰(zhàn)。
數(shù)據(jù)庫系統(tǒng)在小白接手后,一直有一堆怪怪的問題發(fā)生。
問題在那?沒有主機系統(tǒng)維護經(jīng)驗的小白雖然知道數(shù)據(jù)庫系統(tǒng)本身的運作并不夠順暢,但卻一直找不到問題的癥結點,時間一久,他便成了大家“攻擊”的對象。而且情況愈來愈嚴重。一開始,大伙只有在數(shù)據(jù)庫出問題時,才會去找小白;到后來,只要一發(fā)生問題,不論那個問題跟數(shù)據(jù)庫是否有明顯的關連,大伙的第一個動作就是,把問題推到數(shù)據(jù)庫或小白身上。
該狀況讓小白的工作愈來愈難做。理由是,小白既不懂管理主機系統(tǒng),也不會撰寫程序,當大家都槍口一致的說“一切都是是小白的責任”時,完全搞不懂狀況的他,也只能摸摸鼻子,把這黑到發(fā)亮的鍋子背下來。
幸好,小白的公司是我們維護的客戶之一,歷經(jīng)幾次的系統(tǒng)維護后,我們發(fā)現(xiàn)其實單純只因數(shù)據(jù)庫而導致的問題并不多,有一大半的問題是因為系統(tǒng)主機等硬件過于老舊而造成的問題,另外三分之一的問題則來自于程序撰寫,如SQL語法撰寫習慣不好等。
以SQL語法撰寫習慣不好來說,當數(shù)據(jù)庫的Loading還很輕的時候,這些有問題的SQL語法并不會對數(shù)據(jù)庫或系統(tǒng)造成太大的影響,但是當數(shù)據(jù)庫的數(shù)據(jù)成長急遽或主機負載將滿時,上述的SQL語法,就像是一鍋粥中的老鼠屎,會直接影響到整個數(shù)據(jù)庫系統(tǒng)的運作效能。
在協(xié)助小白的那段時間,曾發(fā)生一個很好玩的現(xiàn)象:在我們還沒有到現(xiàn)場確認問題原委前,小白總是透過電話用一付可憐兮兮的口吻跟我們求救(因為公司內(nèi)部的同仁會把問題的矛頭指向他)。但在我們到場了解狀況后,反倒變成我們協(xié)助小白將該叫來罵的人罵一罵,例如:主機有問題,就把負責主機維護的人叫過來。程序寫得不好,就把負責撰寫程序的人叫來念一下。
上述的例子,在我們維護的企業(yè)中,是十分常見的狀況。這代表一個Oracle DBA如果不是對系統(tǒng)或程序的運作有一定程度的了解,他將很難勝任數(shù)據(jù)庫管理等工作。
只不過,教育培訓中心提供的Oracle數(shù)據(jù)庫課程,并沒有教導Oracle數(shù)據(jù)庫系統(tǒng)以外的知識,因此,非數(shù)據(jù)庫本身所造成的營運問題,初任DBA一職的新人多沒有能力掌控。
所以,當一個企業(yè)說他們找不到稱職的或好用的Oracle DBA時,他們可能不是在說找不到“懂”數(shù)據(jù)庫的人(其實考得到OCP認證,我想對數(shù)據(jù)庫或多或少都有一定程度的了解),他們應該是指:他們找不到人可以用全觀的角度,來解析、處理與解決導致數(shù)據(jù)庫無法正常運維的原因。
我想,也應該是上述原因,我的某幾位同學才會升到CIO,還兼作DBA工作。就我的觀察,當一個員工有能力全角度的解析、處理與數(shù)據(jù)庫運維相關的各種問題時,他已經(jīng)離主管的位子不遠了。
【編輯推薦】