百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Mongo DB:“网红”数据库的标准会成为未来的技术主流吗?|前哨

itomcoil 2025-02-24 16:49 4 浏览

你好,这里是科技前哨,继续跟你分享新兴科技企业有关的新鲜见闻。

6月7日,云计算时代的数据库管理新贵Mongo DB举办了一年一度的开发者活动,发布了150项功能更新,当天这家公司股价便上涨7.65%,领涨美股云计算板块。

Mongo DB是怎么从默默无闻的开源公司变成如今身家百亿的巨无霸,它的数据标准会成为未来的主流吗,科技前哨带你一探究竟。

1.让开发者使用更便捷的数据库

MongoDB由Dwight Merriman, Eliot Horowitz和Kevin Ryan在2007年成立,当时公司的名字叫做10gen软件公司,主打产品是新型的数据库组件,为云计算产品提供存储服务。

三位创始人并非第一次创业,成立10gen之前他们创办了网络广告公司DoubleClick,服务美国众多的知名企业,该公司每秒最多提供40万个广告的投放,出色的成绩让DoubleClick广告公司被谷歌收购,三位创始人也带着行业洞见开始了第二次创业之旅。

广告投放业务讲究一个快速高效,因为广告收入很大一部分和用户的点击密切相关,通过网页搜集到客户的信息,就要立刻精准推送对方可能感兴趣的广告,然而他们当时使用的数据库服务总会在这个过程中出现神秘的死机现象。

这其实与数据库架构有关系,当时主流的架构是关系型数据库,对于数据的格式要求十分严格,这套框架为了维护数据统一,每次调用过程中都会锁住整个数据库。

对每秒投放40万广告的业务,很容易就会遇到一次数据操作没有完成,另一个又来了,只能排队等候的情况,整个广告业务在数据库这个环节卡住让他们非常不爽,于是他们决定新的创业要开发一款更灵活便捷的数据库产品。

一开始,三位创始人的想法就是做一款开源的产品,这其实是十分大胆的决定,开源产品可供开发人员免费使用、并且可以修改底层代码,这确实很利于产品在市场的推开,也意味着很难盈利。

不过几个创始人都已经财富自由,对自己的产品也有足够的信心,他们认为未来会是个云服务的时代,开源产品先流行,再通过提供定制、咨询和产品打包等服务获得收益肯定行得通。

事实证明,他们想法是正确的,2009年创始团队开发出了MongoDB的雏形并将10gen更名为MongoDB开源发布,一开始产品的BUG很多,收到了很多程序员的负面反馈,但MongoDB开发人员态度十分友好,加上MongoDB产品确实优秀且免费开源,MongoDB就这样在市场上推开了。

2.新架构,新场景

MongoDB的最有力的竞争对手是以MySQL为首的关系型数据库类产品,关系型数据库是指采用关系模型来组织数据的数据库。

它对数据的格式有着严格的要求,不论数据类型是文本,音频还是视频,都必须用相同的方式管理,数据和数据之间也有严格的关系定义。

这样使得数据库的一致性非常高,便于维护,并且降低了数据的冗余度和不一致性,但是读写效率不高,对于硬件来说是一个很大的负载,并且由于关系型数据库对数据关系格式的要求十分严格,修改时牵一发而动全身,所以扩展的灵活性不高。

对于航班,银行系统之类的关系性较高的数据来说,关系型数据库可能是个不错的选择,可是随着互联网的发展,数据类型越来越多样化且庞大化,数据是海量且多样的,关系型数据库就略显笨重了,市场急需一个更灵活的数据库架构。

Mongo DB就是从这个地方切入,它的使用和安装都非常方便,数据存储格式十分灵活,在代码中通过API就可以操作数据,可以在海量的数据库快速的查询并修改数据。

MongoDB的特点正好符合了大数据时代开发者的数据存储需求,在市场上逐渐站稳了脚跟。

3.免费开源到行业龙头

MongoDB产品推出后,凭借其出色的架构在市场中表现一直不错,虽然很多企业都在将数据库切换为MongoDB的产品,但是由于它免费开源的特点也确实让它在市场中没有获得造血能力。

转机出现在2012年,这一年,公司获得了 4200万美元的风险投资,让他们有力气从研发转向销售,在这一年创始人Merriman不遗余力地在一些知名的科技博客宣传自家产品,并且和各大教育机构合作推出MongoDB的培训课程,提供商业付费技术支持。

2013年,公司获得了1.5亿美元的投资,次年发布了Mongo DB企业版,逐渐形成自己的造血功能;2015年,MongoDB总融资额达到3.1亿美元,它的软件服务被MetLife、福布斯、Expedia和ADP等大型企业使用。

2016年,Mongo DB推出了Atlas服务,与公有云服务厂商(谷歌、微软、亚马逊)合作,为客户部署的云数据库,该服务一直都是MongoDB收入的拳头产品。

2017年,Mongo DB公司在纽交所上市;2018年,发布了Mongo DB4.0,它的股价已经达到了82美元。今天,MongoDB股价已经达到了278美元,市值更是突破了336亿美元,真正实现了从免费开源到行业龙头的转变。

MongoDB成立后,借着大数据和云服务的风口,发展得顺风顺水,实现了从免费开源到付费服务的转变,和传统数据库靠软件打天下不同,它先定义了新的数据库管理标准,再通过各种服务赚取收益,使用了一套云服务时代的独特打法。

它的未来还能继续做大吗?未来能否成为新的巨头呢?这周前哨科技特训营的直播中我们也会和大家一起分析,期待周四晚八点直播间相见。

以上就是今天的内容,希望你能有所收获,如果你喜欢我们的节目,欢迎分享给你的朋友,这会对我们非常有帮助,更多精彩内容明天再见~

科技前哨,每天都为你点亮。

相关推荐

MySql安装与使用

介绍mysql是目前最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:关系数据库管理系统)应用软件...

使用AI来搭建一个用户系统,步骤应该是怎样的呢?

我给AI的第一个问题是这样的:创建一个java21+springboot3.4+mysql21的一个用户系统,需要使用JWT,支持多语言,使用swagger,这个用户系统都应该包含哪...

Mysql 8.4数据库安装、新建用户和数据库、表单

1、下载MySQL数据库yuminstall-ywgetperlnet-toolslibtirpc#安装wget和perl、net-tools、libtirpcwgethtt...

介绍如何在 MySQL 中创建新用户并授予权限?

MySQL是一个开源的关系型数据库管理系统,常用于存储和管理大量的结构化数据。在使用MySQL进行数据管理时,为了安全和方便管理,通常需要创建新用户并授予相应的权限。本文将介绍如何在MySQL...

Mysql创建用户和权限管理

MySQL是一个多用户的数据库,最高权限管理者是root用户,它拥有着最高的权限操作。包括select、update、delete、update、grant等操作。如果有其他用户想使用MySQL,那么...

Mysql:创建用户详解

1、创建并授权用户--创建可从任何主机连接的用户CREATEUSER'myuser'@'%'IDENTIFIEDBY'mypassword'...

Python 实现【字符匹配】

defis_match(s,pattern):m,n=len(s),len(pattern)dp=[[False]*(n+1)for_inrange...

Python自动化:openpyxl工作簿、工作表相关操作

新建工作簿、工作表importopenpyxl#创建空白工作簿,会自动生成一个工作表:Sheetwb=openpyxl.Workbook()#新建工作表#create_sheet...

python每日一练之三数排序

概述今天主要分享一个三树排序的实例,大家可以自己测试玩一下~需求输入三个整数x,y,z,请把这三个数由小到大输出。方法一:如果是要练练手就随便找个排序算法实现一下#usr/bin/python#...

Python输出语句print()

Python中的输出语句主要通过内置函数print()实现,它可以灵活输出文本、变量、表达式结果等内容到控制台或其他文件。以下是详细介绍及示例:一、print()基本语法print(*object...

Python设置excel表格格式,这3个属性6个模块,要表格好看

前言:通过前面两篇文章,我们用Python处理excel数据得到了结果并保存了文件。打开文件会发现,文件里表格是没有设置格式的,还需手动调整行高列宽等样式,很麻烦。其实,通过Python库模块,能轻松...

python入门-day5-循环语句

以下是为“Day5:循环语句”设计的详细学习任务计划。这个任务旨在帮助初学者掌握Python中的循环语句(for和while),并通过实践理解它们的应用场景。Day5:循环语句学习目标...

Python基础编程必备!涵盖常见语法与操作的代码示例合集

以下是一份Python基础代码示例合集,涵盖了常见的语法和操作,适合初学者快速掌握基本编程概念:1.基础语法python#打印输出print("Hello,World!")#变...

Python循环语句实用教程

一、循环基础1.while循环基本语法:while条件表达式:循环体代码while循环流程图:应用示例:#简单计数器count=0whilecount<5:...

在 Python 中如何向一个已排序的数组(列表) 中插入一个数呢

在Python中如何向一个已排序的数组(列表)中插入一个数呢?方法有很多种,关键在于原来数组是什么样的排序,用到啥排序方法效率高,就用哪种。我们来练习其中的几种插入方法,另外也掌握下遍历数组的...