爆栈三部曲:数据库开发大系技术栈 (300多技术点)

jopen 9年前

前言

这个数据库技术栈是我写的“爆栈三部曲”的最后一部 ;-)

 

最近我写过  .NET技术大系概览 (迄今为止最全的.NET技术栈) ,相信很多网友感叹掌握的.NET技术远没有这个技术栈里面所描述的多。

然后我还写 Web前端开发大系概览 (前端开发技术栈) ,包含大约180个技术点,做前端的都会觉得前端开发包含的技术相对繁多。

 

什么叫全栈(full stack)?简单地说就是万金油,web前端、后台、数据库、桌面应用等都能搞。

爆栈(stack overflow)来得更多些,包括但不仅限于:

  • web前端
  • 后台服务
  • 数据存储
    • 关系型数据库系统
    • NoSQL
    • 云存储
    </li>
  • 桌面应用
  • 手机App
  • ESB
  • 架构
  • 运维
  • 管理
  • 等等
  • </ul>

    问题

    大家是否想过:

    • 数据库开发究竟包含哪些技术呢?
    • 我所掌握的技术这个子集,在数据库技术大系这个超集里面占的比例是多少呢?
    • 我究竟还没有掌握多少数据库技术呢?
    • 面试的时候会考哪些技术呢?

    我之前写的.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 服务
        </li> </ul> </li>
      • Azure
      • No SQL
      • </ul>

        这个图表里的分类未必准确,相关技术也难免会有遗漏,欢迎大家指点以便不断改进。

         

        数据库技术实在太繁多限于篇幅,这里没有罗列一些技术。

         

        以下是预览图:

         

        因为内容太多,要看完整技术栈图的,可以访问GitHub。

         

        GitHub开源

        在GitHub开源了:Database Stack

         

        点击这里可以查看基于HTML5的互动式图表   (鼠标拖放/缩放)

        来自:http://www.cnblogs.com/unruledboy/p/DatabaseStack.html