mongodb使用场景是什么

mongodb使用场景是什么,第1张

使用场景:

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

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

(3)大尺寸,低价值的数据。

(4)高伸缩性的场景:MongoDB适合由数十或数百台服务器组成的数据库

(5)用于对象及JSON数据的存储:MongoDB的BSON数据格式适合文档化格式的存储及查询。

mongodb设计特点:

(1)面向集合存储,容易存储对象类型的数据。在MongoDB 中数据被分组存储在集合中,集合类似RDBMS 中的表,一个集合中可以存储无限多的文档。

(2)模式自由,采用无模式结构存储。在MongoDB 中集合中存储的数据是无模式的文档,采用无模式存储数据是集合区别于RDBMS 中的表的一个重要特征。

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

(4)支持查询。MongoDB 支持丰富的查询 *** 作,MongoDB 几乎支持SQL中的大部分查询。

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

相比甲骨文中国在中国市场的裁员风波,同为数据库服务的MongoDB显得更为乐观。“MongoDB是中国开发者最喜欢用的一个数据库。”MongoDB全球渠道及亚太区销售高级副总裁Alan Chhabra带着一点自信和骄傲在媒体面前宣称。

中国企业的数字化转型正进入关键期,在打造开放、高效、灵活、共享的云计算基础设施的同时,数据库的更新换代也被提上了日程。

日前,非结构化数据库平台提供商MongoDB在上海举办用户大会,MongoDB全球渠道及亚太区销售高级副总裁Alan Chhabra接受了亿欧企业服务频道的采访, 并针对去年修改开源协议,在SSPL的不同许可机制下授权服务器软件的争议以及其他疑问作出回应。

数据库的本质是解决数据的存储和管理问题。 Alan Chhabra表示,对企业发展具有战略意义的数据库正在催生巨大的市场。

在这些潜力颇大的数据库中,市场上目前存在着的是关系型的传统数据库和以Mongo DB为代表的非关联式新型数据库。传统数据库比较典型的是甲骨文旗下的Oracle数据库、IBM推出的大数据平台Hadoop和Stream Computing、微软的SQL Server、SAP以及EMC Greenplum。 他们的主要差别在于数据库的结构化和非结构化。

结构化的数据是指可以使用关系型数据库表示和存储,表现为二维形式的数据,存储和排列很有规律,这对查询和修改等 *** 作很有帮助,但扩展性和灵活性欠佳。 非结构化数据库就是各种文档、、视频/音频等没有固定结构的数据,一般直接整体进行存储为二进制的数据格式。 目前涵盖分布式数据库、图数据库、流数据库、时空数据库和众包数据库等多个领域。

MongoDB是文档型的非结构化新型数据库,Alan Chhabra表示, 与传统数据库相比,更能满足用户数据存储量大、计算灵活的需求。“在某些客户某些案例上,我们已经取代了传统数据库,比如甲骨文。”

当前, 软件对于商业模式的改变、开发人员地位的提高,以及企业向云端迁移的趋势 都让数据服务公司的发展得到了助力。但从毕马威会计事务所对首席信息官的调查结果来看, 88%的首席信息官认为他们未能从数字化战略中充分获益;82%的首席信息官认为其所在机构在利用技术推动业务发展方面并非“卓有成效”。 也就是说, 大多数公司的数字化战略是以失败告终的。

在此背景下,更加灵活、性能更加强大的新型数据库在一些领域获得了试验田丰收,并且可以看到,随着客户数据需求的繁杂程度的日益增加,传统数据库也在自我革新,以迎头赶上数据浪潮的大变革。

MongoDB成立于2007年,2017年在纳斯达克上市。最初,MongoDB是一项面向技术爱好者的技术,如今已成为一项企业级的业务关键技术。通过不断开发数据库即服务(Database-as-a-Service)产品,积极拥抱云计算,MongoDB在过去十年里,为开发人员提供了处理数据的方法。正因如此,它也成了企业数字化转型战略的一个关键部分。

MongoDB提供的产品主要包括MongoDB云服务MongoDB Atlas、MongoDB Mobile、MongoDB企业版和MongoDB Stitch等十余个相关产品。Alan Chhabra表示,产品包括了 开源版、付费版和云版。

2018 年 10 月,MongoDB宣布其开源许可证将从GNU AGPLv3切换到SSPL,新许可证将适用于新版本的MongoDB Community Server以及打过补丁的旧版本,这一举动引发了行业热议。基于GNU AGPLv3协议,企业可以将MongoDB作为公共服务但这需要企业开源自己的软件或是获得MongoDB的商业授权,事实却是MongoDB发现许多企业正在违反协议“疯狂试探”甚至已经违反协议。 SSPL( Server Side Public License)顾名思义,要求使用者必须得到服务器端公共许可证,这一协议会进一步约束商业公司使用MongoDB服务。

Alan Chhabra向亿欧解释, SSPL 针对的是提供MongoDB托管服务的云服务厂商。 也就是说,如果不是云服务厂商,没有公然售卖MongoDB产品,而只是作为应用后台数据库来使用的话,那么无论你是电商、物联网、金融、社交、 游戏 、移动应用等等,一概都不会有任何影响。 “MongoDB的宗旨还是为了始终支持并保护创新开放。”

但此开源协议的修改明显带来了市场用户的“掉粉”,比如Linux 社区的接连“弃用”,以及AWS 、IBM、微软推出了兼容MongoDB的相关产品来服务用户。

数据库开源的商业变现与创新形成的矛盾,目前似乎还尚未找到解决方案。

Alan Chhabra在大会上也透露了MongoDB的未来计划, 即将基于智能运营数据平台和下一代基础架构、文化、方法论和安全,推动原有系统的现代化、数据即服务、云数据策略、业务敏捷性,进而帮助客户实现以数据驱动的数字化转型。

针对MongoDB在中国的发展情况, Alan Chhabra表示,公司将以创新立足,持续引领数据库技术发展潮流,与合作伙伴携手助力中国企业的数字化转型。

MongoDB北亚区副总裁苏玉龙认为:“中国是数据大国,而数据就是未来的石油。如何利用好数据,让数据石油助力中国企业腾飞是MongoDB希望在中国达成的事情。随着中国企业数字化转型逐渐走向深入,MongoDB数据库的价值得到不断释放。”

本文作者龚晨霞,微信Gcx847076575,欢迎关注企业服务和产业互联网的朋友加微信交流。

Nosql的全称是NotOnlySql,这个概念很早就有人提出。Nosql指的是非关系型数据库,而我们常用的都是关系型数据库。就像我们常用的mysql,oralce、sqlserver等一样,这些数据库一般用来存储重要信息,应对普通的业务是没有问题的。但是,随着互联网的高速发展,传统的关系型数据库在应付超大规模,超大流量以及高并发的时候力不从心。而就在这个时候,Nosql应运而生。

上面说的是NOSQL的定义Nosql和关系型数据库的区别,这里我说明一比较重要的区别。

存储格式:关系型数据库是表格式的,存储在表的行和列中。他们之间很容易关联协作存储,提取数据很方便。而Nosql数据库则与其相反,他是组合在一起。通常存储在数据集中,就像文档、键值对或者图结构。举个例子,例如在游戏里面玩家的背包数据,我们都知道一个游戏里面的道具是很多,而且不确定玩家什么时候获取什么道具,这个时候如果想在关系数据库里面存储数据,这个表怎么建立就是一个很大的问题,如果你把所有的道具ID当做表头,那么后续每增加一个道具,就需要修改这张表。如果你的表结构是:

用户ID|道具ID|道具数量|道具特殊属性

那么可以想象一下这张表随着用户的增多会变的多么的庞大。所以这个时候我们就需要一个能直接像 *** 作玩家对象一样的数据库,这里比较代表性的就是mongo,通过这个我们就可以看出nosql数据库更适合存储结构不确定的数据。

存储扩展:这可能是两者之间最大的区别,关系型数据库是纵向扩展,也就是说想要提高处理能力,要使用速度更快的计算机。因为数据存储在关系表中, *** 作的性能瓶颈可能涉及到多个表,需要通过提升计算机性能来克服。虽然有很大的扩展空间,但是最终会达到纵向扩展的上限。而Nosql数据库是横向扩展的,它的存储天然就是分布式的,可以通过给资源池添加更多的普通数据库服务器来分担负载。

上面的的例子已经说明了这个问题。在现代互联网时代大家都是希望能横线扩展服务。这样付出的代价是最小的。

对于上面关系型数据库和NOSQL数据库的区别其实还有很多。我相信大家在用的都会感觉到。上面列出的只是我感觉区别最大的。

那么NOSQL这么好用,是不是都可以用了呢,显示不是这样,NOSQL对于聚合查询显示不是他的强项。这个时候就需要关系型数据库。我是这样建议,对于结构统一,应该存储于关系型数据库,对于结构不统一的可以存储到NOSQL数据库例如mongo。但是这个不是绝对的,在实际的项目的开发过程中,需要根据的自己的业务,仔细揣摩一下,做好最合适的划分。

常见关系型数据库通常有SQLServer,Mysql,Oracle等。主流的Nosql数据库有Redis,Memcache,MongoDb。大多数的关系型数据库都是付费的并且价格昂贵,成本较大,而Nosql数据库通常都是开源的。在互联网行业用大多也是免费的MYSQL(这里偷笑一下)。

在实际的项目中大家的项目都是如何选择的呢?大家可以关注我,私信或者在评论区留言。

以上就是关于mongodb使用场景是什么全部的内容,包括:mongodb使用场景是什么、MongoDB挑战传统数据库:非结构化数据库的迭新不容小觑、常用的关系型数据库有哪些(常用的关系型数据库有哪些各有哪些优点)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9525915.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存