Mongodb GridFS——适合大小超过16MB的文件
一、概述
GridFS是基于mongodb存储引擎是实现的“分布式文件系统”,底层基于mongodb存储机制,和其他本地文件系统相比,它具备大数据存储的多个优点。GridFS适合存储超过16MB的大型文件,不过16M数据在当今互联网时代,已经不足为奇。我们可以使用GridFS构建大规模的“图片服务器”、“文档服务器”、“视频、音频”文件服务器,GridFS对于web应用,可以结合nginx插件“ningx-gridfs”能够简单的实现负载均衡等特性,非常便捷;可以简单认为GridFS是为web应用而生。个人认为,目前架构比较简单的NoSQL文件系统中GridFS是最优秀的。
GridFS并不是将单个文件直接存储为一个document,而是将文件分成多个parts或者说chunks,然后将每个chunk作为作为一个单独的document存储,然后将chunks有序保存。默认情况下,GridFS的chunk大小位255k。GridFS使用2个collections来存储这些文件,一个collection存储文件的chunks(实际文件数据),另一个则存储文件的metadata(用户自定义的属性,filename,content-type等)。
当用户查询GridFS中的文件时,客户端或者driver将会重新按序组装这些chunks。用户可以range查询文件,也可以获取文件的任意部分的信息,比如:跳过(skip)视频或者音频(任何文件)的中间部,实现“range access of single file”。
对于mongodb而言,
Mongodb GridFS——适合大小超过16MB的文件相关推荐
- 查找目录下大小超过10M的文件
find . -type f -size +10M -exec ls -lh {} \; | awk '{print $5,$9}
- SpringBoot+MongoDB GridFS文件上传、下载、预览实战
SpringBoot + MongoDB GridFS 随着web 3.0的兴起,数据的形式不局限于文字,还有语音.视频.图片等.高效存储与检索二进制数据也成为web 3.0必须要考虑的问题.然而这种 ...
- MongoDB GridFS——本质上是将一个文件分割为大小为256KB的chunks 每个chunk里会放md5标识 取文件的时候会将这些chunks合并为一个整体返回...
MongoDB GridFS GridFS 用于存储和恢复那些超过16M(BSON文件限制)的文件(如:图片.音频.视频等). GridFS 也是文件存储的一种方式,但是它是存储在MonoDB的集合中 ...
- 从MongoDB GridFS流式传输文件
不久前,我在Twitter上发布了自己的最新作品,即从MongoDB GridFS传输文件进行下载(而不是将整个文件存储到内存中然后提供服务),这是我取得的一个小胜利. 我答应就此事写博客,但不幸的是 ...
- mongodb gridfs java_MongoDB基于GridFS管理文件
前言 GridFS是一种将大型文件存储在MongoDB的文件规范: 数据库支持以BSON格式保存二进制对象. 但是MongoDB中BSON对象最大不能超过4MB. GridFS 规范提供了一种透明的机 ...
- 为什么NTFS删除超过4G大文件或数据库文件后FILE RECORD大小表现为0
为什么NTFS删除超过4G大文件或数据库文件后FILE RECORD大小表现为0? 答:NTFS删除一个文件,必须要完成如下几个流程,才算完结: 1.更改文件系统$bitmap,释放空间 2.更改$m ...
- 如果一个文件的大小超过了一张磁盘的大小,你该如何存储?
转载 转自 极客时间 从零开始学大数据 李智慧 文章, 我学完了做了个笔记总结了一下 如果一个文件的大小超过了一张磁盘的大小,你该如何存储? 单机时代,主要的解决方案是RAID:分布式时代,主要解决方 ...
- VMware Workstation Pro 12 无法使用超过4G大小的ghost镜像文件进行系统还原的 傻 快 处理方案
VMware虚拟机安装 超过4GB Ghost 64位win7 的方法-亲测,需要支持请留言 VMware Workstation Pro 12 无法使用超过4G大小的ghost镜像文件进行系统还原的 ...
- mongodb gridfs java_mongodb Gridfs操作
GridFS 介绍 GridFS是MongoDB规范用于存储和检索大文件,如图片,音频文件,视频文件等.这是一种文件系统用来存储文件,但数据存储于MongoDB集合中.GridFS存储文件比其文档大小 ...
最新文章
- oracle堆表和MySQL_聚簇索引对比|Oracle vs MySQL
- python怎样连续输入两个数字_在python中生成连续的数字,同时输入不变
- VB根据窗口标题获取应用程序完整路径
- Go 系列教程 —— 26. 结构体取代类
- 实验六:流类库与I/O
- Hyperledger Fabric教程(3)-- byfn.sh分析-生成通道所需交易和文件
- 【图像处理】基于matlab GUI数字图像处理【含Matlab源码 652期】
- 【转】细说@Html.ActionLink()的用法
- Pytorch搭建DenseNet
- 常见GIS工具软件介绍
- SPSS Clementine 安装教程
- 初学者如何选择网络仿真软件
- KDD_2018_notes Smoothed Dilated Convolutions for Improved Dense Prediction
- PHP7.2手册(最新版)
- Android地图中根据缩放级别显示Marker
- 别人的计算机网络看不到,局域网内看不到别人的电脑怎么办
- 【每日新闻】高盛与苹果合作推出AppleCard
- djfpvpdjfpvp耐高温计算机电缆,电缆DJFPVP DJFPVP耐高温计算机电缆
- maven仓库镜像改为阿里巴巴
- 无线AP概念功率mW、灵敏度dBm、增益dBi
热门文章
- 移位单片机c语言程序设计,单片机C语言程序设计:K1-K4 控制 LED 移位
- Git系列之删除文件
- idea配置html编码,IntelliJ IDEA 统一设置编码为utf-8编码 /idea设置编码
- 关于CC2530入门新手需要知道的一些关于单片机的基本知识(一)IO口控制
- 服务器2008怎么系统盘为d盘,硬盘安装Windows Server 2008(解决系统盘符变成D盘)
- Java物联网、人工智能和区块链编程实战
- CSS命名方法之BEM
- Android发展简报
- 80道经典常见测试面试题
- GTQ Fin金融衍生品交易平台致力服务多层次资本市场体系建设为宗旨