对比mysql, mongo的优缺点有:
优点:
l 文档结构的存储方式,能够更便捷的获取数据
l 内置GridFS,支持大容量的存储
l 内置Sharding,分片简单
l 海量数据下,性能优越
l 支持自动故障恢复(复制集)
l 动态查询
l 全索引支持,扩展到内部对象和内嵌数组
l 查询记录分析
l 快速,就地更新
l 高效存储二进制大对象 (比如照片和视频)
l 复制和故障切换支持
l Auto- Sharding自动分片支持云级扩展性
l MapReduce 支持复杂聚合
l 商业支持,培训和咨询
缺点:
l 不支持事务(进行开发时需要注意, 哪些功能需要使用数据库提供的事务支持)
l MongoDB占用空间过大 (不过这个确定对于目前快速下跌的硬盘价格来说, 也不算什么缺点了)
l MongoDB没有如MySQL那样成熟的维护工具
l 在32位系统上, 不支持大于2.5G的数据(很多操作系统都已经抛弃了32位版本, 所以这个也算不上什么缺点了, 3.4版本已经放弃支持32 位 x86平台)
l 无法进行关联表查询, 不适用于关系多的数据
l 复杂聚合操作通过mapreduce创建, 速度慢
| 模式自由, 自由灵活的文件存储格式带来的数据错误