[Day2] 讀 RDBMS 課程 2019 — Misconceptions about RDBMS

By Triton Ho

R4 Cheng
Aug 19, 2023

At Lesson 0: Page 28 — End

Notes

  • NoSQL 正是發明來解決像 facebook 這種巨型系統的東西
  • Line 是用 HBase (2019)
  • 在中小型資料庫/只面對地區性用戶的系統, RDBMS 的可信度遠大 NoSQL
  • 用 rabbitMQ 來做 IPC (inter process channel)

Misconceptions about RDBMS

  • 24x7 是指沒有計劃外的 downtime ,不是沒有 downtime
  • RDBMS 也能 flexible schema,但是中小型 DB (eg. 總數據量 <100GB) 不應該使用之
  • RDBMS 可能比 NoSQL 「慢」,但是他卻多做了很多事。 Eg. Support multi-row, multi-statement atomicity
  • 不應該用 Database 存放 log => 小型系統使用 txt 檔案取代之、大型系統使用 logging software (eg. Amazon Kinesis)

ORM

  • 在一般 OLTP 系統 (Online Transaction Processing),有不少的場合都是讀取/建立/改動/刪除單一的物件 (Object)
  • 良好的 DB Design,大部分的 Model Class 都是對應單一的 table
  • 若好好設定 table 對應的 class 、 class 的 attribute 對應的 column 、 class 的 primary key …等 , ORM 能自動產生出 select/insert/update/delete 的 SQL => 加速開發時間,減少人為出錯
  • 善用切碎 statement 來達到目的

--

--

R4 Cheng
R4 Cheng

Written by R4 Cheng

「0」が過去で「1」が未来「今」は何処にもない

No responses yet