MongoDB简介

发布时间:2018-11-15  栏目:NoSQL  评论:0 Comments

一、什么是MongoDB

什么是MongoDB ?

MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。

每当青出于蓝负荷的状态下,添加更多之节点,可以确保服务器性能。

MongoDB 旨在为WEB应用提供可扩大的大性能数据存储解决方案。

MongoDB
将数据存储吗一个文档,数据结构由键值(key=>value)对构成。MongoDB
文档类似于 JSON 对象。字段值可以分包其他文档,数组及文档数组。

图片 1 


  MongoDB是由C++编写的,是一个因分布式文件存储的开源数据库系统

一言九鼎特点

  • MongoDB的供了一个面向文档存储,操作起来比较简单和容易。
  • 而可于MongoDB记录被装置任何性质的索引
    (如:FirstName=”Sameer”,Address=”8 Gandhi Road”)来促成重复快的排序。
  • 公可经过地方或网络创建数量镜像,这令MongoDB有重胜的扩展性。
  • 倘负载的充实(需要再行多的囤积空间和再次胜似之处理能力)
    ,它好分布在微机网络中之另外节点上立刻就算是所谓的分片。
  • Mongo支持添加的询问表达式。查询指令以JSON形式的标志,可自由查询文档中内嵌的对象与数组。
  • MongoDb
    以update()命令可以实现替换完成的文档(数据)或者有点名的数目字段
  • Mongodb中的Map/reduce主要是因此来对数据开展批量处理和聚众操作。
  • Map和Reduce。Map函数调用emit(key,value)遍历集合中持有的记录,将key与value传给Reduce函数进行处理。
  • Map函数和Reduce函数是以Javascript编写的,并得以透过db.runCommand或mapreduce命令来实施MapReduce操作。
  • GridFS是MongoDB中之一个放功能,可以用于存放大量稍稍文件。
  • MongoDB允许以服务端执行脚本,可以用Javascript编写某个函数,直接当服务端执行,也足以把函数的概念存储于服务端,下次径直调用即可。
  • MongoDB支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C#对等多种语言。
  • MongoDB安装简便。

 


史 2007年10月,MongoDB由10gen团队所发展。2009年2月头推出。

  • 2012年05月23日,MongoDB2.1 开发分支发布了!
    该版采用新架构,包含众多加强。
  • 2012年06月06天,MongoDB 2.0.6 发布,分布式文档数据库。
  • 2013年04月23日,MongoDB 2.4.3
    发布,此版包括了一部分特性优化,功能增强和bug修复。
  • 2013年08月20日,MongoDB 2.4.6 发布,建议利用最新的安定团结版。

 


  于赛负荷的图景下,添加更多之节点,可以包服务器的性能

MongoDB 下载

乃可以mongodb官网下充斥该装置包,地址为: http://www.mongodb.org/downloads。MonggoDB支持以下平台:

  • OS X 32-bit
  • OS X 64-bit
  • Linux 32-bit
  • Linux 64-bit
  • Windows 32-bit
  • Windows 64-bit
  • Solaris i86pc
  • Solaris 64

 


  MongoDB为web应用提供可扩大的大性能数据存储解决方案

MongoDB 工具

生几乎种植而用于MongoDB的管理工具。

二、MongoDB特点 

监控

MongoDB提供了网和系统监控工具Munin,它看成一个插件应用叫MongoDB中。

Gangila是MongoDB高性能的系统监视的家伙,它当做一个插件应用为MongoDB中。

冲图形界面的开源工具 Cacti, 用于查看CPU负载,
网络带富利用率,它也供了一个使叫监控 MongoDB 的插件。

  1、MongoDB提供了一个面向文档存储,基本思路是以本来的“行”的概念换成了越发领过的“文档”模型,一长达记下得表示非常复杂的层次关系
  2、MongoDB支持添加的查询表达式,查询指令是json形式的标志,可以随意查询文档中嵌套的对象和列表
  3、非常容易扩展,扩展集群后还得兑现集众多中之数目的载荷均衡。
  4、MongoDB支持各种编程语言,比如python、Java、c++、c、php、c#、ruby、JavaScript等
  5、丰富的效应,包括索引、存储JavaScript、聚合、固定集合、文件存储等功效
  6、方便管理,处理启动数据库服务外,记了没有其它什么必要的操作。管理集群只待知道发生哪个新增的节点即可,自动连续和安排新节点

GUI

  • Fang of Mongo – 网页式,由Django和jQuery所构成。
  • Futon4Mongo – 一个CouchDB Futon web的mongodb山寨版。
  • Mongo3 – Ruby写成。
  • MongoHub – 适用于OSX的应用程序。
  • Opricot – 一个根据浏览器的MongoDB控制台, 由PHP撰写而变成。
  • Database Master — Windows的mongodb管理工具
  • RockMongo — 最好的PHP语言的MongoDB管理工具,轻量级, 支持多国语言.

 


三、MongoDB概念

MongoDB 应用案例

脚罗列部分合作社MongoDB的骨子里利用:

  • Craiglist上行使MongoDB的存档数十亿长记下。
  • FourSquare,基于位置的社交网站,在Amazon
    EC2的服务器上使MongoDB分享数据。
  • Shutterfly,以互联网为根基的社会及个人出版服务,使用MongoDB的各种持久性数据存储的要求。
  • bit.ly, 一个根据Web的网址缩短服务,使用MongoDB的积存自己的数目。
  • spike.com,一个MTV网络的联营合作社, spike.com使用MongoDB的。
  • Intuit公司,一个吗小企业以及私家的软件和服务提供商,为小型企业使用MongoDB的跟用户之数。
  • sourceforge.net,资源网站物色,创建及宣告初步源软件免费,使用MongoDB的后端存储。
  • etsy.com ,一个市和贩卖手工做物品网站,使用MongoDB。
  • 纽约时报,领先的在线资讯门户网站之一,使用MongoDB。
  • CERN,著名的粒子物理研究所,欧洲核子研究中心大型强子对撞机的多少以MongoDB。

  以MongoDB中的基本概念是文档、集合、数据库

  数据库:

    *  一个MongoDB可以成立多只数据库

    *  MongoDB的默认数据库是‘db’,该数据库在data目录

    * 
MongoDB的单个实例可以容纳多独独立数据库,每一个数据库都有谈得来聚集和权力,不同数据库放在不同之文书中

    数据库命名规则:

    数据库名好是好满足以下规则的任意UTF-8字符串

      -  不能够是空字符串(“”)

      -  不得含有‘ ’(空格)、$、/、\和\0.

      -  应该尽大写

      -  最多64字节

    有部分数据库名是保留的,可以一直看这些发生特殊作用的数据库。

      admin:从权力的角度看,这个是’root’数据库。要是以一个用户增长到是数据库,这个用户自行连续所有的数据库的权杖。一些一定的服务器命令也只好从夫数据库运行,比如列出所有的数据库或者关闭数据库。

      local:这个数目永远不会见于复制,可以为此来囤积限于本地单台服务器的即兴集合

      config:当MongoDB用于分片设置时,config数据库在里边以,用于存储分片的相关消息。

  文档:

    文档相当给Mysql的数据行。文档是同组键值对(BSON)。MongoDB的文档不需要设置同一之字段,并且相同字段不欲同的数据类型

    例如:{“name”:”月光男神”, “age”:”18″}

    注意:

      1、文档中之键值对是一动不动的

      2、文档中之价不仅可以是当双引号的字符串,还可以是另外数据类型

      3、MongoDB区分类型和大小写

      4、MongoDB的文档不克出重复的键

      5、文档的键是字符串,除了少数例外情况,键可以下任意UTF-8字符

    文档键命名规范:

      1、键不克含有\0(空字符)。这个字符用来代表键的末段

      2、.和$有特别之义,只有在特定环境下才会采取

      3、以”_”开头的键是保留的

  集合

    集合相当给mysql中之申,集合有被数据库被,集合没有固定结构,可以插不同类别以及格式的数目。

    集合命名规范:

      集合名不克是空字符串。

      集合名不能够含有\0字符(空字符),这个字符集表示集合名的末尾。

      集合名不克坐“system”开头,这是啊系统集结保留的前缀

      用户创建的集的讳不能够含有保留字符。千万不要出现$。

 

留下评论

网站地图xml地图