之前我曾有过一次mongodb的介绍,但那是年少无知,对mongo认识得不够充分,所以当时那篇专题介绍只是介绍了一个大概的轮廓就草草敷衍了事了。对此我做了深刻的反省与自我批评。接下来,今天就mongo的深度探索将在下面的时间里倾情为大家呈现。


MongoDB的基本概念

一、MongoDB基本概念与关系数据的对应关系

MongoDB基本概念与关系数据的对应关系

二、MongoDB的数据层次结构

文档(Documents),集合( Collections), 和数据库( Databases)三层
§文档存储在集合中
§集合存储在数据库中
§例如:
•数据库(Database): products
•集合(Collections): books, movies, music
§数据库和集合的组合,构成MongoDB的命名空间
•products.books
•products.movies
•products.music
*数据库名最长不能超过64个字节,命名空间最长不能超过120字节

三、MongoDB的数据结构

§MongoDB采用JSON文档结构

•JSON的全称:JavaScript Object Notation
•JSON的格式:支持如下数据格式
字符串 :e.g., “Thomas”
数字 :e.g., 29, 3.7)
布尔:true / false
空值:null
数组:e.g., [88.5, 91.3, 67.1]
对象:object
{
"firstname" : "Thomas",
"lastname" : "Smith",
"age" : 29
}

§MongoDB采用BSON格式保存数据

MongoDB使用了BSON这种结构来存储数据和网络数据交换。把这种格式转化成一文档这个概念(Document),因为BSON是schema-free的,所以在MongoDB中所对应的文档也有这个特征,这里的一个Document也可以理解成关系数据库中的一条记录(Record),只是这里的Document的变化更丰富一些,如Document可以嵌套。

MongoDB以BSON做为其存储结构的一种重要原因是其可遍历性。

四、MongoDB的功能定位

Memcache所指为内存数据库

RDBMS为关系型数据库

五、MongoDB部署模型

在生产上部署mongodb数据库一般采取分片或主从的模式进行部署

六、MongoDB的备份与恢复

时刻1

PRIMARY/SECONDRY处于相同的状态,总文档数相同,文档内容也相同,我们称之为状态A

时刻2

PRIMARY节点上插入了一个新文档,进入状态B

时刻3

SECONDARY上复制到新文档,进入状态B

最终一致性决定了SECONDARY上只会出现PRIMARY上出现过的状态

七、MongoDB的设计原则

•为性能优化,而不是空间

•为最重要场景优化,不求面面俱到

mongodb 字符串转bson_大数据存储技术选型(六)--Mongodb专题介绍相关推荐

  1. mongodb如何根据字段(数组类型)的长度排序_大数据存储技术选型(七)——MongoDB设计模式及索引优化...

    关系数据库的时代 关系数据库的设计理念 假设你有一台车,你需要给它存起来,给它找个停车位.传统数据库的存储方式就相当于,把这个车的所有零件拆下来,放在存放对应零件的盒子里,需要用的时候,再把他们取出来 ...

  2. 【大数据存储技术】第8章 其他NoSQL数据库

    文章目录 第8章 其他NoSQL数据库 8.1 图数据库简介 8.2 Neo4j 8.2.1 Neo4j 简介 8.2.2 Neo4j 的安装与实践 8.3 Redis和内存数据库 8.3.1 内存数 ...

  3. 2.3大数据存储技术

    大数据存储技术面向的是海量.异构数据,因此,它需要提供高性能.高可靠的存储和访问能力.本节将介绍大数据存储技术的概率和原理,包括Hadoop分布式文件系统(HDFS).列式数据库(HBase)和其他数 ...

  4. 三种最典型的大数据存储技术路线

    三种最典型的大数据存储技术路线 近期由中关村大数据产业联盟举办的"大数据100分"线上研讨会中,南大通用的CTO.资深业界专家武新博士同众多网友分享了底层数据处理技术的发展趋势和正 ...

  5. 大数据存储技术方案介绍

    2019独角兽企业重金招聘Python工程师标准>>> 大数据存储方案 Cap思想 分布式领域CAP理论, Consistency(一致性), 数据一致更新,所有数据变动都是同步的 ...

  6. 大数据存储技术之KUDU学习总结/快速入门

    KUDU学习总结 1 基础概念 官方:https://kudu.apache.org/ 在 KUDU 之前,大数据主要以两种方式存储: • 静态数据:以 HDFS 引擎作为存储引擎,适用于高吞吐量的离 ...

  7. 优酷大数据 OLAP 技术选型

    导读:数据驱动的方法论已深入人心,无论是开发.产品还是运营,根据数据进行决策是必备环节.你是否好奇过,在优酷这样海量数据的场景下,是什么样的引擎在支撑着业务上林林总总的分析需求?大数据领域中,Kyli ...

  8. 【大数据存储技术】实验2:MongoDB数据库的部署和操作

    目录 1.实现MongoDB单实例的部署 1.1 安装MongoDB(Ubuntu版本:22.04 LTS) 1.1.1 查看Ubuntu版本 1.1.2 使用Ubuntu命令安装 1.2 启动Mon ...

  9. 【大数据存储技术】第7章 MongoDB 的原理和使用

    文章目录 第7章 MongoDB 的原理和使用 7.1 概述 7.2 MongoDB 技术原理 7.2.1 文档和集合 7.2.2 分片机制和集群架构 7.2.3 CouchDB 简介 7.3 安装配 ...

最新文章

  1. 从科学简历看研究方法——爱因斯坦探索性的演绎法
  2. Java经典编程题50道之十七
  3. 一些长时间GC停顿问题的排查及解决办法
  4. 《Effective C++》读书笔记(第一部分)
  5. 7-4 二叉树的遍历!(简单) (25 分)
  6. html 访问节点,HTML DOM 访问节点
  7. ansible软件部署
  8. pip安装Python包时下载速度慢
  9. 给出c语言的三维数组地址计算公式,要存放稀疏矩阵的元素.ppt
  10. Win7批量压缩照片
  11. ztree异步加载数据amp;amp;amp;amp;amp;amp;amp;amp;给父节点动态追加子节点
  12. 对数组名取地址a和 数组首地址a
  13. 中国射频前端产业现状分析
  14. c语言ODBC连接数据库
  15. class accuracy、 instance accuracy、overall accuracy和average accuracy的区别
  16. 【渝粤题库】陕西师范大学292251 公司金融学Ⅰ 作业(高起专)
  17. JavaScript获取浏览器可视区域的宽高
  18. Java如何爬虫奥运奖牌榜数据,恭喜中国获得东京奥运会首金!
  19. 教你在Windows下上传iOS APP ipa到苹果应用商店App Store
  20. JAVA PDFbox 坐标选区提取文字

热门文章

  1. 《第一本Docker书(修订版)》——第1章_简介_1.1Docker简介
  2. 【廖雪峰官方网站/Java教程】设计模式(一)
  3. 【整数转字符串】LeetCode 9. Palindrome Number
  4. 台大李宏毅Machine Learning 2017Fall学习笔记 (3)Bias and Variance (v2)
  5. 如何从一行输入的字符串中基于空格切割出单词
  6. Pytorch中的collate_fn函数用法
  7. 批标准化(batch normalization)与层标准化(layer normalization)比较
  8. python:json文件的保存与读取
  9. python_字符串常用方法
  10. Eclipse Debug 配置