在今年的1月22日,臺灣微軟舉辦了「尋找下一個SQL Server 武林盟主」大會,並邀請了5位SQL Server領域知名的講師、技術顧問來擔任評審,目的是要選出新的SQL Server五虎將。不過,這比賽並不是這麼容易通過,需從上百人中一路過關斬將,才能進到決賽的10強。
而這10強,還要在最後的上機考試應付詭譎多變的題目,勝出後才能成為五虎將。而目前在鼎新電腦擔任軟體工程師的徐振煒,就是這最後獲勝五人的其中一員。
在神通電腦任職時,領教了SQL語法的威力
一開始徐振煒對於SQL(Structured Query Language)的看法,跟許多程式設計師一樣,認為它沒什麼特別之處。這是因為他們學SQL時,大多是SELECT之類的基本指令,只要將資料取出即可,所以很少著重整體執行效率。而這經常讓SQL Server效率降低,所以他一度覺得SQL的資料庫很差。
而這觀念,直到他進了神通電腦任職,並遇見一位姓汪的專案經理後,才徹底顛覆過來。徐振煒說,那時在神通電腦跟著經理進行過數個專案,每每都被他對SQL出神入化的應用技巧給嚇到。像某次專案,客戶要求他們用一個完全陌生的程式語言開發,結果經理依舊如期將專案完成。徐振煒說,雖然經理不熟悉該語言,但只要將複雜的運算交給SQL處理。如此一來,程式碼只要能執行資料庫存取的指令即可。
還有一次專案,該報表系統太複雜,需要進行多個邏輯運算,極度地耗費CPU資源。徐振煒說,那時他用Java開發,他的方式是將資料撈出來後再進行運算。但因為資料量過大,該系統跑出一張報表最快也需要10分鐘,有時還會執行失敗。但是汪經理一樣用SQL開發,一張報表卻僅花2分鐘左右就完成,這是因為他將所有的運算與邏輯都在資料庫端處理掉。而這些專案,都讓徐振煒徹底對SQL改觀,並且開始學習相關的應用。
程式設計師設計資料庫時,大多重應用面而無力兼顧管理面
雖然在神通電腦工作打開了他對SQL的眼界,並且也學習了不少經驗。但管理資料庫管理系統的實力,卻非那時突飛猛進的。真正的轉變,是之後到了歌倫比亞美語集團上班磨練出來的,因為他同時負責系統開發與資料庫維護。那時,因為徐振煒也非專門的資料庫設計師,所以他當時從程式設計師的角度切入,大多都偏重應用面,管理面通常較無力兼顧。
這在營運初期時,因為交易量小,所以負責好備份與回復的工作,大多還看不出問題。但隨著公司日漸壯大,交易量一天天的成長,他看到資料庫也跟著出問題,不是當機就是反應慢,有時甚至連問題錯在哪個環節都不清楚。
那時,他請廠商來幫忙解決。但每個人大多都給他相同的答案:「資料庫換成Oracle就全部解決了,何必這麼辛苦?」。不過,那時的徐振煒已經對SQL語法的運用,有相當程度的了解。他知道並非工具的問題,而是在於人。如果管理者對於資料庫不了解,就算換再好的資料庫也是徒然。
再加上,那時公司其他部門對於他的質疑。認為一個資料庫都搞不定,遇到問題就只會買設備解決,那對公司有何貢獻?因為這些事件的發生,讓徐振煒強迫自己去找解決的方法。
那時公司用的是SQL Server 2000資料庫系統,而他覺得下一版2005在工具與效能上,都較前者好。所以決定將資料庫轉移到SQL Server 2005上,並且用資料庫內建的監測工具去觀察資料庫,並進行效能上的調整。再加上他期間不斷看書找資料,或參加研討會與學員或講師交換心得。因為這樣,讓他逐漸累積管理資料庫的實力。
參加SQL Server的能力挑戰賽,竟然是因為獎品有XBOX
目前為現任五虎將的徐振煒,當我問他為何參加「尋找下一個SQL Server武林盟主」大會?他笑說:一開始因為獎品是他夢寐以求的XBOX 360,所以他才決定參賽,不過最主要還是想驗證自己的實力。因為在公司使用SQL Server,畢竟是閉門造車,沒有到外面闖闖也不知道自己的程度到哪。
而且,其實還有比XBOX 360更具誘惑的獎品,那就是與五位專家共進晚餐的機會。因為平時就經常參加相關的研討會,所以對這五位有基本認識,但以往都只能以學員的身分聽取授課,並沒有機會與時間能面對面交流。所以在得知有這機會後,使他對比賽更期待。
由於SQL Server 武林盟主大會是第一屆舉辦,所以賽前的準備方向上較無跡可尋,但徐振煒也並不是坐等比賽開始。像他在賽前就努力翻閱SQL Server認證考試最新的考古題,或是上微軟論壇看SQL Server最常被網友提問的問題。甚至,他還追蹤了五位專家的部落格,觀察他們最近對於SQL Server的心得或感想,並依照這大方向去猜題。
不過這樣的努力,只讓他猜中部份考題。徐振煒說,考題範圍實在太廣泛,根本預測不到會出什麼樣的題目。大多還是依靠日常的實戰經驗,才能順利通過考題。
而五虎將的比賽過程,雖然他自己很緊張,但過程其實非常輕鬆。前半比賽大多採機智問答的形式進行,而後半部比賽則採上機考。在上機考時,每位學員皆會分配到一臺沒有網路的電腦,並且連SQL Server內建的小幫手功能都移除,這目的在於驗證選手的實力。
上機考的考題則有五大項:資料庫維護、HA架構、Security、開發及其他。徐振煒說,要不是當初在歌倫比亞美語集團身兼開發及資料庫維護,他根本不可能對各項設定如此熟悉。
而我們也好奇,徐振煒成為新一代的五虎將後,對他的生活帶來什麼變化?他笑說,成為五虎將後,目前並沒有給他帶來什麼變化。真要說的話,大概就是週遭同事得知他是SQL Server五虎將後,經常會尋求他的幫忙。
而未來,徐振煒希望能繼續精進自己專業,成為一位SQL Server專家。並且希望自己,不單單成為一位顧問,而是能透過自己的專業出版相關書籍,來幫助更多的人了解與使用SQL Server。文⊙陳思翰
陪伴學習SQL Server的工具書
倍。而徐振煒在學習資料庫時,則有四本是他最喜歡的書。
第一本《資料庫系統之理論與實務》是他在學校上課時用到的書,書中對於SQL語法的說明非常詳細,讓他的基本功練的非常紮實。第二本《SQL Server 2005 Performance Tuning效能調校》則是關於SQL Server效能調校,這本書幫助他解決不少工作上的問題。而書上的範例,在他解決問題時能有個對象比較解法,順便驗證自己的能力。
而最後二本為原廠的Training Kit系列叢書,分別是《Training Kit | SQL Server 2008 資料庫開發》與《Microsoft SQL Server 2005 設計資料庫伺服器基礎架構》。這兩本徐振煒考證照時,提供了不少幫助。裡面不只有考古題,書中對於資料庫設定與說明都介紹的非常詳盡,重點是每個章節都會附上幾個範例說明,在練習時能更趨近於業界的實做。文⊙陳思翰
其他內容請參考IT-HOME 499期的雜誌內容。
參考連結:
老大,你不是說要低調的嗎==
回覆刪除我只是想將資料留在我的部落格中而已啦,粉低調了呢!!!
回覆刪除