深入浅出MongoDB(二)概述

        上次的博文深入浅出MongoDB(一)NoSQL中我们已经简单介绍了一下NoSQL的基本概念,这次我们来了解一下MongoDB的相关概念。 

1、简介

        MongoDB是一款由C++编写的高性能、开源、无模式的常用非关系型数据库产品,是非关系数据库当中功能最丰富、最像关系数据库的数据库。它扩展了关系型数据库的众多功能,例如:辅助索引、范围查询、排序等。 

2、功能特性

        MongoDB主要解决的是海量数据的访问效率问题,它作为分布式数据崛起后,使用较多的一款非结构数据库,必然有其值得称道之处,它的主要功能特性如下:

        面向集合的存储,适合存储对象及JSON形式的数据。
        动态查询,MongoDB支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
        完整的索引支持,包括文档内嵌对象及数组。MongoDB的查询优化器会分析查询表达式,并生成一个高效的查询计划。
        查询监视,MongoDB包含一个监视工具用于分析数据库操作的性能。
        复制及自动故障转移,MongoDB数据库支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。复制的主要目标是提供冗余及自动故障转移。
        高效的传统存储方式,支持二进制数据及大型对象(如图片或视频)。
        自动分片以支持云级别的伸缩性,自动分片功能支持水平的数据库集群,可动态添加额外的机器。 

3、适用场景

        对于MongoDB实际应用来讲,是否使用MongoDB需要根据项目的特定特点进行一一甄别,这就要求我们对MongoDB适用和不适用的场景有一定的了解。

        根据MongoDB官网的说明,MongoDB的适用场景如下:

        网站实时数据:MongoDB非常适合实时的插入,更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。
        数据缓存:由于性能很高,MongoDB也适合作为信息基础设施的缓存层。在系统重启之后,由MongoDB搭建的持久化缓存层可以避免下层的数据源过载。
        大尺寸、低价值数据存储:使用传统的关系型数据库存储一些数据时可能会比较昂贵,在此之前,很多时候程序员往往会选择传统的文件进行存储。
        高伸缩性场景:MongoDB非常适合由数十或数百台服务器组成的数据库。MongoDB的路线图中已经包含对MapReduce引擎的内置支持。
        对象或JSON数据存储:MongoDB的BSON数据格式非常适合文档化格式的存储及查询。

4、不适用场景

        了解了MongoDB适用场景之后,还需要了解哪些场景下不适合使用MongoDB,具体如下:

        高度事务性系统:例如银行或会计系统。传统的关系型数据库目前还是更适用于需要大量原子性复杂事务的应用程序。
        传统的商业智能应用:针对特定问题的BI数据库会对产生高度优化的查询方式。对于此类应用,数据仓库可能是更合适的选择。
        需要复杂SQL查询的问题。 

        相信通过上面的说明,你已经大致了解了MongoDB的使用规则,需要说明一点的是,MongoDB不仅仅是数据库,更多的使用是将MongoDB作为一个数据库中间件在实际应用中合理划分使用细节,这一点对于MongoDB应用来讲至关重要!

 

        到此为止,对MongoDB整体概念的解释就结束了,关于MongoDB更多的学习需要读者进行相关的实践,接下来文章我会对MongoDB的常规操作和一些细节性说明进行讲解,敬请期待!

转载于:https://www.cnblogs.com/zs234/p/3388065.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/493727.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Fater R-CNN 整体把握

在R-CNN中提到过,候选区域的提取和之后的目标检测其实是独立的,所以我们可以使用任意的算法如SS。Fast-RCNN改进的是目标检测部分,但是其实候选区域的提取也挺费时的,Faster R-CNN就把改进方向放在了这里。 我们已经领略到了CNN的…

马斯克,特斯拉首席小白鼠

来源:量子位伊隆马斯克,比你想的还要激进。作为特斯拉CEO,马斯克经常一边自己坐在Model S上,一边召开电话会议。车辆的驾驶交给Autopilot,也就是那个时不时会出次意外的自动驾驶系统。他这么做不仅仅是想节约时间&…

每天进步一点点:andriod学习从零开始

第一章 前引 滚滚长江东逝水   浪花淘尽英雄   是非成败转头空   青山依旧在   几度夕阳红   白发渔樵江渚上   惯看秋月春风   一壶浊酒喜相逢   古今多少事   都付笑谈中   智能的机操作系统经过多盘厮杀,到现在形成了三足鼎…

windows下caffe+CPUOnly实现MNIST手写分类

工具下载 微软官方移植的Caffe&#xff1a;https://github.com/Microsoft/caffe 对属性表的操作需要把实例属性表的后缀改成vs可用的.props 打开同一个文件夹下的Caffe.sln&#xff0c;查看其中的属性表<CpuOnlyBuild>true</CpuOnlyBuild><UseCuDNN>false<…

Yann LeCun专访:我不觉得自己有天分,但是我一直往聪明人堆里钻

来源&#xff1a;AI 科技评论摘要&#xff1a;纽约大学教授、Facebook 副总裁与首席 AI 科学家 Yann LeCun 由于对深度学习的突出贡献&#xff0c;被誉为深度学习的「三驾马车」之一&#xff0c;更被称为「CNN」之父。Yann LeCun 也一直非常活跃&#xff0c;发论文、教学、创立…

任务分配调整

在经过新一轮分工讨论后&#xff0c;我们将我们最初的分工做了一次更新。截图于此。但是同样&#xff0c;基于敏捷开发的原则&#xff0c;任务将会在过程中为适应遇到的情况而不断更新。 请大家及时完成各自任务&#xff0c;并每天22点之前在tfs上更新完毕&#xff0c;同时将当…

以LeNet-5为例理解CNN

在用caffe实现对MNIST手写数字分类的过程中发现利用的网络是LetNet-5.决定从这个网络入手好好认识一下CNN。 LeNet-5早在1998年就出现了&#xff08;5表示5层模型&#xff09;&#xff0c;标志着CNN的诞生。以其作者YannLeCun的名字命名。但是却没有得到广泛的应用&#xff0c;…

设置IE默认文本模式的方法

设置IE默认文本模式的方法 <meta http-equiv"X-UA-Compatible" content"IE8" /> IE5、6、7等都可以&#xff0c; 如果要让IE浏览器默认以最高级别文本模式显示&#xff0c;设置 IEedge 转载于:https://www.cnblogs.com/wshiqtb/p/3393653.html

任正非最新谈话:直到2006年,我才真正抛弃自杀的念头

来源&#xff1a;世界科技创新论坛摘要&#xff1a;日前&#xff0c;一份任正非会见索尼CEO吉田宪一郎会谈纪要流出&#xff0c;这份纪要以吉田宪一郎发问任正非的视角&#xff0c;揭开了不少华为鲜为人知的故事&#xff0c;其中涉及华为的管理、创业之初的故事&#xff0c;还有…

LeNet网络配置文件 lenet_train_test.prototxt

.prototxt文件 定义了网络的结构&#xff0c;我们可以通过它了解网络是如何设计的&#xff0c;也可以建立属于自己的网络。这种格式来源于Google的Protocol Buffers&#xff0c;后来被开源&#xff0c;主要用于海量数据存储、传输协议格式等场合。https://blog.csdn.net/liuyuz…

现有代码移植到Metro App

现有代码移植到Metro App 一&#xff1a;工程配置 配置WinRT工程时要注意以下几点&#xff1a; 静态库工程General里的“Windows Store App Support”设成trueC\General下面的“Consume Windows Runtime Extension”设成Yes&#xff0c;设置该选项的目的是&#xff1a;引入Micr…

前沿 | 历时十二年!曼彻斯特百万级神经元的类脑超算终开启

具有百万处理器内核的「脉冲神经网络架构」或 SpiNNaker&#xff0c;每秒能完成约 200 兆次运算。来源&#xff1a;机器之心摘要&#xff1a;这台世界最大的神经形态超级计算机由曼彻斯特大学计算机科学学院设计和制造&#xff0c;它被设计和制造成与人脑相同的工作方式&#x…

Caffe中的卷积实现

https://www.zhihu.com/question/28385679 https://github.com/Yangqing/caffe/wiki/Convolution-in-Caffe:-a-memo 作者贾扬清亲自解释了这个问题。Caffe框架是他在研究生毕业毕业前两个月的时间写的&#xff0c;自然有一些缺点&#xff08;占用内存方面&#xff09;。其实卷积…

Oracle使用goldengate分别向Oracle和mysql双路的单向复制

一.Oracle分别向Oracle和mysql双路的单向复制是在&#xff1a; ORACLE-mysql的单向复制基础上做的。http://blog.csdn.net/q947817003/article/details/13294937 二.分别再在ORACLE主库及ORACLE目标库上增加相应进程 ORACLE源端增加&#xff1a; 1.增加配置extract进程 按顺序…

小程序创业:新金矿、野望与焦虑

来源&#xff1a;视觉中国摘要&#xff1a;小程序正在带来新的红利&#xff0c;互联网上的生意可以再做一遍&#xff1f;张远想要尽可能地保持低调&#xff0c;但现在这个愿望正在变得越来越难。在最近几个月阿拉丁小程序排行榜上&#xff0c;糖豆广场舞、糖豆爱生活、糖豆每日…

三个数据集与deploy.prototxt

神经网络中经常会出现三种数据集&#xff1a;训练数据集train set、验证数据集validation set、测试数据集test set。对每个训练数据&#xff0c;计算得到准确性&#xff0c;在网络中后向传播误差&#xff0c;从而调整权重weights。对每一个验证数据&#xff0c;也会计算准确性…

网络编程套接字socket

哈哈哈&#xff0c;之前的保存成草稿忘了发 目录 一 . 先回顾一下网络初始中的相关概念&#xff1a; 1.网络通信&#xff1a; 2.局域网&#xff1a; 3.广域网&#xff1a; 4.IP地址&#xff1a; 5.端口&#xff1a; 概念 格式 6.协议&#xff1a; 7.五元组&#xff1a; 8.分层…

增长率高达40%!物联网平台如何拉动产业马车飞速狂奔

来源&#xff1a; 联动原素、安信通信研究、IoT Analytics物联网智库 整理发布物联网的低准入门槛造就了这个内容庞大的产业生态&#xff0c;致使更多的企业融入进来。伴随物联网大规模发展&#xff0c;物联网平台在其中的作用越加凸显&#xff0c;新一轮资本涌入、技术开发、业…

Java小对象的解决之道——对象池(Object Pool)的设计与应用

一、概述 面向对象编程是软件开发中的一项利器&#xff0c;现已经成为大多数编程人员的编程思路。很多高级计算机语言也对这种编程模式提供了很好的支持&#xff0c;例如C、Object Pascal、Java等。曾经有大量的软件工程师使用C语言作为他们的谋生工具&#xff0c;随着面向对象…

中国代表性Fintech企业动态观察

来源&#xff1a;全球高科技联盟阿里巴巴系企业一、阿里巴巴金融科技和区块链总体布局揭开面纱9月28日&#xff0c;阿里达摩院官网正式上线&#xff0c;公开5 大研究领域、14 个实验室&#xff0c;从中可一探阿里在金融科技和区块链领域的总体技术布局。阿里金融科技领域致力于…