多個集合能夠組成數據庫。一個MongoDB實例能夠承載多個數據庫,他們之間徹底獨立。sql
MongoDB中的數據庫和MySQL中的數據庫概念相似,只是無需建立。mongodb
一個數據庫中能夠有多個集合,一個集合中能夠有多個文檔。數據庫
集合就是一組文檔,多個文檔組成一個集合,集合相似於MySQL裏面的表。json
在關係型數據庫中,一個表中的記錄的結構徹底一致,都是由固定的字段組成的。bash
可是在文檔型中,集合僅僅是將多個文檔整理在一塊兒,而不去要求文檔的結構必定要一致。code
無模式就是指,在同一個集合中能夠包含不一樣格式的文檔,如:文檔
{"Name":"MongoDB", "Type":"Nosql"} {"UserName":"Tom", "age":20, "Gender": "male"}
以上兩個文檔能夠放在同一個集合中。在MySQL中須要先建表在插入數據。字符串
模式自由(schema-free):意思是集合裏面沒有行和列的概念。io
注意:MongoDB中的集合不用建立、沒有結構,因此能夠放不一樣格式的文檔。table
文檔 是MongoDB中數據的基本單元,相似關係數據庫的行(一條記錄),多個鍵值對有序地放置在一塊兒即是文檔。
MongoDB中以文檔的方式存取記錄,如一條記錄格式以下:
{"username":"Tom", "age":10, "email":"bashlog@foxmail.com", "sex":"男"} {"username":"Tom", "age":"10", "email":"bashlog@foxmail.com"} {"Username":"Tom", "age":10}
注意:
(1)以上是幾個不一樣的文檔,MongoDB區分大小寫和數據類型,第一個age字段是數字類型,第二個age是字符串類型。
(2)每個文檔尺寸不能超過16M
MongoDB | MySQL |
---|---|
文檔(document) (單個文檔最大16M) |
記錄(row) |
集合(collection) | 表(table) |
數據庫(database) (32位系統上,一個數據庫的文件大小不能超過2G) |
數據庫(database) |