「NoSQL vs RDS 資料庫哪個適合你?七大面向深入比較 【面試必問】」 架構圖:https://i.imgur.com/M87tBut.jpeg
影片連結:https://youtu.be/S8AiU1GZByE
內容摘要: 大家好,這邊分享 RDS 和 NoSQL 資料庫的優缺點,我們將從七個面向來進一步分析: 1. [設計理念] RDS 主要設計目的是確保資料「一致性」,而 NoSQL 則著重於「資料彈性」與「擴展性」。 2. [資料庫語言] RDS 使用 SQL 語言,而 NoSQL 則根據不同資料庫系統而有不同。 3. [Schema 彈性] RDS 須事先完成 Table 定義才能新增新欄位,而 NoSQL 則可彈性增加。 4. [Scaling 擴展性] RDS 於 Scaling 有著較多限制,而 NoSQL 則可更自然地進行水平擴展。 5. [Transaction 交易] RDS 有著如 Transaction 等機制來保證資料一致性,而 NoSQL 則部分有所支援而已。 6. [Consistency 一致性] RDS 能確保 Strong Consistency,而 NoSQL 則多支援 Eventual Consistency。 7. [Use Case 使用情境] RDS 適合於 Payment Processing 等銀行交易,而 NoSQL 則適合處理高併發 Real-Time Streaming 等狀況。 最後,我也將介紹 NoSQL 的四大種類:Key-Value、Document、Column-Based 和 Graph 四類, 簡介各自不同特性和應用,並將常見的 NoSQL 資料庫:MangoDB、Cassandra、AWS DynamoDB、Neo4j 進行清楚分類。 了解 RDS 與 NoSQL 的基本不同,不僅能在選擇資料庫時有更好的判斷能力,這項知識也是面試時常見的問題之一, 是個 CP 值頗高的學習知識,希望透過這精簡而清楚的影片,能幫助你快速了解! -- ※ 發信站: 批踢踢實業坊(ptt.org.tw), 來自: 98.248.69.193 (美國) ※ 文章網址: https://ptt.org.tw/Soft_Job/M.1719818392.A.FDF
holebro: 圖做得很漂亮 07/01 16:19
cjtv: 謝 07/01 16:35
wizozd84070: 謝影片 07/01 16:58
marshmallowB: 芒果DB可愛www 07/01 17:45
MoonCode: 水平擴展麻煩死了 07/01 19:11
superpandal: 現在來看應該是NoSQL比較好 還比較容易做快取 甚至純 07/01 19:58
superpandal: 文字查看資料都方便很多 mongo沒怎麼用過 不太知道 07/01 19:59
freeloop: 謝謝分享:) 07/01 22:38
GooglePlus: Mongo啦 07/01 23:50
oopFoo: 現在還有人推NoSQL?99%的情況選Sql才對吧。這篇重點沒抓到 07/02 06:11
ChungLi5566: 沒有哪個好 看情況用 07/02 08:30
Hitmear: 光圖就錯,cassandra是wide column 底層是實作更接近row 07/02 13:00
Hitmear: base,不要亂教 07/02 13:00
Lomonosov: 我以為關聯式資料庫是RDBMS? 07/02 17:30
alan3100: rdb還是為大宗 nosql有需求在用 07/02 18:48
pig2014: 樓上正確,我自己也嘗試想用nosql過,想說炫炮一下。但 07/05 09:28
pig2014: 是根據我多年design 經驗,還是發現搞個rds有jsonb的tab 07/05 09:28
pig2014: le才合理。這整種討論的盲點在於,應該提供實務上成功案 07/05 09:28
pig2014: 例使用的比例。如果最後出來的數據是rds 95% v nosql 5% 07/05 09:28
pig2014: ,那會讓很多裝逼仔少走一點冤枉路 07/05 09:28
superpandal: SQL是種過重的應用 凡事上SQL是很糟糕的 還有不少的 07/06 00:14
superpandal: 缺點 公司用什麼管不著 個人用絕對不想跟SQL扯上關係 07/06 00:15
guanting886: 我覺得最傻的還是選邊站的開發者 這些系統本來就有 07/06 20:55
guanting886: 他們各自擅長的應用場域 你分誰差還誰優真的是假議 07/06 20:55
guanting886: 題 07/06 20:55
superpandal: 有能力可以選邊站 刻一刻新東西也不是什麼大不了 07/07 13:45
chris810314: 如果NoSQL這麼爛...國外早就放棄了 07/07 19:32
chris810314: 看應用場景選擇合適技術才是正解 07/07 19:32
alan3100: 跟槓精認真就輸了 07/07 19:34
bejoe: NOSQL怎麼是著重彈性呢? 錯得離譜啊!!! 07/10 13:39
bejoe: nosql就是對一致性妥協來換取效能而已啊! 07/10 13:40
bejoe: 所以要用哪一種,就看你的需求中效能和一致性的平衡 07/10 13:40
bejoe: 這種東西不用選邊站 是要看需求啊!!! 07/10 13:41
superpandal: NoSQL當然重彈性 儲存的資料可隨意即是彈性 不需要如 07/10 16:59
superpandal: SQL改column以及其類型就是爽 07/10 17:00
superpandal: 當然如果postgresql用json也是差不多 但那只是一個 07/10 17:01
superpandal: column而已 體驗不同 07/10 17:02
come: 你們所講的隨意性是nosql為了效能犧牲的功能,他從來不是優 07/10 23:59
come: 點,只是一個特點 07/10 23:59
superpandal: 不是 less is more 07/11 23:45