首页 > 数据库技术 > 详细

MongoDB特性及使用场景

时间:2019-11-12 11:35:57      阅读:80      评论:0      收藏:0      [点我收藏+]

概述

MongoDB(Humongous Database),中文意思就是巨大无比的数据库,顾名思义,MongoDB就是为处理大数据而生,以解决海量数据的存储和高效查询使用为使命。MongoDB是一款强大、灵活、易于扩展的通用型数据库它,能扩展出非常多的功能,如排序、范围查找、聚合、地理空间索引等,同时具有方便的集群管理模式及完善的运维辅助工具。

 

功能特性

  • 灵活的文档模型,加字段自由,同时不受数据类型限制;
  • 基于文档的数据库系统,格式以BSON(JSON,半结构化数据)存储;
  • 高可用复制集,自动故障转移;
  • 强大索引功能支持,允许多种快速查询,且提供唯一索引、复合索引、地理空间索引以及全文索引;
  • 高性能,mmapv1、wiredtiger、in-memory 等多引擎支持满足各种场景需求; (后续自研版本会支持rocksdb提升写入性能)
  • 高压缩比,占用磁盘空间小;
  • 地理空间支持,支持多点、线段、面、多边形、单点、多线段、multipolygon、几何体集合GeoJSON格式,支持符合空间索引、2D索引, 2dsphere 索引;
  • 完善的分布式扩缩容、数据迁移功能,扩缩容、数据迁移完美支持;
  • 主从复制支持异步复制和Raft复制,其中异步复制有可靠的rollback机制保证不丢数据,raft复制数据可靠性更高
  • 4.X版本已经支持事务功能,其中4.2版本开始支持分布式事务
  • 自研版本数据热备支持,实时数据备份、恢复

适用场景

  • 高并发读写;
  • 模式自由,随意字段添加,对于那种随时需要更改数据结构;
  • 数据量大,需要随时扩容的场景;
  • 磁盘空间小,最大化利用磁盘空间
  • 高可扩展性的应用场景;
  • 数据可靠性要求高的场景

不适用场景

  • 在多个不用维度对不用类型的数据进行关联(join),MongoDB不支持,建议使用mysql

MongoDB、ElasticSearch、Redis、HBase、Mysql选型比较

技术分享图片

 

 

MongoDB特性及使用场景

原文:https://www.cnblogs.com/Yale-L/p/11840046.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!