複製鏈接
請複製以下鏈接發送給好友

數據庫工程師

鎖定
數據庫工程師(Database Engineer),是從事管理和維護數據庫管理系統(DBMS) 的相關工作人員的統稱,屬於運維工程師的一個分支,主要負責業務數據庫從設計、測試到部署交付的全生命週期管理
中文名
數據庫工程師
外文名
Database Engineer
類    別
一種職業
相關詞條
數據庫運維運維工程師

數據庫工程師簡介

數據庫工程師的核心目標是保證數據庫管理系統的穩定性、安全性、完整性和高性能。
在國外,也有公司把數據庫管理員(Database Administrator,簡稱DBA) 稱作數據庫工程師,兩者的工作內容基本相同,都是保證數據庫服務7*24小時的穩定高效運轉,但是需要區分一下數據庫工程師和數據庫開發工程師(Database Developer):
(1)數據庫開發工程師的主要職責是設計和開發數據庫管理系統和數據庫應用軟件系統,側重於軟件研發
(2)數據庫工程師的主要職責是運維和管理數據庫管理系統,側重於運維管理

數據庫工程師主要職責

數據庫工程師在不同的公司不同的發展階段有着不同的職責與定位。一般意義上的數據庫工程師只是負責數據庫的運營和維護,包括數據庫的安裝、監控、備份、恢復等基本工作,但是廣義上的數據庫工程師職責比這個大得多,需要覆蓋產品從需求設計、測試到交付上線的整個生命週期,在此過程中不僅要負責數據庫管理系統的搭建和運維,更要參與到前期的數據庫設計,中期的數據庫測試和後期的數據庫容量管理性能優化
對於初創公司,數據庫工程師的工作可能由運維工程師來兼任,從申請域名開始,到服務器上架,配置網絡設備,部署操作系統,安裝數據庫,設計和部署監控,防止漏洞和攻擊等等。而大型公司對數據庫工程師工作的要求越來越高,以下從各個維度來看數據庫工程師工作的職責。
數據庫工程師負責了業務數據庫從設計、測試到部署交付的全生命週期管理,各個階段的職責包括:
1. 產品發佈前
這個階段數據庫工程師的職責是數據庫准入,主要包括:
(1)產品的業務熟悉;
(2)產品數據庫設計評審:包括架構的合理性評估,存儲容量和性能是否滿足需求,是否需要緩存,是否需要冗餘備份等,同時需要提供數據庫schema設計的合理性建議以使產品能夠滿足上線發佈並穩定運行的基本要求;
(3)資源評估,包括所需的服務器資源、網絡資源以及資源的分佈等,同時把關產品對資源預算申請的合理性,控制服務成本;
(4)資源就位,將申請的服務器及基礎環境/域名準備就位。
2. 產品發佈
這個階段數據庫工程師負責數據庫發佈的具體工作,將具體的數據庫安裝部署和初始化完成後並對外提供服務。對於已在線數據庫的升級也屬於發佈範疇,這個時候的產品發佈一般要保障在線發佈,在不中斷對外服務的情況下完成數據庫的升級。對於大型複雜的變更也存在中止服務發佈完成後再重新提供服務的情況,但這種情況需要數據庫工程師通過儘可能的技術手段來避免。
3. 產品運行維護
這個階段的工作重點包括:
(1)監控:對數據庫服務運行的狀態進行實時的監控,包括數據庫會話、數據庫日誌、數據文件碎片、表空間監控、用户訪問監控等,隨時發現數據庫服務的運行異常和資源消耗情況;輸出重要的日常數據庫服務運行報表以評估數據庫服務整體運行狀況,發現數據庫隱患;
(2)備份:制定和實施數據庫備份計劃,災難出現時對數據庫信息進行恢復,維護適當介質上的存檔或者備份數據。對數據庫的備份策略要根據實際要求進行更改,數據的日常備份情況進行監控。
(3)安全審計:為不同的數據庫管理系統用户規定不同的訪問權限,以保護數據庫不被未經授權的訪問和破壞。例如,允許一類用户只能檢索數據,而另一類用户可能擁有更新數據和刪除記錄的權限。
(4)故障處理:對數據庫服務出現的任何異常進行及時處理,儘可能避免問題的擴大化甚至中止服務。這之前數據庫工程師需要針對各類服務異常,如機房/網絡故障、程序bug等問題制定處理的預案,問題出現時可以自動或手動執行預案達到止損的目的。
(5)容量管理:包括數據庫規模擴張後的資源評估、擴容、機房遷移、流量調度等規劃和具體實施。
產品對外提供服務最重要的一點是用户體驗,用户體驗中非常重要的是產品的可用性響應速度。而如何用最合理的資源支持產品提供高可用和高速度的用户體驗,這也是數據庫工程師的重要職責。

數據庫工程師技術分工

產品的整個生命週期裏數據庫工程師的職責重要而廣泛,這催生了各個縱向的運維技術方向,主要包括:
  • 數據庫監控技術:包括監控平台的研發、應用,服務監控準確性、實時性、全面性的保障
  • 數據庫故障管理:包括服務的故障預案設計,預案的自動化執行,故障的總結並反饋到產品/系統的設計層面進行優化以提高產品的穩定性
  • 數據庫容量管理:測量服務的容量,規劃服務的機房建設,擴容、遷移等工作
  • 數據庫性能優化:從各個方向,包括SQL優化、參數優化、應用優化、客户端優化等,提高數據庫的性能和響應速度,改善用户體驗
  • 數據庫安全保障:包括數據庫的訪問安全、防攻擊、權限控制等
  • 數據庫自動部署:部署平台/工具的研發,及平台/工具的使用,做到安全、高效的發佈服務
  • 數據庫集羣管理:包括數據庫的服務器管理、分佈式集羣管理等
  • 數據庫模型設計:包括數據庫邏輯和物理模型的設計,如何實現性能最優,架構可擴展,服務可運維等
等等,凡是關係到數據庫質量、效率、成本、安全等方面的工作,及涉及到的技術、組件,都在數據庫工程師的技術範疇裏。做好每一個技術方向都對履行數據庫工程師職責起到積極的作用,對業務的發展發揮關鍵影響。

數據庫工程師技術能力

數據庫工程師以技術為基礎,通過技術保障數據庫提供更高質量的服務。數據庫工程師工作的職責及在業務中的位置決定了數據庫工程師需要具備更加廣博的知識和深入的技術能力。在數據庫環境的管理與維護中,技術任務可歸結成許多不同的分類。下面列出了一名數據庫工程師應掌握的一些技能:
(1)理解數據備份/恢復與災難恢復
恢復已損壞的數據庫是每一個數據庫工程師應掌握的最重要的技能。數據庫工程師需要完全理解數據庫所有可能的備份與恢復方法,以及不同備份方法與不同恢復策略的對應關係。此外,數據庫工程師還需要與業務部門合作,一起確認業務需求,明確用户能夠容忍的數據丟失底線。此外,業務用户還需要確定在系統故障情況下,他們的業務能夠維持多長時間。理解這些需求可以幫助數據庫工程師開發出一個滿足業務用户要求的備份/恢復方法。一個優秀的數據庫工程師要定期測試備份與恢復流程,保證他們有能力恢復業務數據,滿足企業所規定的業務數據丟失與恢復要求。
(2)工具集的使用
所謂工具集,指的是一組用於執行不同數據庫工程師任務的腳本。這個工具集應該包含不同的小代碼片段,它們可以快速診斷問題或執行一個特定的任務。這些工具腳本應該按數據庫工程師的活動類型歸類,如備份、索引維護、性能優化、容量管理等。由於總是會執行新任務、發現新問題或找到其他人開發的好用腳本,因此一個優秀的數據庫工程師會不斷地給這個工具集增加新腳本。此外,他還應該瞭解網上哪裏能夠找到一些免費的工具和腳本。一個好的數據庫工程師知道什麼時候可以利用其他人編寫的腳本,從而節省自己的時間和改進自己的工具集。
(3)知道如何快速尋找答案
數據庫每天會面臨各種各樣故障的挑戰,從硬件到網絡,從性能壓力到程序bug,數據庫工程師都要從容應對,一一排除。即使是數據庫大牛,也不可能是無所不知的,因此每個數據庫工程師一方面需要不斷修煉自己,積累操作系統、網絡、硬件、存儲系統分佈式計算等理論基礎,另一方面還要有快速尋找新問題解決方法的能力。如果一個數據庫實例不能按預期方式運轉,那麼快速尋找新問題的解決方法也是一個重要能力。一個好的數據庫工程師知道如何快速地在網上查找一個未知問題的解決方法。此外,他們也可能已經知道了一些非常不錯的網站,也知道業界專家會提供一些好建議,同時知道什麼時候應該忽略一些不好的建議。你可能想象不到,確實有一些建議不值得參考。
(4)如何監控和優化數據庫性能
對於任何數據庫產品,性能都尤其重要,它會直接影響產品的響應速度和用户體驗。對於一個數據庫工程師來説,性能優化一般需要佔用50%的工作時間,因此數據庫工程師需要知道如何監控和優化數據性能。
以SQL Server舉例,性能是一個關鍵的問題,因此數據庫工程師需要知道如何修復故障和監控性能問題。有許多第三方性能監控工具可以幫助數據庫工程師優化性能。如果數據庫工程師只使用第三方工具,而不會使用SQL Server自帶的原生工具來監控性能,那麼相信很快就會出現問題。雖然使用第三方工具來監控性能也很不錯,但是數據庫工程師一定要理解SQL自帶的一些原生工具,如SQL Server Profiler、Database Engine Tuning Advisor、Dynamic Management Views、系統/擴展的存儲過程、Extended Events等。許多第三方工具實際上在使用這些底層的原生工具。因此,理解這些自帶的原生工具將有利於增強數據庫工程師使用第三方工具的經驗。
(5)研究新版本
在技術領域中,沒有什麼是一成不變的。每隔兩三年,主流數據庫廠商都會發佈一個大版本的更新。數據庫工程師應該緊跟新版本所作的修改,它們可能有許多變化方法,最好的方法是遲早介入這個過程。測試版開放後馬上下載和安裝,儘快掌握第一手使用經驗。一名好的數據庫工程師總是走在學習排頭兵,總是會第一時間安裝和測試新版本。這樣他們就可以儘早理解新特性,然後提出一些合理的新建議,幫助組織更好地利用新版本數據庫。
(6)理解代碼最佳實踐方法
數據庫工程師應該瞭解如何編寫高效的代碼。有許多糟糕的編碼實踐方法會導致拙劣的性能。一名好的數據庫工程師要能夠理解和識別這些糟糕的編碼實踐方法,知道如何修改這些爛代碼,讓它們變成高效代碼。此外,他們還要記錄下寫代碼的最佳實踐方法,並且將這些實踐方法分享給其他人。
(7)持續不斷地學習
數據庫及其組件涉及面非常廣。數據庫工程師很難理解一個技術的方方面面。數據庫工程師需要持續學習如何管理數據庫。這個學習過程有很多方法。其中之一就是參加正式培訓。但是,並非人人都有這樣充裕的時間和金錢,也並非人人都能夠放下手頭工作專門出去參加正式的培訓。但是,還有許多其他方法可以獲得培訓,而且大多數還是免費的。一名好的數據庫工程師一定要訂閲一些定期發佈數據庫新技巧和新文章的社區網站。此外,他還應該加入一些用户組織,可以在週末參加一些當地的免費沙龍活動。
(8)數據庫安全性
安全性是一個熱門話題。數據庫工程師應該完全掌握如何實現數據庫的安全訪問。他們應該理解操作系統身份驗證和數據庫身份驗證的區別,以及它們各自的使用場合。他們應該理解如何使用數據庫角色來管理不同類型用户的安全配置。他們應該理解連接數據庫的端口與協議。此外,他們還應該理解如何加密整個數據庫,或者加密一個數據庫中一個表的某一個字段,同時理解關於加密數據的各種問題。
決定數據庫性能的一個關鍵問題是數據庫設計。數據庫工程師需要理解關於數據庫設計的各個方面。他們要能夠理解設計好壞的區別。他們需要理解為什麼使用正確的外鍵約束、主鍵、檢查約束和使用數據類型能夠保持數據庫的數據完整性和實現高效的數據查詢與更新。
(10)索引設計
數據庫索引是提高應用程序檢索和更新數據速度的重要環節。數據庫工程師需要知道索引的工作原理。他們應該知道聚簇索引非聚簇索引的區別,知道這些索引的物理存儲方式。數據庫工程師應該知道如何在執行計劃中使用這些索引。他們應該理解如何找到索引的使用統計、理解索引碎片及如何發現丟失的索引。他們應該知道如何維護索引,以及索引統計信息對於查詢引擎的重要作用。
(11)容量監控與規劃
數據庫往往要使用大量的資源,包括CPU、內存、I/O及磁盤空間。數據庫工程師應該理解如何監控數據庫所需要的不同主機資源的用量。他們應該能夠理解這些資源在不同時間的使用情況,以及利用歷史使用數據來規劃未來的容量需求。在監控過程中,數據庫工程師應該能夠預見到容量規劃會在將來什麼時候出現問題,然後採取必要的措施保持數據庫不會因為容量限制而出現中斷。
(12)數據庫許可證
不同的產品有許多不同的許可證授權方式。而且,同一款產品本身又有許多不同的版本。數據庫工程師應該理解所負責的數據庫版本的不同授權模式。他們應該能夠提供指導如何通過合理購買授權來減少數據庫總擁有成本,以及如何合理利用授權方法來降低未來版本的升級成本。
(13)儘可能實現自動化
數據庫工程師每天都需要執行許多的日常任務。其中一些任務需要每天執行,而另一些則每週、每月或每年執行。一名好的數據庫工程師需要理解如何高效地安排自己的時間。其中一種方法是建立工作流程,這些日常任務的自動執行。通過實現日常任務的自動化執行,數據庫工程師就可以用更多的時間去關注於數據庫環境管理中遇到的嚴重問題。
你具備的特質越多,作為數據庫工程師的你就越優秀。成為一名成功數據庫工程師的關鍵是不斷地學習與提高,努力去掌握更多關於如何管理和維護數據庫環境的知識。

數據庫工程師性格要求

很多時候管理人員都忽視了數據庫工程師的個性特點,他們只關注數據庫工程師的技術能力。實際上,上面談到的每個職責都意味着:數據庫工程師需要跟各種人員打交道,這些人員可能是銷售商、用户、開發人員或者管理人員。這説明數據庫工程師必須具有下面的個性特點:
  • 自信心:足夠的自信心能夠幫助數據庫工程師在重要緊急時刻果斷下決定,而不是不知所措地看着事故發生
  • 好奇心:幾乎所有的數據庫系統都在不停地更新,但並不是所有的更新都有技術文檔,對於優秀的數據庫工程師來説,好奇心是必須的。沒有好奇心和求知慾的數據庫工程師總是等待別人來告訴他們答案。
  • 自我驅動:自我驅動對每個人都是很重要的,對數據庫工程師尤其如此。數據庫工程師要能想辦法使問題出現,而不是等待問題的出現。自驅力強的數據庫工程師常常設法取得或者自己寫一些必要的腳本來監控包括數據表大小(Table Size)、表空間使用(Tablespace Usage)等項目,這些項目如果被忽視,他們將遇到麻煩。
  • 堅韌的意志力和沉着的心態:數據庫工程師常常會碰到棘手的問題。尋找答案是一個需要堅韌意志力、可以經受摔打的個性特點。同時面對緊急情況時要能處亂不驚,保持平和的心態冷靜處理問題。
  • 工作認真細緻,勤于思考:注意細節的數據庫工程師能夠深入瞭解數據庫的內核,並能理解視圖、表之間的關係,這點非常重要
  • 時間管理能力:數據庫運維的工作非常繁瑣,因此需要將碎片化的時間充分利用起來。
  • 良好的溝通能力、具有團隊合作精神:數據庫工程師的工作需要跨部門、跨工種接觸很多工程師,善於溝通、團隊協作能夠起到良好作用

數據庫工程師職業等級

數據庫工程師的等級並不是很嚴格的。按照對數據庫的掌握情況,可以分成三個等級:初級Primary、中級Intermediate和高級Senior。
初級數據庫工程師又稱為DBBS,是英文Database Baby Sitter的縮寫。初級數據庫工程師常常是兼職的,他們往往同時是程序員或者兼任其他的工作。初級數據庫工程師往往把個人簡歷寫得很棒,參與了很多和數據庫有關的項目或工作。但是,這些項目或者工作往往是:第三方軟件供應商已經安裝並配置了數據庫,他們只做一些監控的工作。他們能處理一些簡單的問題,但大多數時候他們嚮應用軟件供應商求救。初級數據庫工程師更喜歡圖形化的數據庫管理或者監控工具,他們喜歡Access這樣的桌面數據庫簡單易用,並把這些小型數據庫的經驗簡單地應用到大型數據庫相關的工作中。
初級數據庫工程師是最好區分的。而中級數據庫工程師和高級數據庫工程師就不太好區分。他們的差別在於經驗的不同和個性特點、能力方面的差異。中級數據庫工程師比較多,他們可以勝任高級數據庫工程師的大部分工作,包括:
(1)數據庫安裝;
(2)數據庫配置和管理;
(3)權限設置和安全管理
(4)監控和性能調節;
(5)備份和恢復
(6)解決一般的問題;
中級數據庫工程師往往從業一年左右,熟悉某種操作系統環境下的數據庫。因為對中級數據庫工程師來講,Windows NT和Unix是有很大差別的。中級數據庫工程師對SQL比較熟悉,他們自己購買了幾本數據庫方面的書籍,並深入鑽研。中級數據庫工程師往往同時兼任數據庫程序員,他們的工作對性能、穩定性、安全性的追求基本上不是很高,往往配合高級數據庫工程師做一些例行工作。
高級數據庫工程師在國內是非常少的。他們能夠熟練閲讀數據庫方面的英文資料,並且都熟悉很多種操作平台下的幾種大型數據庫。他們知道各種不同數據庫在不同環境下的優勢和劣勢,並能在數據庫平台和數據庫環境的選擇方面做出決策。他們一般通曉系統架構和數據庫設計,並能對數據庫進行各種級別的優化。高級數據庫工程師一般都配有助手,他們更偏向做決策和計劃。高級數據庫工程師往往在銀行業保險業、在線交易等對穩定性、安全性、性能都要求比較高的關鍵業務處理領域大顯身手。
很多時候,是否取得數據庫專家認證證書並不是很重要。很多數據庫廠商的培訓只要你去了都會獲得證書。有很多的公司提供商業化的培訓,他們的服務質量也有好有劣。所以證書並不是特別地有意義。

數據庫工程師系統介紹

(1)最流行的開源數據庫系統——MySQL
在 WEB 應用方面 MySQL 是最好的 RDBMS (Relational Database Management System,關係數據庫管理系統) 應用軟件之一。國內外很多互聯網公司都在廣泛使用着MySQL作為關係型存儲的主要數據庫系統,比如Facebook百度阿里騰訊等。MySQL的開源特性,豐富的社區支持,讓它成為入門級數據庫工程師的首選。MySQL分為社區版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL 作為網站數據庫。由於其社區版的性能卓越,搭配 PHPApache/Nginx 可組成良好的開發環境
(2)最“容易”的數據庫系統——Microsoft SQL Server
如果你打算做一個數據庫工程師,建議你選擇那些比較流行的數據庫系統。這意味着你將有更多的就業機會、交流和培訓機會,而且,流行自有流行的理由,你可以因此省心很多。當然,就業競爭壓力也比較大。一般的入門者選擇Microsoft SQL Server,這是非常適合中小型企業的數據庫系統,熟悉Access的讀者很容易就能初步使用Microsoft SQL Server,成為一個DBBS。
Microsoft SQL Server 7.0的報價,5用户版1399美金,增加用户時,127美金每用户。
(3)最“難”的數據庫——無冕之王Oracle
如果你有機會接觸到Oracle,那可是個好機會。Oracle是目前最看好的數據庫廠商,由於其強大的功能和可配置、可管理能力,Oracle 數據庫工程師的薪資一般比其他數據庫管理員的薪資要高。而且,Oracle在大中型企業的關鍵應用也更加普遍了。Oracle可以運行在Windows NT、Sun SolarisLinux等平台下。很多情況下要求你不僅僅熟悉NT,還要你熟悉Unix;而且Oracle不太友善的界面和成箱的Oracle產品資料可能也是一個障礙。
Oracle 8i標準版的報價,如果運行在Windows NT,附帶JServer和interMedia,支持5個併發用户,報價是3925美金每CPU。增加併發用户時,785美金每用户。增加附加的命名用户時,392.5美金每用户。
(4)數據庫系統的貴族-IBM UDB/DB2
作為30年數據庫研究的成果,IBM DB2確實稱得上“數據庫系統的貴族”。不管是小型商業系統,還是大的銀行系統,用DB2都是可以高枕無憂的。當前推出的新版DB2 6.1,管理和調節工具更加卓越和便於使用。DB2 可以運行在Intel架構上,也可以運行在IBM的S/390大型計算機上。如果你所在的行業對IBM的機器特別地稱道,建議你學習IBM DB2。
DB2有兩種版本:工作組版和企業版。工作組版999美元每服務器,外加249美元每個併發用户。而企業版是12500美元每個CPU,不限併發用户數量
(5)以Java為中心的數據庫-Sybase Adaptive Server Enterprise(ASE) 12.0
即將發佈的Sybase ASE 12.0,直接面向Java程序員。這種以Java為中心的數據庫系統,為那些準備在Java平台下構建企業應用的企業來説,將是最好的選擇。但是ASE稱不上一個數據庫領域的領先者,儘管相對於它以前的版本已經改進很多,並支持多個CPU和更多的併發,還有很多的新的特性。但Sybase的風光似乎已經不再。

數據庫工程師行業競爭力

(1)薪酬競爭力
  • 影響因素:經驗和能力決定數據庫工程師的等級,熟悉的數據庫系統決定數據庫工程師的領域,個性特點和潛力決定你的升值空間。
  • 縱向對比:數據庫工程師作為專項領域的高質量人才,薪酬競爭力較高,市場需求旺盛,尤其是中高階數據庫工程師,往往緊缺程度高於軟件研發工程師。
  • 第三方薪酬調查報告,僅供參考:
《2013年數據庫工程師薪酬調查報告 [1] 
《Database Administrator Salary [2] 
  • 數據庫運維行業的市場價值:參考ITOM(IT Operation Management) 2013年的市場規模是190億美金
  • 人員需求:由於業務規模較大,中大型公司比較緊缺中高階數據庫工程師,而初創公司由於其新生的業務特點,比較緊缺初級和中級數據庫工程師。

數據庫工程師職業發展

數據庫作為整個系統的一部分,它的表現直接受服務器、操作系統、存儲、網絡、應用程序中SQL語句的質量、數據庫設計的質量、以及其它諸多因素的影響,這些因素加在一起非常複雜,經驗起着非常重要的作用。因此一個好的數據庫工程師除了知識作為基礎,經驗的多寡、見識的薄廣,往往決定了是否合格與優秀。
優秀的數據庫工程師不僅關心自己運維的數據庫系統的原理和發展,而且緊跟業界數據庫前沿技術,並關注數據庫領域的頂級會議。其中包括國際著名的數據庫三大會議SIGMOD、VLDBICDE,還有知名數據庫公司Percona主辦的Percona Live和Oracle主辦的Open World,以及國內知名的數據庫工程師盛會中國數據庫技術大會(DTCC)等。
從另外一個角度説,數據庫工程師工作領域對實踐經驗和獨立工作能力要求較高,沒有經過大量的動手實踐是很難勝任數據庫工程師相關工作的 [3] 
正是由於上述原因,其職場現狀是數據庫工程師職位不易進入,而用人單位很難找到合適的從業人員,人員缺口非常大。
也正是由於上述原因,隨着工作年限的增長,數據庫工程師的經驗在增加,就像醫生一樣,其價值會越來越高,可以逐步成長為資深數據庫工程師、系統架構師信息主管CIO)等等,而不會出現許多軟件開發從業人員在一定年齡後面臨的轉行問題。
另外,從職業前景看,從事數據庫工程師有着更多的職場機遇 [4]  。一般而言,系統中的軟硬件都是IBM、HP、Oracle等業界一流廠商提供的,在與廠商談判、合作、測試、實施、維護、優化等等過程中,會產生許多極佳的職場機遇,這一點是從事開發工作很難比擬的。
從數據庫工程師的工資統計數據看,隨着工作經驗的積累,數據庫工程師工資的增長幅度遠大於其它的計算機方向。
從工作的穩定性上看,系統的複雜性和經驗的重要性已經決定了數據庫工程師職位的不可替代性。
從知識的積累、更新和替代角度看,數據庫的根基始終沒變,變的是不斷增強的功能和不斷擴展的應用範圍。因此,在不同時期所學的知識和獲得的經驗是疊加和累積的關係,而不像IT許多其他職業方向那樣“唯一不變的是變化”,其知識是東風壓倒西風還是西風壓倒東風的關係。
因此, 數據庫工程師職業是一個高挑戰和高回報的職業,有一定能力的和聰明的技術人員應該挑戰自我,進入這個被二十多年事實不斷證明的越來越有前景的職業 [5] 
參考資料