MongoDB 是一个基于分布式文件存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB服务端可运行在Linux、Windows或IOS平台,支持32位和64位应用,默认端口为27017。推荐运行在64位平台,因为MongoDB在32位模式运行时支持的最大文件尺寸为2GB,64位平台则非常大。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库中功能最丰富,最像关系数据库的。
Mongo 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
mongodb中有三种元素:数据库(database),集合(collection),文档(document),其中“集合” 对应关系数据库中的“表”,“文档”对应关系数据库的“行”。
mongoDB 是文档数据库, 面向集合(collection)的数据库。
集合可以看作没有模式的表。
文档可以是MongoDB的核心概念。文档可以是任意的数据结构形式。
一个mongoDB 实例支持多个数据库(database)。
mongoDB自带简洁但功能强大的Javascript Shell。
存储的数据是K-V的组合,值可以是数据类型集合里的任意类型,包括数组和文档,这个数据格式称为BSON,即“Binary Serialized dOcument Notation”(二进制序列化文档)
文档(document)、集合(collection)、数据库(database)的层次结构如下图:
1) 特点:高性能、易部署、易使用,存储数据非常方便。
2) 功能:
面向集合存储,易存储对象类型的数据;
支持动态查询,支持完全索引,包含内部对象;
支持复制和故障恢复;
使用高效的二进制数据存储,包括大型对象(如视频等);
自动处理碎片,以支持云计算层次的扩展性。
3) 数据格式:支持的数据结构非常松散,是类似json的bson格式,可以存储比较复杂的数据类型。
MongoDB与关系型数据库逻辑结构的对比
MongoDB 适用场景
网站数据: MongoDB 非常适合实时的插入,更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。
缓存: 由于性能很高,MongoDB也适合作为信息基础设施的缓存层。在系统重启之后, 由MongoDB搭建的持久化缓存层可以避免下层的数据源过载。
大尺寸,低价值的数据: 使用传统的关系型数据库存储一些数据时可能会比较昂贵,在此之前,很多时候程序员往往会选择传统的文件进行存储。
高伸缩性的场景: MongoDB非常适合由数十或数百台服务器组成的数据库。MongoDB 的路线图中已经包含对MapReduce引擎的内置支持。
用于对象及JSON数据的存储: MongoDB的BSON数据格式非常适合文档化格式的存储及查询。
综上所述, MongoDB适合的应用场景:
1.大数据量查询和汇总。
2.分布式部署,和水平扩展。
MongoDB适合用于数据统计汇总,做业务数据库,替代Mysql。
3. 位置附近搜索服务。
不适用场景:
高度事务性的系统。
传统的商业智能应用。
极为复杂的SQL查询。
相关推荐
MongoDB是一种流行的开源、分布式文档型数据库,专为现代应用程序设计,强调数据的灵活性、可扩展性和高性能。作为NoSQL数据库的一员,它摒弃了传统的关系型数据库模式,提供了更简便的方式来存储和处理大规模的数据...
### MongoDB介绍及环境搭建 #### MongoDB概述 MongoDB是一种非关系型、无模式的文档型数据库,被广泛应用于现代Web应用程序开发中。相比于传统的关系型数据库,MongoDB提供了更高的性能、可靠性和扩展性。 - **高...
### MongoDB介绍及应用价值 #### 一、MongoDB概述 MongoDB是一款面向现代应用程序的敏捷且可扩展的文档型数据库。作为一款通用目的的开源文档数据库,MongoDB因其灵活的数据模型、高性能以及易于扩展的特点而受到...
### MongoDB介绍和副本集群搭建 #### 一、MongoDB基础 **1.1 简介** MongoDB 是一个基于分布式文件存储的开源 NoSQL 数据库系统,它使用C++语言编写,支持面向文档的存储方式,使得数据的存储与查询变得简单且...
### MongoDB介绍与使用文档 #### mongoDB概述 MongoDB是一个介于关系数据库和非关系数据库之间的产品,它属于NoSQL数据库的一种,具有高度灵活性和强大的查询能力。与传统的关系型数据库相比,MongoDB采用了面向...
MongoDB介绍、安装、使用,详细介绍了改数据库的操作,很有用的
MongoDB介绍及开发指南。 特性介绍: 1. 基于分布式文件存储的数据库、介于关系数据库和非关系数据库之间的产品,支持对数据建立索引 2. 支持数据格式:bson格式(Binary JSON,类似json,无Date和BinData类型),...
mongodb关于数据的介绍
### MongoDB与NoSQL运动简介 #### NoSQL运动的定义与特点 在理解MongoDB之前,首先需要了解NoSQL运动的概念及其重要性。NoSQL(Not Only SQL)运动是指一类非关系型数据库系统的统称,这类系统主要针对大规模数据...
接下来,我们将介绍MongoDB的安装步骤: 1. **下载安装包**:访问MongoDB官网(https://www.mongodb.com/download-center/community),根据操作系统选择相应的版本。 2. **安装过程**:对于Windows,通常是一个...
MongoDB是一种分布式文档数据库,是NoSQL数据库的一种,它以其灵活性、高性能和可扩展性而闻名。MongoDB采用JSON格式存储数据,这种格式被称为BSON(Binary JSON),它结合了JSON的易读性和二进制数据的效率。...
MongoDB 是一个高性能、开源、无模式的分布式文档型数据库,由 C++ 语言编写,设计目标是为了处理海量数据,并提供高可用性和可扩展性。MongoDB 的主要特点包括其面向集合、文档存储的特性,高效二进制数据存储以及...
4. MongoDB介绍: MongoDB是一种面向文档(Document)的NoSQL数据库,支持多平台如Windows、Linux、Mac OS X、FreeBSD等,并且其核心是用C++实现的Solaris。MongoDB提供多语言驱动支持,包括Ruby/Ruby-on-Rails、Java...
2. **安装与配置**:"MongoDB介绍和安装"这部分内容可能涉及如何在不同的操作系统上安装MongoDB,如Windows、Linux和macOS。Windows用户可能需要安装MSU(Microsoft Update)文件,例如`Windows6.1-KB2731284-v3-x64...
**第1讲:MongoDB介绍与安装** - MongoDB的历史背景和发展现状。 - MongoDB的特点及其与其他数据库系统的区别。 - 在Windows/Linux/MacOS上安装MongoDB的方法。 - 启动与停止MongoDB服务的基本命令。 **第2讲:...
MongoDB 数据库介绍、安装、使用 MongoDB 数据库是当前最流行的 NoSQL 数据库之一,以其灵活的数据模型、高速的读写性能和强大的扩展性而闻名。下面是 MongoDB 数据库的详细介绍、安装和使用方法。 数据库和文件...
MongoDB 数据库介绍、安装与使用 MongoDB 是一种流行的开源文档数据库,属于 NoSQL 数据库的一种。NoSQL 数据库与传统的 SQL 关系型数据库相比,具有不同的特性和优势,尤其在处理非结构化或半结构化数据、高并发...
"Mongodb介绍.mht" 和 "MongoDB入门简介.mht" 是针对初学者的快速入门教程,它们通常会概述MongoDB的核心概念,如文档、集合、数据库,以及如何创建、读取、更新和删除数据(CRUD操作)。这些教程还会讲解如何安装...
- **MongoDB-A Developer's Tour**:开发者视角下的 MongoDB 介绍。 - **Updates**:版本更新日志。 - **Structuring Data for Mongo**:数据结构设计。 - **Design Overview**:设计概述。 - **Document-...