MongoDB简介及基础知识

MongoDB简介

一、MongDB是一个高性能,开源,无模式的文档型NosQL数据库。
主要功能特性:
  1.文件存储格式BSON(一种json的扩展)
  2.模式自由,数据格式不受限了表的结构
  3.支持动态查询
  4.支持完全索引
  5.支持复制(其主从复制)和故障恢复
  6.使用高效的二进制数据存储,包括大型对象
  7.自动处理碎片,以支持云计算层次的扩展。
  8.支持Java、Ruby、Python、C++、PHP等多种语言
  9.内部支持Javascript

二、MongoDB的优势
  1.查询速度快
  2.高并发。可以达到2万个并发。
  3.高容量。支持10TB意思的数据量

三、MongoDB使用场景
  1.网站数据
  2.缓存
  3.大尺寸、低价值的数据
  4.高伸缩的场景
  5.用于对象以及Json数据存储

四、MongoDB的缺点
  1.在32位操作系统上,不支持大于2.5G的数据
  2.单个文件大小限制16M
  3.高度事务的系统
  4.传统商业智能应用

五、MongoDB与其他数据库区别


对比项


Mongodb(非关系型)


MySQL、oracle(关系型)


数据库


数据库(database)


数据库(database)



集合(collection)


二维表(table)


记录


文档(document)


记录(record)


字段


键(key)


列(column)


主外键



Pk、fk


灵活度拓展性


极高


根据其描述,可以大致归纳MongoDB的结果如下图:

六、MongoDB 数据类型
下表为MongoDB中常用的几种数据类型。

数据类型 描述
String 字符串。存储数据常用的数据类型。在 MongoDB 中,UTF-8 编码的字符串才是合法的。
Integer 整型数值。用于存储数值。根据你所采用的服务器,可分为 32 位或 64 位。
Boolean 布尔值。用于存储布尔值(真/假)。
Double 双精度浮点值。用于存储浮点值。
Min/Max keys 将一个值与 BSON(二进制的 JSON)元素的最低值和最高值相对比。
Array 用于将数组或列表或多个值存储为一个键。
Timestamp 时间戳。记录文档修改或添加的具体时间。
Object 用于内嵌文档。
Null 用于创建空值。
Symbol 符号。该数据类型基本上等同于字符串类型,但不同的是,它一般用于采用特殊符号类型的语言。
Date 日期时间。用 UNIX 时间格式来存储当前日期或时间。你可以指定自己的日期时间:创建 Date 对象,传入年月日信息。
Object ID 对象 ID。用于创建文档的 ID。
Binary Data 二进制数据。用于存储二进制数据。
Code 代码类型。用于在文档中存储 JavaScript 代码。
Regular expression 正则表达式类型。用于存储正则表达式。

原文地址:https://www.cnblogs.com/sunziying/p/9028383.html

时间: 2024-11-05 12:24:58

MongoDB简介及基础知识的相关文章

基于C#的MongoDB数据库开发应用(1)--MongoDB数据库的基础知识和使用

在花了不少时间研究学习了MongoDB数据库的相关知识,以及利用C#对MongoDB数据库的封装.测试应用后,决定花一些时间来总结一下最近的研究心得,把这个数据库的应用单独作为一个系列来介绍,希望从各个方面来总结并记录一下这个新型.看似神秘的数据库使用过程.本文是这个系列的开篇,主要介绍一些MongoDB数据库的基础知识.安装过程.基础使用等方面. MongoDB是一款由C++编写的高性能.开源.无模式的常用非关系型数据库产品,是非关系数据库当中功能最丰富.最像关系数据库的数据库.它扩展了关系型

Ant脚本简介与基础知识

转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6624003.html  一:Ant是什么 Ant相当于Linux环境下的shell脚本,只不过是用xml文档来编写的.我们知道,在linux环境中,可以通过编写shell脚本,封装一系列繁琐而日常需要经常重复的操作.在需要进行这些操作时,只需运行这个脚本就可以批处理这些操作了.Ant脚本也是一样,只不过它一般是为了方便Java项目的编译.运行.测试.打包等工作服务的. 我们知道,日常开发工作中,一个项目除了

JavaScript简介及基础知识(1)

1.JavaScript是什么—它是个脚本语言,需要宿主文件,它的宿主文件是html文件. Javascript是一种脚本语言,比HTML要复杂.不过即便你先前不懂编程,也不用担心,因为Javascript写的程序都是以源代码的形式出现的,也就是说你在一个网页里看到一段比较的Javascript代码,恰好你也用得上,就可以直接拷贝,然后放到你的网页中去.正因为可以借鉴.参考优秀网页的代码,所以让Javascript本身也变得非常受欢迎,从而被广泛应用.原来不懂编程的人,多参考Javascript

什么是软件测试?简介,基础知识和重要性

什么是软件测试? 软件测试是检查实际结果是否与预期结果匹配并确保软件系统无系统的活动.它涉及执行软件组件或系统组件以评估一个或多个感兴趣的属性. 软件测试还有助于识别与实际要求相反的错误,缺口或缺少需求,它可以手动完成,也可以使用自动化工具完成.有些人更喜欢将软件测试称为白盒和黑盒测试. 为什么软件测试上很重要? 测试很重要,因为软件错误可能很昂贵甚至很危险.软件漏洞可能会导致货币和人员损失,历史上充满了这样的例子. 2015年4月,由于软件故障导致金融市场上超过30万交易商受到影响,伦敦彭博终

MongoDB基础知识 01

MongoDB基础知识  1. 文档  文档是MongoDB中的数据的基本单元,类似于关系型数据库管理系统的行. 文档是键值对的一个有序集.通常包含一个或者多个键值对. 例如: {”greeting" : "Hello, world!", "foo", 3} 2. 集合(collection) 集合就是一组文档,类似关系型数据库中的一张表. 3. 数据库(database) 多个文档组成集合,多个集合组成数据库.一个MongoDB实例可以承载多个数据库.

C# 基础知识 (四).C#简介及托管代码

        暑假转瞬即逝,从10天的支教生活到1周的江浙沪旅游,在这个漫长的暑假中我经历了很多东西,也学到了很多东西,也认识到了很多不足之处!闲暇之余我准备重新进一步巩固C#相关知识,包括C#入门知识.C#并行开发.ASP网站等.这篇文章我介绍的是书籍--C#入门经典(Beginning C#) 作者Karli Watson.主要包括的是我自己缺乏的一些C#简介知识和托管代码的内容.内容比较简单,参照该书籍较多,相当于自己的在线笔记!                             

PL/SQL 基础知识简介

1.PL/SQL代码块 PL/SQL 代码块是指令的集合,支持所有的DML,NDS,DBMS_SQL,DDL. :DML 是数据操纵语言(Data Manipulation Language)包括,Insert ,update,delete : DDL是数据定义语言(Data Definition Language ),包括,Alter,create,drop,truncate,Grant,revoke : NDS本地动态SQL(Native Dynamic SQL) 2.PL/SQL代码块结构

SQL Server之 (一) 数据库简介 SQL Server环境配置 数据库基础知识

   前言 这个是我工作两年多后,再次从最基础的SQL入门开始,认真的学一遍SQL Server,捡漏和巩固都有;因为自己刚开始学的时候,总是心烦气躁,最近换工作,发现1到2年经验,问到基础性的东西还是很多,这个时候需要的是扎实的基础功夫,所以一系列打击+反省后,自己节假日在家从最基础重新认识一下SQL Server,继续沉淀一下.哪里有不对或需深入探讨,请直接留言或者小窗我;欢迎~ (一) 数据库简介   SQL Server环境配置   数据库基础知识 1.什么是数据库,数据库有哪些特点,为

MongoDB基础知识

一.基本操作 1)创建 > post={"title":"MyBlog Post", "content":"Here's my blog post.", "date":new Date()} > db.blog.insert(post) 2)查看 > db.blog.find()或者 db.blog.findOne() 3)更新 > post.comments = [] > d