NoSQL数据管理系统是目前非常流行的一种非关系性、分布式、不支持ACID设计规范式的数据库;NoSQL简单的数据模型、元数据和数据分离、弱一致 性、高吞吐量、高水平扩展能力和低端硬件集群使其流行的主要原因,而mongodb就是NoSQL数据库一种非常流行的实现方式。
常见的NoSQL数据存储模型 | |
---|---|
列式模型 | 文档类型 |
应用场景:在分布式文件系统之上提供支持随机读写分离的分布式数据库典型产品:HBase、Hypertable、Cassandra数据模型:以“列”为中心进行存储,将相同的列存储在一起优点:快速查询、高可扩展性、易于实现分布式扩展 | 应用场景:非强事务的web应用典型产品:MongoDB、Elasticsearch、CouchDB数据模型:键值模型,以文档存储优点:数据模型无须事先定义 |
键值模型 | 图式模型 |
应用场景: 内容缓存,用于大量并发数据访问的高负载场景典型产品:DynamoDB、Redis、Riak数据模型:基于hash表实现的key-value优点:查询速度快 | 应用场景:社交网络、推荐系统、关系图谱典型产品:Neo4j、Infinite Graph、TITAN数据模型:图式结构优点:适用于图式场景计算 |
MongoDB复制集中特殊节点的类型:
MongoDB的复制架构:
MongoDB复制过程:
MongoDB的索引类型: