簡體   English   中英

NoSQL數據庫中的文檔是SQL數據庫的表嗎?

[英]Are documents in NoSQL databases what a table is for a SQL database?

我是整個后端場景的新手,我試圖找到哪種數據庫最適合我,我需要獲取什么文檔。 NoSQL數據庫中的文檔是SQL數據庫的表嗎?

僅特定的NoSQL數據庫引擎使用文檔存儲信息,它們被稱為NoSQL 面向文檔的數據庫引擎。 MongoDB是最著名的NoSQL面向文檔的數據庫引擎之一。 它們還是其他以不同方式存儲數據的NoSQL引擎,例如使用鍵值結構的Cassandra

NoSQL數據庫中的文檔是SQL數據庫的表嗎?

考慮到面向NoSQL文檔的數據庫,這些文檔與SQL數據庫表的行非常相似。 相反,SQL數據庫表類似於文檔集合。 無論如何,它們之間有很多差異。 例如:

  • 在SQL數據庫中,您必須為表指定一個架構,這不是很容易,建議您對其進行更改,因為它可以確保數據的一致性並允許您對數據進行多次檢查(例如,使用JOINS)不同的表。

  • 在NoSQL數據庫中,沒有為集合指定架構。 這樣可以輕松存儲很多信息,而不會出現任何問題。 但是,如果必須執行JOIN檢查存儲在不同集合中的數據該怎么辦? 您不能,因為沒有定義架構,也沒有定義集合之間的關系。

我試圖找到哪種數據庫最適合我

這取決於您要對每個DBMS執行的操作。 如果您想存儲很多信息而不關心聯接,表之間的關系,操作的原子性等,請使用NoSQL數據庫引擎。 否則,請使用SQL數據庫引擎。

並非每個NoSQL數據庫甚至都有文檔。 它只是NoSQL數據庫的一小部分:面向文檔的數據庫。 在這些數據庫中,一個集合中包含多個文檔。 文檔和集合大致等同於關系數據庫中的行和表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM