当前位置:文档之家› MongoDB概述及存储结构

MongoDB概述及存储结构


2018/11/5
4
背后的故事——RDBMS的困境
1.数据库并发负载高
2.海量数据存储和访问 3.数据库数据越来越大
4.事务管理的负担
5.对关系型数据库读/写实时性的忽略 6.多表关联查询被弱化
2018/11/5 5
背后的故事——NoSQL的崛起
NoSQL全称是Not Only Sql,指的是非关系型的数据库。NoSQL数据库主要 应用于web2.0的大规模系统,具有模式灵活、最终一致性、面向海量数据、 分布式、开源、水平可扩展、配置简单、非关系型等特点。
3.查询监视: MongoDB 提供了很多性能监视工具,用于分析数据库操作的 性能。
2018/11/5
10
崛起的法宝——功能性(续)
4.复制及自动故障转移:MongoDB 数据库支持服务器之间的复制,从节点可以复 制主节点的数据,主节点的所有对数据的操作都会同步到从节点。从节点的数据 跟主节点的数据是完全一样的,以作备份。主节点发生故障之后,从节点可以升 级为主节点,也可以通过从节点对故障主节点进行数据恢复。
硬实力——存储引擎
存储引擎是数据库管理系统的一个重要组成部分。它的主要职责就是负 责把数据存储到硬盘和把数据从硬盘检索出来。MySQL和Riak均支持多个 不同的存储引擎。不同的存储引擎对不同的应用需求有特别的优化。如 某个存储引擎可以是专为高并发写设计的,而另一个则是为高压缩率设 计从而达到节省磁盘空间的目标。 mongoDB默认采用的存储引擎是操作系统底层提供的内存映射文件(MMAP) (至今也只有一种)。
2018/11/5
12
第二章 存储结构
1
硬实力
2
软实力
2018/11/5
13
硬实力——磁盘
数据的存储总离不开磁盘,因此mongodb的数据存储设备当然也只能是磁 盘。官方建议采用SSD固态硬盘。
VS.
HDD 随机访问(IOPS) 顺序读写(Throughput) 125 ~100MB/s SSD 12000 (100x) ~200MB/s (2x)
6
文档式存储
对象式存储
2018/11/5
db4o Versant
背后的故事——mongoDB的前世今生
1. 2007年10月,MongoDB由10gen团队所发展,2009年2月 首度推出 2. MongoDB是一个介于关系数据库和非关系数据库之间的 产品 3. MongoDB 是由C++语言编写的开源数据库系统 4. MongoDB服务端可运行在Linux、Windows或OS X平台, 支持32位和64位应用
2018/11/5
7
崛起的法宝——vs RDBMS
2018/11/5
8
崛起的法宝——数据模型
MongoDB 数据库是一个面向集合且模式自由的文档类型数据库。
1. 面向集合 面向集合是指数据被分组存在在数据集中,被称为一个集合 (Collencton==table)。集合类似于关系型数据库的表(table) ,不同于表的 是,集合不需要定义任何模式,集合在存储文档,一个文档类似于关系型数 据库的一条记录。在 MongoDB 中,要操作一个表并不需要创建它,可以直接 往集合中插入数据,如果集合不存在,它会自动创建这个集合。
2. 模式自由 模式自由就是对存储在 MongoDB 数据库中的数据,我们不需要知道它是什么 结构(可以是任何的文档)。 3. 文档型 文档型存储的数据是键值对的集合,键是字符串,值可以是数据类型集合中 的任意类型,包括数组和文档。我们把这个数据格式称为 BSON (Binary Serialized Document Notation)
MongoDB、CouchDB
可以通过键快速查询到值。一般来说,存储 不管值的格式,照单全收
文 档 存 储 一 般 用 类 似JSON 格式存储,存 储的内容是文档类型的,这样也就有机会对 某些字段建立索引,实现关系型数据库的某 些功能 通过类似面向对象语言的语法操作数据库, 通过对象的方式存取数据
5.高效地传统存储方式:支持二进制数据及大型对象(如视频),可以 将图片文件甚至视频转换成二进制的数据存储到数据库中。
6.自动分片以支持云级别的伸缩性: 可以水平扩展数据库集群,动态添 加片(服务器)。
2018/11/5
11
崛起的法宝——其他招式 1.拓展功能强大 2.便于管理 3.适用于多种场合
2018/11/5
18
硬实力——内存映射
页面已在内存, 50us
页面不在内存,缺页中断 10ms
4
1
虚拟内存
2
物理内存
480
10000
200 200
2018/11/5 9
崛起的法宝——功能性
1.完整的索引支持:可以对文档创建索引,甚至还可以对内嵌文档以及数组 创建索引。MongoDB 的查询优化器会自动分析查询语句,然后生成一个高 效的查询集合。
2.动态查询: MongoDB 的查询指令使用 JSON 形式,使查询表达式变得非常 丰富,还可以非常容易地查询文档中的内嵌对象和数组。
存储类型 列式存储 NoSQL产品 Hbase、Cassandra Hypertable 特性 按列存储数据,最大的特点是方便存储结构 和半结构化数据,方便做数据压缩,针对某 一列或者某几列的查询有非常大的 I/O 优势
键值存储
Redis、TokyoCabinet Tokyo Tyrant、Flare
优化的IO部署方案
mongod
Data file SSD
Journal HDD
Log HDD
数据IO:随机访问为主
1
{ x: 12 }
3 Read: DiscLoc: xx
2
DisckLoc: xx
DiskLoc: xx
建议的RAID Level
无冗余Biblioteka 写性能一般写入速度慢条带化+镜像 性能好 + 数据冗余
mongoDB的概
述与存储结构
汇报人:※※※
2018/11/5
1
01
第一章 mongoDB概述
背后的故事 崛起的法宝


Contents
02
第二章 存储体系结构
硬实力 软实力
2018/11/5
2
第一章 mongoDB概述
1
背后的故事
2
崛起的法宝
2018/11/5
3
背后的故事——Web2.0来袭 1.互联网应用用户量剧增 2.数据量呈几何级数增长 3.高并发的读写
相关主题