乱读天书, 不求甚解
周祎骏的个人云笔记
Toggle navigation
乱读天书, 不求甚解
主页
Linux:系统配置
Linux:用户管理
Linux:优化排错
Linux:进程调度
Linux:文件系统
Linux:网络
Linux:系统服务
Linux:安全
Linux:内核
容器:Docker
容器:containerd
容器编排:Kubernetes
IAC:Terraform
大数据:Hadoop
大数据:Zookeeper
大数据:Hbase
消息队列:rsyslog
消息队列:kafka
数据库:MySQL
数据库:MongoDB
搜索引擎:Elasticsearch
时序数据库:OpenTSDB
网站服务:Nginx
编程:Bash
编程:Perl
编程:Python
编程:C
编程:JAVA
编程:Rust
版本控制:gitlab
知识管理:docusaurus
常用小工具
关于我
标签
Mongodb 0.0 介绍
2017-08-27 14:30:32
128
0
0
admin
> overview #大致介绍: * MongoDB 是一款存储文档的分布式非关系型数据库。 >其存储的文档类似于JSON,其实基本上就是JSON,只是多了对二进制数据的支持 * MongoDB 支持replic/shard 这些功能 * MongoDB 可以通过JSON中的某个键值对来作为条件搜索数据 * MongoDB 的命令行除了MongoDB本身的命令外,支持JAVAScript *** #一些概念: ##逻辑上 **database:** 库 **collection:** 表 >同一张表里可以同时放任何不同格式的数据,但是一般不建议,没好处 **document:** 一条数据 **field:** 文档中的某一个值,相当于mysql 一行数据中的某一列 **_id:** 相当于主键 >每一个document都会有的field,如果不指定, mongo会自动根据时间/硬件/随机数等生成一个唯一的 **chunk:** mongo 数据分片的存储单位 ##架构上 **mongod:** mongo提供数据服务的进程 >多个mongod 实例可以配置成主备或者选举制的mongod集群,每个实例拥有相同数据 *图片来自官网*  **mongo arbit:** 只投票不提供数据服务的mongod进程。 >如果想搭一个选举制的mongod集群(通常要求奇数个mongod实例来防止脑裂)而且硬件资源不够的话,可以启动一个arbit,因为不提供数据服务,所以arbit实例占资源很少。 *图片来自官网*  **mongos:** 为mongo 集群提供分片功能的mongo server >mongos 可以管理多个mongod实例或者mongod集群,将数据分片并存储在不同的mongod 实例或者mongod集群中,这时候客户端就只连接mongos,mongos会去连接对应的mongod来提供服务的。 mongos没有状态,所有分片数据存储在mongos configdb中。 *图片来自官网*  **config DB:** 为mongos提供分片信息的存储服务 > configDB 有两个版本(老版本SCCC 和 新版本CSRS) 老版本当时是专为configDB设计的,有一些当时设计上的限制,比如replic 数量上有限制。 新版本就是一个mongod实例,各种功能与时俱进,所以从mongo3.4开始仅支持新版本了。
上一篇:
Linux网络 5.1 redsocks 代理
下一篇:
Mongodb 1.00 基础
文档导航