当前位置:首页 > database > 正文内容

什么是MongoDB

淙嶙5年前 (2020-07-28)database1134

MongoDB是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的请客下,添加更多的节点,可以保证服务器的性能. MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB将数据存储为一个文档,数据结构由键值对(key=>value)组成. MongoDB文档类似于JSON对象. 字段值可以包含其他文档,数组及文档数组.

{
    name: "sue",
    age: "18",
    status: "200",
    groups: ["news","sports"]
}

主要特点:

  • MongoDB是一个面向文档存储的数据库,操作起来比较简单和容易.
  • 可以在MongoDB记录中设置任何属性的索引(如: FirstName=”Sameer”,Address=”8 Gandhi Road”)来实现更快的排序.
  • 通过本地或网络创建数据镜像,使MongoDB有更强的扩张性.
  • 支持丰富的查询表达式.查询指令使用JSON形式的标记,可轻易的查询文档中内嵌的对象及数组.
  • 可以使用update()命令实现替换文档或指定的数据字段
  • Map/Reduce主要是用来对数据进行批量处理和聚合操作
  • Map函数和Reduce函数使用js编写的,并可以通过db.runCommand或mapreduce命令执行MapReduce操作
  • GridFS是MongoDB中内置功能,可以用于存放大量的小文件
  • mongoDB允许在服务器端执行脚本,可以用JS编写某个函数,直接在服务器端执行,也可以把函数的定义存储在服务端,下次直接调用.
  • 支持的编程语言: Ruby,Python,Java,C++,Php,C#等.

MongoDB的管理工具

有几种可用于MongoDB的管理工具

  • 监控 MongoDB提供了网络和系统监控工具Munin,它作为一个插件应用于MongoDB中. Gangila是MongoDB高性能的系统监视的工具,作为一个插件应用于MongoDB中. 基于图形界面的开源工具Cacti,用于查看CPU负载,网络带宽利用率,它也提供了一个应用于监控MongoDB的插件.
  • 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中基本的概念是文档、集合、数据库 数据库一个mongodb中可以建立多个数据库。 MongoDB的默认数据库为”db”,该数据库存储在data目录中。 Mong...

MongoDB命令

MongoDB命令

创建库:use myMongo1如果数据库不存在,则创建数据库,否则切换到指定数据库。 查看库:show dbs 删除库:db.dropDatabase() 创建集合:db.createColl...

MongoDB Map Reduce

MongoDB Map Reduce

Map-Reduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE).MongoDB提供的Map—Reduce非常灵活,对于大规模数据分...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。