爆棧三部曲:資料庫開發大系技術棧

靈感之源發表於2015-08-14

前言

這個資料庫技術棧是我寫的“爆棧三部曲”的最後一部 ;-)

最近我寫過 .NET技術大系概覽 (迄今為止最全的.NET技術棧) ,相信很多網友感嘆掌握的.NET技術遠沒有這個技術棧裡面所描述的多。

然後我還寫 Web前端開發大系概覽 (前端開發技術棧) ,包含大約180個技術點,做前端的都會覺得前端開發包含的技術相對繁多。

什麼叫全棧(full stack)?簡單地說就是萬金油,web前端、後臺、資料庫、桌面應用等都能搞。

爆棧(stack overflow)來得更多些,包括但不僅限於:

  • web前端
  • 後臺服務
  • 資料儲存
    • 關係型資料庫系統
    • NoSQL
    • 雲端儲存
  • 桌面應用
  • 手機App
  • ESB
  • 架構
  • 運維
  • 管理
  • 等等

爆棧三部曲

 

問題

大家是否想過:

  • 資料庫開發究竟包含哪些技術呢?
  • 我所掌握的技術這個子集,在資料庫技術大系這個超集裡面佔的比例是多少呢?
  • 我究竟還沒有掌握多少資料庫技術呢?
  • 面試的時候會考哪些技術呢?

我之前寫的.NET技術大系概覽 (迄今為止最全的.NET技術棧),一個簡單易懂的棧圖可以概括.NET這個技術圈裡面基礎技術:

(檢視大圖)

同樣,我之前寫的Web前端開發大系概覽 (前端開發技術棧),以下棧圖可以概括Web前端開發這個龐大的技術生態圈裡面基礎技術:

(檢視大圖)

那麼,資料庫開發是否也應該有這樣的技術棧概覽圖呢?

搜尋了很久,沒有找到一個符合我要求的“較為全面”地表述資料庫技術大系的圖表。

網際網路上來去都是那幾個簡單的,譬如這個:

或者這個:

或者這個:

 

(檢視大圖)

不過這些都遠遠沒有高度概括整個資料庫開發技術,和我需要的不一樣。

 

資料庫開發技術棧

這個技術棧,大約50個層級,大約300多個技術點:

  • RDMBS關係型資料庫系統
    • SQL Server
      • SQL OS
      • Storage Engine 儲存引擎
      • Relational Engine 關係引擎
      • Communication 通訊
      • Core Concepts 核心概念
      • Core Objects 關鍵物件
      • Language 語言
      • System Databases 系統資料庫
      • File 檔案
      • Runtime 執行時
      • Replication 同步
      • Versions 版本
      • Maintenance 維護
      • Management 管理
      • BI 商業智慧
      • Troubleshoot 除錯
      • Performance 效能
      • Services 服務
  • Azure
  • No SQL

這個圖表裡的分類未必準確,相關技術也難免會有遺漏,歡迎大家指點以便不斷改進。

資料庫技術實在太繁多限於篇幅,這裡沒有羅列一些技術。

以下是預覽圖:

(檢視大圖)

因為內容太多,要看完整技術棧圖的,可以訪問GitHub。

 

GitHub開源

在GitHub開源了:Database Stack

點選這裡可以檢視基於HTML5的互動式圖表   (滑鼠拖放/縮放)

相關文章