日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
MongoDBGridFS
GridFS 是 MongoDB 的一種規(guī)范,用于存儲(chǔ)和檢索大型文件,如圖像、音頻、視頻等。GridFS 也是一種存儲(chǔ)文件的文件系統(tǒng),但其數(shù)據(jù)是存儲(chǔ)在 MongoDB 集合中的,GridFS 甚至可以存儲(chǔ)超過(guò) 16MB 的文件。在存儲(chǔ)文件時(shí) GridFS 可以將一個(gè)文件分為多個(gè)數(shù)據(jù)塊,并將每個(gè)數(shù)據(jù)塊存儲(chǔ)在一個(gè)單獨(dú)的文檔中,每個(gè)文檔最大為 255KB。

默認(rèn)情況下,GridFS 使用 fs.files 和 fs.chunks 兩個(gè)集合來(lái)存儲(chǔ)文件的元數(shù)據(jù)和塊。每個(gè)區(qū)塊都由其唯一的 ObjectId(_id)字段標(biāo)識(shí)。fs.files 用作父文檔,fs.chunks 文檔中的 files_id 字段將塊鏈接到其父級(jí)。

下面展示了一個(gè)簡(jiǎn)單的 fs.files 集合文檔:

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

該文檔指定了文件的文件名、塊大小、上傳日期和長(zhǎng)度。下面展示了一個(gè)簡(jiǎn)單的 fs.chunks 集合文檔:

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

將文件添加到 GridFS

想要將文件添加到 GridFS 中,可以使用 put 命令。下面的示例中演示了使用 put 命令在 GridFS 中存儲(chǔ) mp3 文件的過(guò)程。在存儲(chǔ)文件時(shí)我們需要使用 mongofiles.exe,它在 MongoDB 安裝目錄下的 bin 目錄中。

打開(kāi)命令行工具,跳轉(zhuǎn)到 mongofiles.exe 所在的目錄并輸入以下代碼:

C:\Users\79330>mongofiles.exe -d gridfs put F:/code/music/song.mp3
2021-03-09T09:38:22.271+0800    connected to: localhost
2021-03-09T09:38:22.333+0800    added file: F:/code/music/song.mp3

提示:若已經(jīng)將 MongoDB 安裝目錄下的 bin 目錄添加到了 Path 環(huán)境變量中,則可以省略跳轉(zhuǎn)到 bin 目錄的步驟,直接在命令行工具中輸入以上命令即可。

上面命令中 gridfs 為要存儲(chǔ)文件的數(shù)據(jù)庫(kù)名稱,如果數(shù)據(jù)庫(kù)不存在,那么 MongoDB 會(huì)自動(dòng)創(chuàng)建;F:/code/music/song.mp3 為要存儲(chǔ)文件的路徑以及名稱。

若要查看我們上面保存在數(shù)據(jù)庫(kù)中的文檔,可以使用 find() 命令:

> db.fs.files.find().pretty()
{
        "_id" : ObjectId("6046d18e01ef664194f5a78c"),
        "chunkSize" : 261120,
        "uploadDate" : ISODate("2021-03-09T01:38:22.341Z"),
        "length" : 4148442,
        "md5" : "cc3495f49ece8212906ef5c59e7440f0",
        "filename" : "F:/code/music/song.mp3"
}

我們還可以通過(guò)上面查詢中返回的文檔 ID 來(lái)查看 fs.chunks 集合中與存儲(chǔ)文件相關(guān)的所有數(shù)據(jù):

> db.fs.chunks.find({files_id:ObjectId('6046d18e01ef664194f5a78c')})

上面的查詢返回了 15 個(gè)文檔的數(shù)據(jù),這意味著前面我們存儲(chǔ)的 song.mp3 文件被存儲(chǔ)到了 15 個(gè)區(qū)塊中。


當(dāng)前名稱:MongoDBGridFS
分享路徑:http://m.5511xx.com/article/coejoec.html