數據庫的一些知識點記錄

  1. 爲什麼大公司不推薦用連表查詢而使用單表查詢
    第一:單機數據庫計算資源很貴,數據庫同時要服務寫和讀,都需要消耗CPU,爲了能讓數據庫的吞吐變得更高,而業務又不在乎那幾百微妙到毫秒級的延時差距,業務會把更多計算放到service層做,畢竟計算資源很好水平擴展,數據庫很難啊,所以大多數業務會把純計算操作放到service層做,而將數據庫當成一種帶事務能力的kv系統來使用,這是一種重業務,輕DB的架構思路
  2. 不利於寫操作。執行讀操作時,會鎖住被讀的數據,阻塞其他業務對該部分數據的更新操作(U or D)。如果涉及多個聚合函數(緩存中沒有max or min時),相當於同時鎖住多張表,不能進行讀寫,直接影響其他業務,這影響了系統的整體性能;
  3. 不利於維護。業務發生變動時,比如join中一張表改了,可能導致系統中原有的sql不可用,最終導致基於該SQL執行結果的上層顯示失敗(也意味着以往的開發工作已無效)。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章