一、MongoDB简介MongoDB是用C++语言编写的,是一个基于分布式文件存储的非关系型开源数据库系统。其优点是可以存储海量数据,具有强大的查询功能,是一种独立的面向集合的文档形式。应用平台:MongoDB支持UnixLinuxWindows等系统平台。MySQL和MongoDB的区别:MySQL数据库数据表数据MongDB数据库集合文档1.MongoDB的特点存储:面向集合:将数据分组存储在数据集中,称为集合。面向文档:存储在集合中的文档以键值对的形式存储。高效的二进制数据存储:采用二进制格式存储,可以保存任何类型的数据对象。可操作性:完全索引:可以在任何属性上创建索引,包括内部对象。以提高查询速度。强大的聚合工具:MongoDB除了丰富的查询功能外,还提供了强大的聚合工具,如countgroup等。驱动支持PerlPHPJavaC#JavaScriptRubyPythonC和C++语言。可用性:支持复制和数据恢复:MongoDB支持主从复制机制,可以实现数据备份、故障恢复、读扩展等功能。基于副本集的复制机制,提供故障自动恢复,保证集群数据不丢失。分片自动处理:MongoDB支持集群自动分片数据。切分数据可以使用集群存储更多的数据,实现更大的负载,保证存储负载均衡。2、MongoDB适用于网站实时数据处理:非常适合实时插入、更新和查询,具有网站实时数据存储所需的复制性和高扩展性。缓存:适合作为信息基础设施的缓存层。系统重启后,其构建的持久化缓存层可以防止底层数据源过载。高扩展性场景:非常适合由几十台或上百台服务器组成的数据库。不适用的场景如下:对事务性要求高的系统(如银行、会计系统)只能应用于传统业务。跨文档(表)的复杂级联查询。3.MongoDB存储结构逻辑结构:document文档:存储的数据。Collection集合:由多个文档组成,相当于一个表,不同的是集合没有固定的结构。数据库数据库:由多个集合组成的数据库。物理结构:.wt文件:每个表或索引对应一个命名空间,数据量增加,文件数量增加,存储分配和使用的磁盘空间。数据文件:存储数据并使用预分配空间机制的实体。日志文件:系统日志文件、journal日志文件(用于防止MongoDB崩溃恢复)、oplog复制操作日志文件(相当于MySQL的BinLog文件)、慢查询日志(查询操作超过指定时间的语句),物理结构为real数据存储的位置。4.MongoDB数据类型2.部署MongoDB数据库应用主机名操作系统IP地址版本MongoDBCentOS7.4192.168.1.1mongodb-linux-x86_64-rhel70-4.4.5.tgz1.准备系统环境?
