7.4-文檔型數(shù)據(jù)庫-1_第1頁
7.4-文檔型數(shù)據(jù)庫-1_第2頁
7.4-文檔型數(shù)據(jù)庫-1_第3頁
7.4-文檔型數(shù)據(jù)庫-1_第4頁
7.4-文檔型數(shù)據(jù)庫-1_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、7.4 文檔型數(shù)據(jù)庫文檔數(shù)據(jù)庫的基本概念MongoDB基本概念 MongoDB數(shù)據(jù)模型 MongoDB數(shù)據(jù)庫【本節(jié)學(xué)習(xí)目標(biāo)】一、文檔數(shù)據(jù)庫的基本概念文檔是處理信息的基本單位。一文檔可以很長、很復(fù)雜、可以無結(jié)構(gòu)一個(gè)文檔對包含的數(shù)據(jù)類型和內(nèi)容進(jìn)行“自我描述”。XML文檔、HTML文檔和JSON 文檔嵌入式文檔 -文檔存儲模型支持嵌套結(jié)構(gòu)每個(gè)文檔的ID就是它唯一的鍵,ID在一個(gè)數(shù)據(jù)庫“集合”中是唯一的, 檢索排序的ID性能好。二、MongoDB數(shù)據(jù)庫MongoDB 是基于分布式文件存儲的開源數(shù)據(jù)庫系統(tǒng)。 將數(shù)據(jù)存儲為一個(gè)文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值對組成,字段值可以包含其他文檔,數(shù)組及文檔數(shù)組。 name:

2、 Wangxin, status: student groups:course, experiment每一行的存儲格式為 field:value。每個(gè)文檔可以匹配所表示實(shí)體的數(shù)據(jù)域。數(shù)據(jù)關(guān)系有兩種:引用和嵌入文檔。寫操作在文檔級別是原子性的,沒有單個(gè)寫操作對超過一個(gè)文檔或者超過一個(gè)集合是原子性的。MongDB的特點(diǎn)模式自由;支持動態(tài)查詢;支持完全索引,包含內(nèi)部對象;支持查詢;支持復(fù)制和故障恢復(fù);使用高效的二進(jìn)制數(shù)據(jù)存儲,包括大型對象(如視頻等);自動處理碎片,以支持云計(jì)算層次的擴(kuò)展性;支持多種語言;文件存儲格式為BSON(一種JSON的擴(kuò)展);通過網(wǎng)絡(luò)訪問。三、mongoDB的數(shù)據(jù)模型基本的概

3、念是文檔、集合、數(shù)據(jù)庫。 文檔是MongoDB中數(shù)據(jù)的基本單元集合可以被看作沒有模式的表, 每個(gè)實(shí)例都可容納多個(gè)獨(dú)立數(shù)據(jù)庫,每個(gè)數(shù)據(jù)庫都有自己的集合和權(quán)限。層次關(guān)系: 文檔集合-數(shù)據(jù)庫。1. 文檔多個(gè)鍵及其關(guān)聯(lián)的值有序地放置在一起就是文檔。 文檔是一組鍵值(key-value)對(即BSON)。文檔不需要設(shè)置相同的字段,相同的字段不需要相同的數(shù)據(jù)類型。 一個(gè)文檔包含一組字段,每一個(gè)字段都是一個(gè)key/value對, 其中key必須為字符串類型, value包含string,int,float,timestamp,binary 等類型, 或一個(gè)文檔, 或數(shù)組類型文檔中值的數(shù)據(jù)類型1)String

4、字符串。2)Integer整型數(shù)值。3)Boolean布爾值。4) Double雙精度浮點(diǎn)值。5) Min/Max keys BSON元素的最低值和最高值相對比。6) Array數(shù)組或列表或多個(gè)值存儲為一個(gè)鍵。7) Timestamp時(shí)間戳。8) Object用于內(nèi)嵌文檔。9) Null用于創(chuàng)建空值。10) Symbol符號,基本上等同于字符串類型,11) Date日期時(shí)間12) Object ID對象 ID, 類似唯一主鍵,用來生成和排序,13) Binary Data二進(jìn)制數(shù)據(jù)。14) Code代碼類型。用于在文檔中存儲 JavaScript 代碼。15) Regular expressi

5、on正則表達(dá)式類型。單值文檔、多值文檔單鍵值文檔“userName”:“BBS11”, 多鍵值文檔 _id : ObjectId(580dfe72729), name : test, add: china ,文檔中的鍵/值對是有序的。文檔中的值可以是在雙引號里面的字符串,還可以是其他幾種數(shù)據(jù)類型(甚至可以是整個(gè)嵌入的文檔)。MongoDB文檔不能有重復(fù)的鍵。文檔的鍵是字符串。文檔中的值不僅可以是字符串,也可以是其他數(shù)據(jù)類型(或者嵌入其他文檔)2. 集合collection把一組相關(guān)的文檔放到一起組成了集合集合是模式自由的,一個(gè)集合里面的文檔可以是各式各樣的。例如:下面的兩個(gè)文檔可以出現(xiàn)在同一集

6、合中?!皀ame”:”arthur”“name”:”arthur”,”sex”:”male”MongoDB提供了一些特殊功能的集合,例如:capped collection、system.indexes、spaces等。元數(shù)據(jù)的集合collection元數(shù)據(jù)是定義數(shù)據(jù)的數(shù)據(jù), 數(shù)據(jù)庫的信息是存儲在集合中。名字空間 .system.* 是包含多種系統(tǒng)信息的特殊集合(Collection),spaces數(shù)據(jù)庫中所有名字空間;dbname.system.indexes所有索引;file數(shù)據(jù)庫概要(profile)信息dbname.system.users數(shù)據(jù)庫的用戶;dbname.local.sources復(fù)制對端(slave)的服務(wù)器信息和狀態(tài)。3. 數(shù)據(jù)庫database多個(gè)文檔組成集合,數(shù)據(jù)庫由多個(gè)集合組成MongoDB實(shí)例可承載多個(gè)數(shù)據(jù)庫,互相之間彼此獨(dú)立開發(fā)中通常將一個(gè)應(yīng)用(或同一種業(yè)務(wù)類型)的所有數(shù)據(jù)存放到同一個(gè)數(shù)據(jù)庫中;磁盤上,MongoDB將不同數(shù)據(jù)庫存放在不同文件中。一個(gè)MongoDB 實(shí)例

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論