ITPUB名人堂第二期

yangtingkun發表於2011-09-14

感謝ITPUB將我選為名人堂第二期的嘉賓,其他廢話就不多說了,下面是訪談內容。

 

 

楊總:
   
您好!很高興有這個機會能對您進行採訪,本次我們準備了以下一些問題需要您來解答,謝謝。

問題1:現在大家都是開始玩微博了,現在累計有兩千多篇技術部落格文章,您這麼多年仍然堅持著每天至少一篇部落格的好習慣,是什麼樣的一種動力讓您這麼多年一直堅持寫下來呢?

答:其實我開始寫部落格的時候,部落格已經流行一段時間了。一開始根本沒有想過要申請一個部落格,直到有一天自己透過查詢文件解決了一個比較複雜的問題後,才發現自己面臨一個問題:如果不把這個解決問題的步驟記錄下來,那麼過不了多長時間,很可能就會忘記一些關鍵的步驟,那麼下次即使碰到同樣的問題,對自己來說仍然可能需要重頭開始。而如果將其儲存在文字檔案中,那麼時間久了,查詢起來就會很不方便,而當時的部落格恰好可以滿足我的需要,於是我的部落格也就這樣誕生了。

剛開始的時候手頭現有的值得記錄的東西較多,於是部落格更新的就比較勤。有一段時間比較忙,部落格的更新也就基本上停頓了。但是慢慢我發現,如果不去更新部落格,那麼自己就會相應的比較懶,而工作之外花在學習Oracle上的時間也會隨之減少。意識到這一點後,我恢復了部落格的更新,並給自己定下了每天更新一篇的目標,於是我的部落格變成了督促我每天學習Oracle知識,總結Oracle經驗的工具。剛開始的時候堅持可能確實比較困難,但是堅持的時間越長,就越不會輕易放棄。當堅持的時間超過了一年,更新部落格就已經變成一種習慣了。

 

問題2:您寫的部落格文章包含的內容很豐富,現在有很多人都將您的部落格作為oracle的百科全書了。透過您多年的DBA工作經驗,對資料庫的開發和維護您有哪些方面的體會?

答:其實我是從資料庫開發做起,經歷了開發DBA的階段,最終成為一個管理DBA的。因此可能涉獵過的東西比較雜一些,顯得部落格裡面的東西比較多。其實絕大部分東西還都是很基礎的東西,至於“百科全書”更是不敢當了。要說是“百科全書”應該是Oracle的官方文件,是metalink

資料庫開發主要涉及建模、表的邏輯和物理結構設計、PL/SQL程式碼編寫、效能最佳化等方面。而管理或維護DBA的任務包括邏輯備份、物理備份、恢復、遷移和升級等。雖然從工作範圍上,二者可以明確區分,但是很多時候很難界定到底屬於開發範疇還是管理範圍。而且如果想要資料庫的後期維護成本小,前期的設計非常重要。也就是說如果DBA在設計物理邏輯結構的時候多考慮一些後期維護工作,就可以把很多複雜且煩瑣的維護工作消除在設計階段。

 

問題3:憑藉您這麼多年的工作經歷,目前ORACLE資料庫在國內的使用在哪些領域,使用oracle資料庫方面有什麼優勢,以及未來您覺得資料庫的發展方向是什麼?

答:Oracle目前這麼大的市場佔有率,只要是具有一定資料規模的行業,都會存在Oracle的身影。

如果要說Oracle資料庫的優勢,最主要還是體現在大資料量OLTP環境中,Oracle特有的鎖機制和多版本讀一致性,最大限度提升了系統所能承載的併發使用者數。而對於小資料量的情況或OLAP環境中,Oracle並沒有絕對的優勢。

資料庫的發展方向我無法預測,不過Oracle資料庫的發展方向卻比較明顯。Oracle資料庫會越來越智慧、所整合的功能會越來越強大,而資料庫和儲存的一體化(Exadata)很可能是今後幾年Oracle發展的主要方向。

 

問題4:現在有很多人都在說Oracle資料庫現在越來越穩定,功能越來越先進,越來越自動,於是斷言DBA這個行業將要逐漸消亡,請問您對此有何看法?DBA的前景如何?

答:說DBA行業將要逐漸消亡顯然是杞人憂天,確實Oracle很穩定,而且隨著新版本新功能的不斷增加,使得原本很多需要人工設定的工作都可以自動完成了。但是我想問一個問題,大家可能都會使用類似crontab + shell + rman的方式每天自動備份資料庫,但是有人會透過shell + rman來自動進行資料庫的恢復嗎?Broker早就支援DATA GUARDSTANDBY資料庫自動FAILOVER,但是在產品環境中設定成自動FAILOVER的,我還從來都沒有見過。

我到是覺得Oracle還遠遠不夠自動。從8i11g,看看Oracle的自動化做了哪些:記憶體空間的自動管理、UNDO空間自動管理、儲存引數自動管理、RMAN備份和歸檔存放的自動管理、統計資訊自動收集、AWR資料自動採集,最多在加上一個儲存自動管理ASM

同樣看看從8i11gDBA所需要掌握的知識發生了哪些變化:RAC從最早的OPS發展到CLUSTER 到最新的GI,基本上一個大版本就會發生一次重大的結構上的改變;DATA GUARD從最早的 PHYSICAL發展到LOGICAL再到SNAPSHOT;資料複製從最早的ADVANCED REPLICATION發展到STREAM到現在GOLDENGATESQL提示從HINTOUTLINESQL BASELINE;匯入匯出工具從EXP/IMPEXPDP/IMPDP;統計資訊工具從ANALYZEDBMS_STATS;定時任務從JOBSCHEDULER;效能資料從STATSPACKAWR。這些還只不過是資料庫已有功能的升級和變遷,在加上每個版本所增加的大量新特性,DBA到底是輕鬆了還是需要學習更多的知識就一目瞭然了吧。事實上,Oracle自動化的功能也不能掉以輕心,如果不瞭解實現的細節,一旦出現問題就可能造成嚴重的後果。

當然隨著Oracle越來越自動化,以及很多圖形工具使得日常管理越來越傻瓜化,可能會對初級DBA的職位有一定危險,如果Oracle都升級到了11g,你還抱著89的東西不放,那麼被淘汰也是早晚的事情了。既然上了Oracle這個快行道,就義無反顧的走下去吧。

 

問題5:針對oracle資料庫的學習,有哪些經驗可以給大家分享一下?

答:如果能耐得下心,就去看Oracle的官方文件,從Concept看起,把AdministratorBackup and restorePerformance Tuning 等基礎的東西看完,把裡面所有能嘗試的操作親手做一遍,基本上就算是入門了。以後在有針對性的去看一下工具、高可用、開發、網路、安全之類的文件。這種方式的好處是基礎比較紮實,而且獲取資訊的正確性更可控(官方文件同樣存在錯誤,不過數量很少,初學者可無視),但是缺點也很明顯,前期進度比較慢。因此前期可以去類似ITPUB這種專業論壇,多參與交流,多和別人溝通,有利用自己水平的更快提高。

 

問題6:透過看您的部落格文章,發現您對oracle資料庫的知識點掌握得很細,您對興趣驅動型的知識學習和市場驅動型的知識學習,怎麼評價?您覺得自己屬於哪種型別?對將要進入這個行業的年輕人有什麼寄予?

答:個人認為無論動機是什麼,只要能保證積極主動的學習並且能保持相當長的一段時間,都會有所收穫。只不過一般來說,如果是興趣驅動的,那麼主動性和永續性都會更好一些,如果學習、研究、探索都變成一種享受,那麼想要提高水平只不過是水到渠成的事情了。

無論你是因為何種原因出於何種目的進入到Oracle資料庫這個行業,希望你在Oracle學習的過程中培養出對Oracle的興趣來,否則等待你的會是痛苦的且永不休止的學習過程。其實不只是資料庫,任何一個行業都是一樣的,想要獲得成功而不想付出努力是行不通的。

 

 

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

相關文章