MongoDB简介

1.MongoDB介绍

MongoDB由C++语言编写的,是一个基于分布式文件存储的开源数据库系统,是专为可扩展性,
高性能和高可用性而设计的数据库,是非常关系型数据库中功能最丰富,最像关系型数据库的,
他支持的数据结构非常散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。

2.MongoDB的特点

高性能:MongoDB提供高性能的数据持久性,尤其是支持嵌入式数据模型减少数据库系统上的I/O操作,
索引支持能快的查询,并且可以包括来嵌入式文档和数组中的键 丰富的语言查询:MongoDB支持丰富的查询语言来支持读写操作(CRUD)以及数据汇总,文本搜索和地理空间索引 高可用性:MongoDB 的复制工具,成为副本集,提供自动故障转移和数据冗余 水平可扩张展性:MongoDB提供了可扩展性,作为其核心功能的一部分,分片是将数据分在一组计算机上。 支持多种存储引擎:wiredtiger存储引擎和MMAPv1存储引擎和inmenmory存储引擎

3.MongoDB包含的程序

MongoDB Drivers

官方MongoDB客户端库提供C,C++,C#,java,node.js,perl,PHP,Python,Ruby,和Scala驱动程序的参考指南
MongoDB stitch

为开发人员提供了一个API到MongoDB和其他端服务,保持MongoDB的全部功能和灵性,
同时受益于强大的系统来配置细粒度的数据访问控制。
MongoDB Atlas

MongoDB在云中部署,操作和扩展的最佳方式,适用于aws,azure,和Googl cloud platform。
轻松将数据迁移到MongoDB Atlas,零停机
MongoDB cloud manager

是一个用于管理MongoDB部署的软件包,Ops manager提供Ops manager监控和Ops manager备份,
可帮助用户优化集群并降低操作风险
MongoDB charts

可以最快速最简单的创建MongoDB可视化图表
MongoDB connector for BI

MongoDB 商业智能连接器(BI)允许用户使用SQL创建查询,并且用现有的关系商业智能工具

4.MongoDB的应用场景

案例1
用在应用服务器的日志记录,查找起来比文本灵活,导出也很方便。也是给应用练手,从外围系统开始使用MongoDB。
用在一些第三方信息的获取或者抓取,因为MongoDB的schema-less,所有格式灵活,
不用为了各种格式不一样的信息专门设计统一的格式,极大的减少开发的工作。

案例2
mongodb之前有用过,主要用来存储一些监控数据,No schema 对开发人员来说,
真的很方便,增加字段不用改表结构,而且学习成本极低。


案例3
使用MongoDB做了O2O快递应用,·将送快递骑手、快递商家的信息(包含位置信息)存储在 MongoDB
然后通过 MongoDB 的地理位置查询,这样很方便的实现了查找附近的商家、骑手等功能,使得快递骑手能就近接单
目前在使用MongoDB 上没遇到啥大的问题,官网的文档比较详细,很给力。

 

posted @ 2020-12-25 17:29  鄧萌  阅读(324)  评论(0)    收藏  举报