日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)MongoDB教程:MongoDBGridFS

MongoDB GridFS

GridFS 用于存儲和恢復(fù)那些超過16M(BSON文件限制)的文件(如:圖片、音頻、視頻等)。

成都創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、成都網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元寧化做網(wǎng)站,已為上家服務(wù),為寧化各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108

GridFS 也是文件存儲的一種方式,但是它是存儲在MonoDB的集合中。

GridFS 可以更好的存儲大于16M的文件。

GridFS 會將大文件對象分割成多個(gè)小的chunk(文件片段),一般為256k/個(gè),每個(gè)chunk將作為MongoDB的一個(gè)文檔(document)被存儲在chunks集合中。

GridFS 用兩個(gè)集合來存儲一個(gè)文件:fs.files與fs.chunks。

每個(gè)文件的實(shí)際內(nèi)容被存在chunks(二進(jìn)制數(shù)據(jù))中,和文件有關(guān)的meta數(shù)據(jù)(filename,content_type,還有用戶自定義的屬性)將會被存在files集合中。

以下是簡單的 fs.files 集合文檔:

{
   "filename": "test.txt",
   "chunkSize": NumberInt(261120),
   "uploadDate": ISODate("2014-04-13T11:32:33.557Z"),
   "md5": "7b762939321e146569b07f72c62cca4f",
   "length": NumberInt(646)
}

以下是簡單的 fs.chunks 集合文檔:

{
   "files_id": ObjectId("534a75d19f54bfec8a2fe44b"),
   "n": NumberInt(0),
   "data": "Mongo Binary Data"
}

GridFS 添加文件

現(xiàn)在我們使用 GridFS 的 put 命令來存儲 mp3 文件。 調(diào)用 MongoDB 安裝目錄下bin的 mongofiles.exe工具。

打開命令提示符,進(jìn)入到MongoDB的安裝目錄的bin目錄中,找到mongofiles.exe,并輸入下面的代碼:

>mongofiles.exe -d gridfs put song.mp3

-d gridfs 指定存儲文件的數(shù)據(jù)庫名稱,如果不存在該數(shù)據(jù)庫,MongoDB會自動(dòng)創(chuàng)建。如果不存在該數(shù)據(jù)庫,MongoDB會自動(dòng)創(chuàng)建。Song.mp3 是音頻文件名。

使用以下命令來查看數(shù)據(jù)庫中文件的文檔:

>db.fs.files.find()

以上命令執(zhí)行后返回以下文檔數(shù)據(jù):

{
   _id: ObjectId('534a811bf8b4aa4d33fdf94d'), 
   filename: "song.mp3", 
   chunkSize: 261120, 
   uploadDate: new Date(1397391643474), md5: "e4f53379c909f7bed2e9d631e15c1c41",
   length: 10401959 
}

我們可以看到 fs.chunks 集合中所有的區(qū)塊,以下我們得到了文件的 _id 值,我們可以根據(jù)這個(gè) _id 獲取區(qū)塊(chunk)的數(shù)據(jù):

>db.fs.chunks.find({files_id:ObjectId('534a811bf8b4aa4d33fdf94d')})

以上實(shí)例中,查詢返回了 40 個(gè)文檔的數(shù)據(jù),意味著mp3文件被存儲在40個(gè)區(qū)塊中。


標(biāo)題名稱:創(chuàng)新互聯(lián)MongoDB教程:MongoDBGridFS
網(wǎng)頁路徑:http://www.dlmjj.cn/article/dhcocpd.html