• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > 什么是mongoDB数据库

什么是mongoDB数据库

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了mongoDB,数据库,什么等相关知识,希望本文的分享对您有所帮助
作为一名程序员,我相信大家都要接触数据库,对于mysql和mongoDB也有相对的认识,对于mysql我们已经很了解了,现在我们就来简单说说mongoDB数据库。

MongoDB是一个基于分布式文件存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

mongoDB数据库的特点:

高性能、易部署、易使用,存储数据非常方便。主要功能特性有:

*面向集合存储,易存储对象类型的数据。

所谓"面向集合"(Collection-Oriented),意思是数据被分组存储在数据集中,被称为一个集合(Collection)。每个集合在数据库中都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库(RDBMS)里的表(table),不同的是它不需要定义任何模式(schema)。Nytro MegaRAID技术中的闪存高速缓存算法,能够快速识别数据库内大数据集中的热数据,提供一致的性能改进。

*模式自由(schema-free)。

采用无模式结构存储,意味着对于存储在mongodb数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构的文件存储在同一个数据库里。采用无模式存储数据是集合区别于RDBMS 中的表的一个重要特征。

*支持动态查询。

*支持完全索引,包含内部对象。

可以在任意属性上建立索引,包含内部对象。MongoDB的索引和RDBMS 的索引基本一样,可以在指定属性、内部对象上创建索引以提高查询的速度。除此之外,MongoDB 还提供创建基于地理空间的索引的能力。

*支持查询。

MongoDB 支持丰富的查询操作,MongoDB 几乎支持SQL中的大部分查询。

*支持复制和故障恢复。

MongoDB 支持主从复制机制,可以实现数据备份、故障恢复、读扩展等功能。而基于副本集的复制机制提供了自动故障恢复的功能,确保了集群数据不会丢失。

*使用高效的二进制数据存储,包括大型对象(如视频等)。

使用二进制格式存储,可以保存任何类型的数据对象。

*自动处理碎片,以支持云计算层次的扩展性。

*支持RUBY,PYTHON,JAVA,C++,PHP,C#,Perl,JavaScript等多种语言。

MongoDB 提供了当前所有主流开发语言的数据库驱动包,开发人员使用任何一种主流开发语言都可以轻松编程,实现访问MongoDB 数据库。

*文件存储格式为BSON(一种JSON的扩展)。

BSON 是对二进制格式的JSON 的简称,BSON 支持文档和数组的嵌套。

*可通过网络访问。

可以通过网络远程访问MongoDB 数据库。

*强大的聚合工具

MongoDB 除了提供丰富的查询功能外,还提供强大的聚合工具,如count、group 等,支持使用MapReduce 完成复杂的聚合任务。

MongoDB 除了提供丰富的查询功能外,还提供强大的聚合工具,如count、group 等,支持使用MapReduce 完成复杂的聚合任务。

MongoDB 主要应用场景有:

(1)网站实时数据处理。它非常适合实时的插入、更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。

(2)缓存。由于性能很高,它适合作为信息基础设施的缓存层。在系统重启之后,由它搭建的持久化缓存层可以避免下层的数据源过载。

(3)高伸缩性的场景。非常适合由数十或数百台服务器组成的数据库,它的路线图中已经包含对MapReduce引擎的内置支持。

(4)大尺寸、低价值的数据,使用传统的关系型数据库存储一些数据时可能会比较昂贵,在此之前,很多时候程序员往往会选择传统的文件进行存储。

不适用的场景如下:

(1)要求高度事务性的系统,例如,银行或会计系统。传统的关系型数据库目前还是更适用于需要大量原子性复杂事务的应用程序。

(2)传统的商业智能应用,例如针对特定问题的BI 数据库会产生高度优化的查询方式。对于此类应用,数据仓库可能是更合适的选择。

(3)复杂的跨文档(表)级联查询。

以上内容就是关于mongoDB数据库的简单介绍,希望大家对mongoDB数据库有所掌握。

相关推荐:

laravel使用mongodb数据库的方法教程

phpstudy如何扩展MongoDB

燕十八mongodb视频资料分享

以上就是什么是mongoDB数据库的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • MongoDB中常用的语句总结
  • MongoDB导入json数据的方法
  • MongoDB提升性能的方法总结
  • 什么是MongoDB?MongoDB简介
  • 什么是mongoDB数据库
  • 黑马云课堂mongodb实操视频的源码课件推荐
  • 燕十八mongodb视频资料分享
  • 分享用MongoDB中oplog机制实现数据监控实例
  • 详细介绍MongoDB常用的操作
  • mongoDB是怎么实现分页的?

相关文章

  • 2017-05-11MySQL获取系统性能和状态代码
  • 2018-12-05mysql如何获取规定时间段内的统计数据的代码详解
  • 2018-12-05ORA-12514及ORA-28547错误解决方案
  • 2017-05-11MySQL随机查询记录的效率测试分析
  • 2018-12-05MySQL插入生僻字失败的处理方法(图)
  • 2017-05-11mysql ON DUPLICATE KEY UPDATE语句示例
  • 2018-12-05tpcc-mysql安装测试与使用的实例教程
  • 2018-12-05使用mysql_fetch_object()函数获取结果集中一行作为对象(PHP操作MySQL数据库的方法五)
  • 2018-12-05在 SQLSERVER 中快速有条件删除海量数据
  • 2018-12-05mysql日期和时间类型

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • Mysql使用索引实现查询优化_MySQL
    • SQL2005 存储过程解密方法
    • 有关decimal类型的文章推荐10篇
    • mysql手动删除BINLOG的方法
    • INSERT INTO SELECT语句与SELECT INTO FROM语句的一些区别
    • CentOS中Mysql安装方法
    • 非关系型数据库mongodb入门(一步一步 版)
    • MySQL 多表查询实现分析
    • mysql进阶(八)怎么对varchar类型排序问题
    • Mysql中的join操作详解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有