Mongodb简介
1. MongoDB的名称取自“humongous”(巨大的) 的中间部分,足见mongodb的宗旨在处理大量数据上面
2. MongoDB是一个开源的、面向文档存储的数据库,属于Nosql数据库的一种
3. MongoDB可运行在unix、Windows和OSX平台上,支持32位和64位应用,并且提供了java、php、c、c++、c#、javaScript多种语言的驱动程序
4. 目前正在使用MongoDB的网站和企业已经超过100多家
MongoDB是一种开源的NoSQL文档数据库,其名称源于单词“巨大的”,暗示着它在处理大规模数据集方面的能力。它允许开发者以文档形式存储数据,这些文档类似于JSON对象,因此易于阅读和编写。MongoDB支持多种平台,包括UNIX、Windows和OSX,适用于32位和64位应用程序,且提供了多种语言的驱动程序,包括Java、PHP、C、C++、C#和JavaScript。
MongoDB的特性包括高性能、易扩展性、模式自由、支持动态查询、完全索引、面向文档的存储、高效数据存储和复制与故障恢复机制。它支持主-从和主-主的数据复制模式,并能通过自动分片实现水平扩展和云级别的伸缩性。
适用场景方面,MongoDB适合用作持久化缓存层,处理实时的插入、更新和查询,特别适合存储和查询文档化的数据格式,以及处理由大量服务器组成的数据库集群。由于内置了MapReduce引擎的支持,它也适合大规模数据的聚合处理。
不适用场景包括需要高度事务性的系统、传统的商业智能应用和涉及复杂跨文档级联查询的情况。MongoDB不是传统关系型数据库,因此它没有固定的表结构,不支持复杂的跨文档或跨表事务处理。
MongoDB的工作方式类似于关系型数据库,但是它使用的是由数据库、集合和文档对象组成的三层结构。集合类似于表,但是集合中没有列、行和关系的概念,文档对象则类似于记录。数据在MongoDB中以单文档为单位存储,文档可以包含基本类型属性、内嵌文档或文档数组,这些文档对象支持复杂关系的表达。存储的数据格式是BSON,即“二进制序列化文档表示法”,这种格式与JSON类似,但它是二进制的,支持多种数据类型,包括数组和文档对象。
MongoDB可以无安装方式运行,解压即可使用。解压后生成的bin目录包含了11个工具命令,无需其他二进制文件。
此外,MongoDB的官方文档提供了对GridFS文件系统、索引、主/从数据库同步、分片与集群、基本数据库操作、安全与认证、常用DBA操作、图形化管理工具等高级主题的详细指导。例如,GridFS是MongoDB用于存储大文件的一种文件系统。索引功能可以加快查询速度。主/从同步允许数据的复制与备份。分片是MongoDB支持大规模数据分布存储的关键特性。数据库基本操作涵盖了增删改查,Shell控制台提供了执行脚本的能力,而安全与认证则涉及用户管理与权限控制。
常用DBA操作则包含了各种数据库管理任务,图形化管理工具则为用户提供了一个直观的界面以执行数据库操作。此外,文中提及的作者李三来来自于科大恒星信息技术有限公司,他提供的MongoDB学习手册主要基于官网的内容进行编排,并仅供学习使用。