MongoDB是一種強大靈活可擴展的數據存儲方式,它擴展了關系數據庫的眾多功能。MongoDB的功能非常豐富,但是卻非常容易上手和便於使用,今天來了解一下MongoDB的主要概念。
文檔
文檔是的核心概念。多個鍵機器關聯的值有序的放置在一起便是文檔。不同的語言表示文檔的方法可能不一樣,但是數據結構都是相通的。比如在Javascript中,可以使用json格式表示文檔:
{“name”:”wufengtinghai”,”sex”:”m”,”age”:28}
此文檔中有兩個鍵值對,實際使用中一般會比這個要復雜一些。需要注意的是:
-
文檔中的鍵值對是有順序的,不同的順序表示不同的文檔。
-
文檔中的值可以支持多種類型,比如name和age的值分別為字符串和數字。
-
文檔中的鍵一般是字符串,但是不能包含\0(空字符),空字符表示鍵的結尾。
-
不能包含.和$兩種保留字符,同時也不能以下划線開頭。
集合
集合是文檔的容器,可以將其視為關系數據庫中的表。
-
集合是無模式,也就是說集合可以存儲不同類型的文檔。
-
集合的名字不能是空字符串。
-
集合名字中不能包含空格(\0),其作為集合名字的結尾。
-
集合名字不能以system.開頭,此是為系統集合保留的關鍵字。
-
集合名字不能包含$。
數據庫
多個文檔構成集合,同樣多個集合構成數據庫。
-
一個Mongon實例可以承載多個數據庫。
-
不同的數據庫使用不同的文件存儲數據,使用單獨的權限控制。
-
數據庫名字不能包含空字符串。
-
數據庫名不能包含‘’(空格),.(實心點),/,\,\0(空字符)。
-
數據庫名字應該小寫,不超過64個字節。
-
不能是系統數據庫的保留字(admin、Local、Config).