MongoDB系列文章 - 索引

来源:互联网 发布:金山网络官网个人中心 编辑:程序博客网 时间:2024/05/17 01:59

先挖坑…

第一部分、基础知识

1. 相关理论及背景

  • 从集中式到分布式
  • 从SQL到NOSQL
  • 分布式的问题
  • CAP与BASE理论

2. MongoDB简介

  • 2.1 什么是MongoDB
    • 特性
    • 优缺点
    • 与关系型数据库,其他NoSQL数据库对比
    • 适用场景
  • 2.2 MongoDB的组成结构
    • MongoDB的体系结构
    • MongoDB的数据逻辑结构
    • MongoDB的数据存储结构
  • 2.3 MongoDB服务的逻辑结构
    • 存储引擎
    • MMAPv1
    • WiredTiger
    • MMAPv1 vs WiredTiger
    • 其他
  • 2.4 MongoDB的高可用,可伸缩架构
    • 副本集
    • 分片集群
  • 2.5 MongoDB生态圈

3. MongoDB基础

  • 3.1 下载和安装
  • 3.2 连接和管理
    • mongo shell
    • 安全认证
    • 导入导出
    • 备份恢复
    • 监控管理
  • 3.3 程序开发
    • 支持驱动语言
    • 原生驱动
    • 第三方框架
  • 3.4 数据类型
    • 基本数据类型
    • _id和ObjectId
    • 自定义_id
    • 正则表达式
    • JavaScript代码
    • BinData
    • 内嵌文档和数组
    • 数据类型之间的比较排序
    • 关于NULL值得判断
  • 3.5 数据模式
    • 动态模式≠无模式
    • 范式与反范式
    • 内嵌与文档引用
  • 3.6 BSON
    • BSON简介以及类型结构说明
    • BSON相对JSON的优点
  • 3.7 方法(Method)与操作符(Operator)
    • 写关注(WriteConcern)和读偏好(ReadPreference)
  • 3.8 GridFS

第二部分、开发进阶

整理中…

1. 选择合适的数据类型

2. MongoDB中的事务

3. 数据建模

4. 理解ReadPreference和WriteConcern

5. 索引

6. 增删改查

7. 聚合操作

第三部分、管理进阶

整理中…

第四部分、Q & A

整理中…

  1. mongo shell
    • 1.1 为什么通过shell插入的整数变成了浮点数?
    • 1.2 为什么使用NumberLong封装一个大整数存入mongodb以后,取出的值和插入的值不一样?
  2. 导入导出(mongoimport、mongoexport)
    • 2.1 为什么通过mongoexport导入的数据,前面有一个乱码符号?
    • 2.2 为什么通过mongoexport导出的数据,mongoimport后数据类型不正确?
  3. CRUD
    • 如何查询一个二维数组字段?
  4. 聚合操作
  5. 索引
  6. 副本集
  7. 分片
0 0