当前位置: 首页 > 科技观察

为什么MongoDB敢说“做你从未做过的事”

时间:2023-03-15 16:32:54 科技观察

在MongoDB的网站上,它是这样介绍自己的:Dowhatyoucouldneverdobefore(做你从未做过的事)。为什么MongoDB敢这么说?它的优点和缺点是什么?今天我们将给你一些建议。1、什么是MongoDB?“需要是创新之母”。这话虽然是老话,但放到现在还是很有用的!在过去的十年里,我们将数据生成、存储和分析的临界点推向了一个全新的高度。这一飞跃是向数字化、数据驱动的经济迈进了一步;这种飞跃也创造了它自己的需求。这些问题及其解决方案通常都在大数据的保护伞下。想象一下:今天,Facebook和谷歌产生的数据比前几年世界上的数据总量还多。随着数据生成的快速增长,存储和规模问题也随之而来。看,每个人都希望他们的Facebook提要能够立即加载——我们讨厌坐在那里用手机和电脑等待它加载。但是回过头来看,究竟是什么架构能够让我们拥有如此快速的体验呢?数百万用户同时向数据库请求实时信息。将其与允许您快速添加新功能的非结构化数据和系统要求相结合,这看起来是一项不可能完成的任务。传统数据库难以满足这种需求,而且扩展成本高得令人望而却步。本文向您介绍一种新型的数据存储系统,我们称之为MongoDB。它提供了无模式设计、高性能、高可用性和自动伸缩,这些是目前传统RDBMS系统所需要但无法满足的特性。维基上就是这样描述MongoDB的。MongoDB(源自单词huMONGOus,意思是“堆积”)是一个跨平台的面向文档的NoSQL数据库。MongoDB避开了传统的基于表的关系型数据库结构,取而代之的是具有动态结构的类JSON文档格式(MongoDB称之为BSON),这使得某些特定类型的应用程序的数据集成更加容易和快速。MongoDB是在GNUAffero和Apache许可下发布的免费开源软件。2.谁在使用MongoDB?下面仅列出其中的一些。事实上,MongoDB在全球的下载量已超过1000万次,目前有30万人正在学习MongoDB。3.与传统关系型数据库的比较关系型数据库与MongoDB的比较就像狮子与老虎的比较。虽然都是食肉动物,但一个单独捕食,一个成群结队捕食。SQL(Tiger)有固定的数据模型,里面的数据需要遵循架构的设计,帮助组织分析销售统计等结构化数据。另一方面,MongoDB(Lion)是一个基于文档的数据库,它以文档的形式存储数据。尽管它们的方法不同,但都需要数据存储并根据组织需要选择数据库类型。4、使用MongoDB有什么优势?从上图可以发现,当服务器上的查询数量增加时,MongoDB显然是赢家。MongoDB非常适合实时分析,它具有低延迟和按需高可用性。MongoDB走在了前列,因为各种组织需要分析半结构化、非结构化和地理或空间数据,并且因为当今世界的原始结构化数据正在迅速变化。传统的关系数据库系统无法完全应对这些需求,因为它们固有的结构不允许它们处理这些需求。虽然关系型数据库系统也在不断变化以迎合数据的爆炸式增长,但最适合当今数据的数据库仍然是像MongoDB这样的文档型数据库。#p#五、MongoDB的局限性是什么?下面列出了MongoDB的一些限制。1.最大文件不能超过16MB。2、文件最大嵌套层数为100层(指嵌套文件再嵌套文件)。3、索引区不能超过1024字节。4.每个集合最多有64个索引。5.使用最多31个字段创建复合索引。6.全文搜索和地理位置索引是相互排斥的。7.在32位机器上,cappedcollection中的文件数量是有限的。但是,64位计算机上的文件数量没有限制。8、在Windows系统上,MongoDB不能存储超过4TB的数据(去掉日志后8TB)9、单个复制集最多可以有12个节点。10.一个副本集中最多可以有7个投票节点。11、如果要回滚超过300MB的数据,需要人工干预。12、分片集群不能使用group命令。13.$isolated,$snapshot,geoSearch不能在shardedclusters中使用。14.不能在$where中引用数据库对象。15.为了对集合进行分片,它必须小于256GB。16.分片集群中单条记录(不是多条记录)的更新/删除必须包含分片键。当对多条记录执行相同的命令时,可能不包含分片键。17.shardkey的最大值为512字节。18.分片完成后,集合的分片键值将无法更改。除了这些限制之外,在关系数据库系统中使用约束来防止意外删除数据的能力无法在MongoDB或其他NoSQL数据库系统中实现。还可能存在其他问题,例如下面列出的问题,这些问题违反了存储多层数据的标准范例。一个用户有很多朋友,其中一个可能就是他自己。人们可能会反复对自己点赞、评论或两者兼而有之。这种类型的迭代模式使得将活动流反规范化为单个文档更新变得更加困难,它们有望得到解决。