MongoDB:连续四年被评为最受开发人员青睐的数据库

  • 2019 年 10 月 10 日
  • 筆記

自2011年以来,Stack Overflow一直在体现开发者社区的“脉搏”,并揭示全球的软件开发者所关注的各种前沿趋势、技术和最为重视的当前工作。Stack Overflow的调查总是能为我们提供对开发趋势的的深入洞察,2019年,有将近90,000名全球开发人员参与了此项调查。[1]

从调查中,你可以了解到你的同行最经常使用哪些编程语言、网络架构、库、工具、平台、当然也包括数据库,你能看到当前开发人员最爱使用的、最不爱使用的、和最期待使用的都是哪些产品。2017年,Stack Overflow创建了一个专门的数据库门类,当年MongoDB被评为最受欢迎和喜爱的数据库。2018年,MongoDB再次名列榜首。2019年,MongoDB依然名列榜首,并已连续第三年排名第一。

Image courtesy of Stack Overflow 2019年开发人员调查结果截图,最受期待的数据库

为什么说MongoDB连续四年被评为最受青睐的数据库呢?因为在2016年数据库尚未被划分为单独的门类之前,MongoDB是唯一一款被列在“最受青睐的”技术通用名录中的数据库产品。

MongoDB是如何取得这些成果的?首先,要感谢MongoDB的用户,正如调查结果所显示,是MongoDB用户对MongoDB的使用热情,让MongoDB广泛传播,是MongoDB用户使MongoDB变得一天比一天更出色, 并不断对应用的迫切需求进行创新,为发展路线图提供指引,并培训其他人如何最大程度地发挥MongoDB的作用。

为什么今天的开发者会选择MongoDB,又有那么多人希望使用MongoDB呢?这是因为MongoDB的三大核心设计理念,帮助开发者更快更好地满足现代应用的需求:

文档型数据模型

文档数据模型是最佳的数据处理方式。文档与你在代码中使用的对象相匹配,与表的行与列相比,它代表了一种更为自然的数据结构。你可以按照你希望的方式随时更改文档模型、索引和查询任意属性、执行各种操作和分析,从简单的点和范围查询,到复杂的聚合、分面搜索、地理空间处理、图遍历等都可以实现。你还能同时拥有关系型数据库经常用到的ACID【原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)】事务功能。只需要MongoDB这一个数据库和MongoDB API,就可以实现所有这些功能。

分布式设计

MongoDB的分布式系统设计意味着你可以将数据放置到任何需要的地方。不仅实现了高可用性,还可以实现水平扩展,以及工作负载隔离。工作负载隔离可以将同一个集群上的交易和分析工作负载隔离开。MongoDB提供了对全球数据进行分发的功能,可以将数据分发或锁定到特定地理区域中的分片,不仅使本地用户实现低时延的访问,同时还能满足隐私条例对于数据主权的要求,例如,欧盟的通用数据保护条例(GDPR)。

随时随地自由运行

你拥有随处运行的自由——无需改动任何一行代码,你就可以将你的MongoDB从笔记本,搬到本地服务器、云端或完全托管的全球云MongoDB Atlas service上。使用MongoDB,你可以在任何时间,将你的数据库部署到任何需要的平台上,你再也不需要在设计时担心被某个特定平台锁定了。

了解关于MongoDB设计理念的更多信息,请参见MongoDB的《架构指南》。[2]

Stack Overflow开发人员调查是在《Forrester Wave™:2019年第一季度大数据非关系型数据库报告》[3]发布后进行的,那份报告也将MongoDB评为领导者,同时,《数据库引擎排名》显示:MongoDB延续了它作为世界上最受欢迎的非关系型技术领导者的地位。所有这些信息都证明了MongoDB所开创的道路,正在将MongoDB打造为下一代数据库平台。

参考链接:

[1]截至目前的调查结果,请点击链接https://insights.stackoverflow.com/survey/2019#technology-_-most-loved-dreaded-and-wanted-databases

[2]架构指南

https://www.mongodb.com/collateral/mongodb-architecture-guide

[3]《Forrester Wave™:2019年第一季度大数据非关系型数据库报告》

https://www.mongodb.com/blog/post/mongodb-named-a-leader-in-the-forrester-wave-big-data-nosql-q1-2019

[4]MongoDB Atlas上的免费M0集群

https://www.mongodb.com/cloud/atlas

[5]MongoDB大学

https://university.mongodb.com