博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【MongoDB】MongoDB数据库之海量存储机制
阅读量:4169 次
发布时间:2019-05-26

本文共 838 字,大约阅读时间需要 2 分钟。

GridFS是一种将大型文件存储在Mongodb数据库中的文件规范。

一、如何实现海量存储

由于Mongodb中的bson对象大小是限制的,所以gridfs规范提供了一种透明的机制,可以将一个大文件分成多个较小的文件。这样的机制允许有效地保存大文件的对象,特别是哪些巨大的文件,比如视频,高清图片;该规范指定了一个将文件分块的标准,每个文件都在集合对象中保存一个元数据对象,一个或多个块对象可被组合在一个chunk块集合中。mongodb中主要是利用mongofiles工具。

Grifs使用两个表来存储数据:

Files(包含元数据对象)

chunks(抱哈你一些相关信息的二进制块)

为了使多个gridfs命名为一个单一的数据库,文件和块都有一个前缀。默认情况下,前缀是fs.所以任何默认的gridfs存储将包括命名空间fs.files和fs.chunks。

二、命令行工具

mongofiles是从命令行操作gridfs的一种工具,例如将“testfile”这个文件存到数据库里面,可以执行如下操作。首先咱们整体认识一下mongofiles:
实例存放文件到数据库中
db.fs.files.find()参数说明:
filename:储存文件的名称;
chunksize:chunks的大小
uploaddate:入库时间
md5:文件的md5码
length:文件的大小(单位:字节)
db.fs.chunks.find()参数说明:
n:代表chunks的序号,此序号是从0开始;
data字段就是实际存储的数据
从数据库取出来数据:
D:\Program Files\mongodb\bin>mongofiles get test.txtconnected to: 127.0.0.1done write to: test.txt
gridfs文件也可以创建索引,一个块就可以利用它file_id和n的值来进行检索。
db.fs.files.find()参数说明:
你可能感兴趣的文章
MySQL单库优化概述20210403
查看>>
运维部知识库管理办法V1版
查看>>
MySQL索引优化20210412
查看>>
win10批处理文件获得超级管理员-切换双网卡
查看>>
软考UML
查看>>
信息系统的生命周期各阶段及说明
查看>>
Ubuntulinux离线安装ClamTk杀毒软件步骤和使用方法
查看>>
摆脱贫穷2021V1
查看>>
质量管理14工具图
查看>>
SQL数据库管理—安全使用SSL加密连接
查看>>
项目管理理论2021
查看>>
SQL数据库开发—TSQL-—运算符1常用
查看>>
第三章 SQL数据库开发--TSQL--select查询
查看>>
SQL数据库开发—TSQL-—运算符2不常用
查看>>
SQL数据库开发—TSQL—数据类
查看>>
第四章SQL数据库开发--TSQL—联接查询和UNION合并结果集
查看>>
第一章SQL数据库开发--TSQL概述
查看>>
第六章SQL数据库开发--TSQL—储存过程
查看>>
第七章SQL数据库开发--TSQL—事务和锁
查看>>
sqlserver服务器常用的性能计数器
查看>>