开源云数据库“利用开源软件牟利”之争

日期: 2019-02-18 作者:Jack Vaughan翻译:邹铮 来源:TechTarget中国 英文

云计算被证明是SQL和NoSQL开源数据库的坚实基础,云计算使新技术可稳定地作为服务提供给用户,同时也使云提供商和数据库制造商受益。

但开源云数据库的未来仍然无法确定。这是因为云提供商和数据库制造商之间的关联最近得到考验,其中主要冲突在于云服务的软件许可。这也使得用户开始密切关注他们的许可证的细则。

最尖锐的冲突集中在MongoDB和亚马逊。本月早些时候,开源紧张局面开始显现,当时AWS推出DocumentDB,这个NoSQL数据库与微软的Azure Cosmos DB一样,具有MongoDB API兼容性。

Amazon DocumentDB是一款自主开发的产品,它遵循Apache 2.0开源MongoDB 3.6 API。与Azure Cosmos DB对MongoDB的支持一样,DocumentDB使用模拟来显示MongoDB服务器对MongoDB客户端的响应。DocumentDB的目标之一是迁移MongoDB数据库,还有更好的运行时数据管理。

MongoDB公司是其同名开源技术背后的驱动力,该公司认为亚马逊的DocumentDB采用的是早期的MongoDB版本的MongoDB API,这使其无法获取未来的任何改进。这是因为该NoSQL数据库制造商最近对其许可合同中的部分条款作了变更。

部分云提供商和开源数据库及工具制造商陷入许可争夺战。下面的时间表展现了最近的一些里程碑事件。

MongoDB的诡计

在2018年11月AWS的re:Invent 2018大会中,人们都非常期待亚马逊在开源数据库方面的产品新闻。但当时的NoSQL产品新闻主要集中在MongoDB对新版本数据库的许可。 MongoDB当时表示,他们做出改变的原因是为了促使像亚马逊这样的“国际云提供商”为NoSQL数据库的开源版本做出贡献。

近年来,MongoDB一直引领与快速应用程序开发相关的NoSQL领域。该公司面向文档的存储被添加到加速编程的工具中,并且,越来越多地被用于云端数据开发的选项。

MongoDB的诡计出现在Redis Labs早前许可转变之后,Redis Labs在10月份更改了Redis模块的许可。该供应商对此次变更给出的原因:限制该模块转售作为数据库即产品的一部分–通过利用开源Redis内存键值存储数据库。

在MongoDB的影响下,云端数据流的工具也在重新调整。12月,Confluent公司重新许可了一些与Kafka相关的组件,从Apache 2.0转变为Confluent Community License。 Confluent表示,其目标是控制其流式SQL引擎、KSQL和其他组件作为云服务的使用。

Confluent公司首席技术官Neha Narkhede在re:Invent期间的一封电子邮件中说:“对于开源软件来说,这是一个有趣的时期。公共云提供商(特别是AWS)有一种新的独特发展动向,他们采用开源软件并将其作为服务出售,而这通常不会给社区带来任何重要贡献。这甚至还有专门的名称:strip mining(即利用开源软件牟利)。

AWS驳回了这种批评。在回应评论时,AWS发言人表示,AWS是开源社区的重要贡献者和支持者,并对Xen、Linux、KVM、Java、Kubernetes、Lucene和其他项目做出了贡献。这位发言人还表示,“AWS从MongoDB的代码中获益”的说法完全不准确,因为DocumentDB没有使用任何许可代码。(编者注:请在本文文末查看AWS的完整声明。)

最近的迹象可能进一步推动AWS在开源领域的努力。在1月28日那一周,该云供应商将其对Apache Software Foundation的赞助支持提升至白金级别。

重要的是繁荣发展

虽然AWS等云提供商让NoSQL数据库(Cassandra、MongoDB和Redis等)和Apache Hadoop组件(MapReduce、Spark和Hive等)得到更广泛的使用,但该云提供商越来越多地提供开源云数据库和工具作为AWS品牌云服务,这导致一些软件公司重新考虑他们的许可。

据Qubole公司联合创始人兼首席执行官Ashish Thusoo称,当GPL、AGPL甚至Apache许可证等软件许可证出现时,云服务还没有作为考虑选项。而现在,这些服务可能会带来变化。Qubole公司在AWS、微软、甲骨文以及谷歌云端运行数据平台。

Thusoo称,云端提供商实际上提供开源即服务,他追溯自己的开源背景到10年前,当时他还是Facebook的数据基础架构工程经理。那时,在Apache软件基金会的支持下,他与同事开始引领Hadoop Hive数据仓库项目的开源开发工作。

而现在,他领导着一家软件公司,他看到这个问题的两个方面。

他指出:“开源公司繁荣发展的重点在于他们可以将开源货币化。其中很多模式都是开放核心模型,例如Red Hat with Linux。在云端,这种模式在某种程度已经发生变化。”

你服务的开源云数据

随着越来越多的数据库创新出现在云端,云计算的角色变得至关重要。数据库供应商应该非常清楚这一点。

MongoDB公司首席技术官兼联合创始人Eliot Horowitz说:“应用程序的整体性质发生了变化,人们不再在数据中心中构建和运行自己的堆栈。”

从开源云数据库提供商的视角来看,Horowitz的观点有些偏差,但他的观点也是正确的,因为很少公司在数据中心内建立和支持应用程序。

在TechTarget的2019年IT优先事项调查中,29.1%的受访者表示他们计划今年在内部部署硬件或软件–低于2018年的43%。相比之下,29.9%的受访者表示他们计划在2019年使用IaaS部署模型,在同一项调查中,只有超过20%的受访者表示他们可能会在今年在云中部署数据库。

毫不奇怪的是,MongoDB也拥有自己的云数据库即服务,被称为Atlas,并且,去年当MongoDB收购云数据库专家MLab时,其基础设施支持得到了扩展。

对于数据库即服务的公平性方面,Horowitz不认为亚马逊是唯一的罪魁祸首。他称:“AWS不是唯一这样做的供应商。”

Horowitz证实MongoDB对开源作为商业模式的总体承诺。

他表示:“我们希望让许可证适应现代世界,数据库应该是开源的核心。”

云数据库和谐发展

就他而言,Qubole公司的Thusoo希望看到一套新的道德规范,但他补充说,现在断定开源供应商是否能够推动这种变革还为时尚早。

他指出:“重要的是要做出贡献,并且在维护许可时,应确保让人们可使用软件创造更大的东西。但我们也不应该过多改变许可证,以至于没有云提供商可以将其作为服务提供 – 这也会成为一个问题。”

Thusoo称,与大多数用户和供应商一样,他期待有一天,开源云数据库的许可问题可以找到更好的解决方案。

他称:“这里需要找到折中办法。”

以下是AWS发言人的完整声明:

“对于我们的客户和部分AWS服务来说,开源的持续时间和可行性非常重要,这就是我们成为开源社区的重要贡献者和支持者的原因。多年来,我们为无数的开源项目做出了重大贡献,这包括Xen、Linux、KVM、Java、Kubernetes、Chromium、机器人操作系统和Lucene,这些是Elasticsearch、Hadoop、Spark和Hive的基础。我们还在重要开源项目中担任领导角色,包括s2n、FreeRTOS、AWS Amplify、Apache MXNet、AWS SageMaker NEO和Firecracker。MongoDB声称AWS从MongoDB的代码中获得好处,这种说法完全不准确,因为Amazon DocumentDB没有使用任何MongoDB的AGPLv3或SSPL许可代码。”

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

Jack Vaughan
Jack Vaughan

TechTarget新闻记者和网站编辑,主要关注数据管理领域的技术趋势和动态。

翻译

邹铮
邹铮