關聯式資料庫的封建迷信

banq發表於2014-12-10
我理解這篇文章總體意思是:

現在進入多核時代,只要是執行在多核上多使用者同時讀寫都回避不了分散式和併發這兩個課題。我們不能因為我們熟悉關聯式資料庫,就對之產生100%信任,其實MySQL 這些關聯式資料庫在處理分散式 併發以及一致性上非常複雜,而且有問題在其中,會打折扣。

比如預設設定READ COMMITTED隔離級別其實並不能帶來真正高一致性,而REPEATABLE READ類似於序列序列化,拒絕平行計算,嚴重浪費多核資源。

所以,這些資料庫其實要麼是使用類似加鎖技術實現事務,這種類似Java中同步鎖等應用一樣,這種鎖的多執行緒併發很差;要麼是使用一種類似最終一致性的READ COMMITTED,也並不能給你真正高一致性。

與其接受傳統關聯式資料庫教廷式的洗腦,不如開啟這個盒子,實現Out-of-box,NoSQL是這種嘗試,DDD和CQRS也是這種嘗試,將分散式和併發主動權掌握在開發人員自己手裡,而不是打破腦袋蒐集各種關聯式資料庫資料,拜山各種關聯式資料庫牛人,這種行為才是真正封建迷信呢。

什麼是真正封建迷信?就是自己無法或不願主動研究自然的秘密,期待牛人大牛為自己指點迷路,迷信於一些牛人的神奇“智力”,缺乏對自己的自信。


[該貼被banq於2014-12-10 08:47修改過]

相關文章