當前位置:吉日网官网 - 傳統故事 - NewSQL為何使傳統關系數據庫黯然失色?

NewSQL為何使傳統關系數據庫黯然失色?

傳統數據庫仍舊會有壹席之地,至於NewSQL的優勢又是什麽,簡單和大家說說:

首先關於“中間件+關系數據庫分庫分表”算不算NewSQL分布式數據庫問題,國外有篇論文pavlo-newsql-sigmodrec,如果根據該文中的分類,Spanner、TiDB、OB算是第壹種新架構型,Sharding-Sphere、Mycat、DRDS等中間件方案算是第二種(文中還有第三種雲數據庫,本文暫不詳細介紹)。

基於中間件(包括SDK和Proxy兩種形式)+傳統關系數據庫(分庫分表)模式是不是分布式架構?我覺得是的,因為存儲確實也分布式了,也能實現橫向擴展。但是不是“偽”分布式數據庫?從架構先進性來看,這麽說也有壹定道理。

“偽”主要體現在中間件層與底層DB重復的SQL解析與執行計劃生成、存儲引擎基於B+Tree等,這在分布式數據庫架構中實際上冗余低效的。為了避免引起真偽分布式數據庫的口水戰,本文中NewSQL數據庫特指這種新架構NewSQL數據庫。

NewSQL數據庫相比中間件+分庫分表的先進在哪兒?畫壹個簡單的架構對比圖:

傳統數據庫面向磁盤設計,基於內存的存儲管理及並發控制,不如NewSQL數據庫那般高效利用;中間件模式SQL解析、執行計劃優化等在中間件與數據庫中重復工作,效率相比較低;NewSQL數據庫的分布式事務相比於XA進行了優化,性能更高;新架構NewSQL數據庫存儲設計即為基於paxos(或Raft)協議的多副本,相比於傳統數據庫主從模式(半同步轉異步後也存在丟數問題),在實現了真正的高可用、高可靠(RTO<30s,RPO=0);NewSQL數據庫天生支持數據分片,數據的遷移、擴容都是自動化的,大大減輕了DBA的工作,同時對應用透明,無需在SQL指定分庫分表鍵。

  • 上一篇:哪裏更適合養老?
  • 下一篇:涼皮的制作方法
  • copyright 2024吉日网官网