閱讀387 返回首頁    go 阿裏雲 go 技術社區[雲棲]


18項火眼金睛 - 評估一款數據庫

標簽

PostgreSQL , 數據庫評估


背景

不論你是投資方、還是CTO或者架構師,如果你需要在非常核心的場合選擇一款數據庫產品,或者你要投資一個數據庫產品或團隊,本文一定會為你提供一個很好的指導。

現在的數據庫分類在dbranking上已經分得很細:

https://db-engines.com/en/ranking

Complete ranking  
Relational DBMS  
Key-value stores  
Document stores  
Graph DBMS  
Time Series DBMS  
RDF stores  
Object oriented DBMS  
Search engines  
Multivalue DBMS  
Wide column stores  
Native XML DBMS  
Content stores  
Event Stores  
Navigational DBMS  

本文主要評估的是關係數據庫,關係數據庫又分:

OLTP:在線事務處理  
  
OLAP:分析型數據庫  
  
HTAP:混合數據庫(既能支持在線事務,又能支持在線分析)  

評估數據庫產品的18項火眼金睛

1、SQL兼容性

SQL語法(多維分析、窗口、子查詢、CTE、DDL事務、觸發器、規則、事件觸發器)

並發控製能力

事務隔離級別支持

支持的數據類型

支持的操作符

支持的索引

客戶端語言接口

服務端編程接口

分區表能力

管理GUI,管理接口,管理函數,管理視圖等

2、優化器能力

基於成本的執行計劃

基於遺傳算法的執行計劃

多少種數據訪問方法

支持哪些SQL 重寫規則

支持哪些執行節點並行

支持哪些JOIN算法

支持哪些排序算法

3、擴展能力

並行能力(單機並行、多機並行)

存儲能力(行存、列存儲、壓縮、堆存、樹存)

擴展性 - scale up 能力

擴展性 - scale out 能力

數據複製能力

4、運算能力

向量計算

JIT

FPGA、GPU 計算擴展能力

5、內核擴展能力

內核擴展能力(自定義UDF,IDX,OP,TYPE,窗口,聚合,外部數據源,PL擴展接口)

6、可靠性、可用性、穩定性

多副本能力

備份能力

恢複能力(時間點恢複、並行備份恢複等能力)

容災能力

越界回退能力

HA能力

崩潰恢複能力

7、安全性(認證方法、加密類型、透明加密類型、透明加密存儲)

8、其他特性

(流計算、圖計算、GIS能力、推薦算法、時序、NOSQL、搜索、等)

估值

9、內核開發語言、模型、平台兼容性、產品軟肋

C,

線程模型、進程模型、

Linux,unix, windows, ...

有哪些產品設計、架構方麵的軟肋。

10、代碼成熟度、完成度

11、roadmap

12、主要代碼貢獻者

13、性能

tpc-b, tpc-h, tpc-ds, tpc-c, sysbench(oltp), TCO

14、應用場景、案例

15、生態

商業生態:高校、數據庫廠商、技術服務廠商、雲廠商、用戶群體、應用開發商、語言生態、投資方生態

社區狀態

社區活躍度

與其他生態的融合能力,hadoop, spark, ....

16、未來發展潛力

17、成本

學習成本

開發成本

運維成本

管理成本

18、開源許可

開源許可很重要!!!

參考

https://db-engines.com/en/ranking

https://www.postgresql.org/docs/10/static/index.html

https://wiki.postgresql.org/wiki/PostgreSQL_derived_databases

最後更新:2017-10-28 23:04:03

  上一篇:go  PostgreSQL 空間獨立事件相關性分析 二 - 人車擬合
  下一篇:go  PostgreSQL 在鐵老大訂單係統中的schemaless設計和性能壓測