MongoDB是?
MongoDB是一个基于分布式文件存储的数据库
由C++编写
旨在为 WEB 应用提供可扩展的高性能数据存储解决方案
是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
是NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。
MongoDB是文档型的NoSQL。特点:用类似json的格式存储,存储的内容是文档型的,这样就有机会对某些字段建立索引,实现关系数据库的某些功能。
NoSQL用于超大规模数据的存储。(例如谷歌或Facebook每天为他们的用户收集万亿比特的数据)。这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。
分布式计算优缺点
优点
- 可靠性
- 可扩展性
- 资源共享
- 灵活性
- 更快的速度
- 开放系统
- 更高的性能
缺点
- 故障排除
- 软件(更少的软件支持分布式)
- 网络(网络基础设施问题:传输问题、高负载、信息丢失等)
- 安全性
为什么使用NoSQL
今天我们可以通过第三方平台(如:Google,Facebook等)可以很容易的访问和抓取数据。用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加。我们如果要对这些用户数据进行挖掘,那SQL数据库已经不适合这些应用了, NoSQL数据库的发展也却能很好的处理这些大的数据。