深入了解MongoDB:灵活的文档型数据库与应用案例

什么是MongoDB ?

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

在高负载的情况下,添加更多的节点,可以保证服务器性能。

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

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

主要特点

  • MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易。
  • 你可以在 MongoDB 记录中设置任何属性的索引 (如:FirstName="Sameer",Address="8 Gandhi Road") 来实现更快的排序。
  • 你可以通过本地或者网络创建数据镜像,这使得 MongoDB 有更强的扩展性。
  • 如果负载的增加(需要更多的存储空间和更强的处理能力),它可以分布在计算机网络中的其他节点上,这就是所谓的分片。
  • MongoDB 支持丰富的查询表达式。查询指令使用 JSON 形式的标记,可轻易查询文档中内嵌的对象及数组。
  • ...

历史

  • 2007年10月,MongoDB 由10gen团队所发展。2009年2月首度推出。
  • 2012年05月23日,MongoDB 2.1 开发分支发布了!该版本采用全新架构,包含诸多增强。
  • 2012年06月06日,MongoDB 2.0.6 发布,分布式文档数据库。
  • 2013年04月23日,MongoDB 2.4.3 发布,此版本包括了一些性能优化,功能增强以及 bug 修复。
  • ...

MongoDB 下载

你可以在 MongoDB 官网下载该安装包,地址为:https://www.mongodb.com/download-center#community。MonggoDB 支持以下平台:

  • OS X 32-bit
  • OS X 64-bit
  • Linux 32-bit
  • ...

语言支持

MongoDB 有官方的驱动如下:

  • C
  • C++
  • C# / .NET
  • Erlang
  • ...

MongoDB 工具

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

监控

  • MongoDB 提供了网络和系统监控工具 Munin,它作为一个插件应用于 MongoDB 中。
  • ...

GUI

  • Fang of Mongo -- 网页式,由 Django 和 jQuery 所构成。
  • ...

MongoDB 应用案例

下面列举一些公司 MongoDB 的实际应用:

  • Craiglist上使用MongoDB的存档数十亿条记录。
  • FourSquare,基于位置的社交网站,在Amazon EC2的服务器上使用MongoDB分享数据。
相关推荐
minji...几秒前
MySQL数据库 (七) MySQL表的基本查询(上),insert、replace、select、where、order by
数据库·mysql·select·replace·insert·order by·where
金融RPA机器人丨实在智能5 分钟前
数据库运维Agent比价指南:国产自研产品适配国产数据库兼容性更好吗?
运维·数据库·人工智能·ai
IT策士7 分钟前
Redis 从入门到精通:持久化RDB 与 AOF
数据库·redis·缓存
gerrywhu1 小时前
【应用实践】PostGIS实现NDVI计算与植被覆盖分级统计分析-以武汉市2025年为例
数据库·postgis·栅格数据分析·st_mapalgebra·ndvi计算·植被覆盖分级统计·植被覆盖计算
QiLinkOS1 小时前
极客与商业思维的融合实践(1)
c语言·数据库·c++·人工智能·算法·开源协议
chushiyunen1 小时前
高斯数据库笔记、gaussDb
数据库·笔记
ZengLiangYi1 小时前
本地向量数据库选型:vectra vs chroma vs hnswlib
javascript·数据库·后端
TDengine (老段)2 小时前
TDengine 逻辑计划生成 — 从 AST 到关系代数算子树
大数据·数据库·物联网·wpf·时序数据库·tdengine·涛思数据
折戟不必沉沙2 小时前
mysql忘记密码
数据库·mysql
聪明努力的积极向上2 小时前
【claude code】MySQL MCP 配置完整指南
数据库·mysql·ai编程