認識RDBMS與NOSQL

Share This Post

關聯式資料庫(RDBMS)

即資料庫是由多個資料表(Table)所組成,並且可以將資料表關聯起來,去連結多個資料表之間的關係。
常見的關聯式資料庫有:MySQL、SQL Server、SQLite等

  • 使用表格儲存資料:關聯式資料庫將資料儲存在表格中,並且每個表格都有唯一的名稱和欄位定義,以及每個欄位的資料型別。
  • 使用 SQL 語言:關聯式資料庫使用 SQL(Structured Query Language)語言來執行資料操作,包括查詢、插入、更新和刪除等。
  • 支援 ACID 特性:ACID 是指 Atomicity、Consistency、Isolation 和 Durability,關聯式資料庫支援這些特性,確保資料的完整性、一致性和持久性。
  • 容易維護和管理:關聯式資料庫通常具有良好的管理工具和優秀的可擴充性,可以進行備份、還原、優化和調整等操作,並且可以輕鬆地將資料庫從一個環境轉移到另一個環境中。
  • 適合複雜的資料:由於關聯式資料庫支援多表格之間的關聯,因此非常適合儲存和查詢複雜的資料,例如企業的會計資料、醫療記錄、電子商務訂單等。

非關聯式資料庫(NOSQL)

跟關聯式資料庫不一樣,不需要定義 schema、沒有關聯的關係。
常見的非關聯式資料庫有:MongoDB、Cassandra、Redis、Couchbase等

  • 資料庫由 collection 組成
  • 採用分佈式架構,可以輕鬆地擴展到多個節點,以應對大量數據的處理。
  • 非關聯式資料庫通常使用鍵-值對的方式進行數據存儲,因此讀寫速度快,而且不需要像關聯式資料庫那樣進行複雜的查詢。
  • 可以存儲各種類型的數據,包括文本、圖像、視頻等。

如何選擇關聯式資料庫與非關聯式資料庫

關聯式資料庫適用於業務資料,其中資料結構穩定,高度規範化,需要嚴格的資料的一致性和完整性,並且需要復雜的查詢操作。例如,金融系統、ERP系統等。

非關聯式資料庫適用於非事務性資料,其中數據結構可以是非結構化、半結構化或多種結構,需要分佈式處理、高可用性和橫向擴展。例如,社交媒體、大數據、物聯網應用等。

訂閱研究文章

Get updates and learn from the best

More To Explore

Scroll to Top

hurry up !

軟體工程師培訓

限時免費報名中

藉由與「真實世界軟體專案」相同的技術、工具與開發流程,化簡成與商業機密無關、門檻較低更容易上手的「模擬專案」,讓你有機會在職場前輩的陪伴下,完成真槍實彈的練習,動手解決真實的問題,快速累積個人的經驗與作品,而不只是「學習技術」而已。