前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从开源数据库许可证变更说起,云服务商会成为开源数据库发展的绊脚石吗?

从开源数据库许可证变更说起,云服务商会成为开源数据库发展的绊脚石吗?

作者头像
iMike
发布2020-02-21 15:17:10
6650
发布2020-02-21 15:17:10
举报
文章被收录于专栏:运维之美运维之美

CockroachDB 是一个开源的分布式数据库,最近改变了代码授权,放弃了 Apache 许可证。

许多开源数据库这一两年都改变了授权,比如 Confluent、Elastic 、MongoDB、Redis Labs、TimescaleDB。本文将来分析下这种现象。

一、CockroachDB 的许可证变更

CockroachDB 以前的许可证是 Apache,代码托管在 GitHub,任何人都可以访问。

现在的许可证改成了"商业源码许可证"(Business Source License,缩写 BSL)。

这段文字的意思是,三年以后的 2022 年 10 月 1 日,这些代码将变为 Apache 许可证,在此之前都属于商业源码许可证。多少人想用三年前的代码?因此,它实际上用 BSL 许可证取代了 Apache 许可证。

二、商业源码许可证的特点

BSL 许可证是 MariaDB 发明的,最大的特点有两个。

一是非商业性使用没有限制,商业性使用有限制。

二是许可证是模块化的,可以附加自己的条件(Additional Use Grant)。

比如,MariaDB 附加的条件是,一个项目最多只能使用两个数据库服务器实例,超过就要付费。

CockroachDB 附加的条件是,对外提供商业性的数据库服务需要付费。

简单说,商业源码许可证就是一种限制了云服务的开源许可证。

三、问题的由来

目前,许多开源数据库对云服务都有限制。这完全是由 Amazon 的 AWS 云服务引起的。

AWS 一直提供数据库服务,2009年推出 RDS MySQL 服务,2013 年推出 PostgreSQL 服务,2015 年推出 Amazon Elasticsearch 服务。大量企业购买这些服务,使得收入都向 Amazon 集中,它的 Elasticsearch 一个服务的收入已经高于原始开发商 Elastic 的所有收入。

这就相当于,开源开发者在为 Amazon 免费打工,为它创造利润。Elastic 当然很不爽,推出了付费版本。结果,Amazon 一不做二不休,把开源分支分叉了,自己把 Elastic 的所有收费功能写出来了。也就是说,Amazon 不仅拿走了利润,还创造出了一个竞争性产品。类似的情况还有,Azure 提供 MongoDB 兼容的 CosmosDB 服务。

其他开源数据库看到这种局面,都感到了云服务商的威胁,所以纷纷改变授权模式。

这里的根本问题是,云服务的出现改变了开源软件的生态。以前,开源软件有众多的使用者,会形成一个社区,从社区得到反馈和支持。现在,企业级开源软件很可能都有云服务,导致企业客户都流向了云服务商,软件自身形成不了社区,云服务商反过来会对软件产生巨大影响,许可证的变更只是抵抗云服务商的一种策略。

四、对策

目前,有三种变更许可证的策略。

第一种是采用 AGPL 许可证,任何对软件的修改(包括提供服务)都必须开源。这种策略的好处是防止云服务商对软件进行内部修改,坏处是不够灵活,可能打击企业采用该软件的积极性。

第二种是产品分层策略,同时提供免费的社区版和收费的企业版。这种策略可以保证收入,但是问题是,有些高级功能只在企业版提供,不利于软件的开源。

第三种就是 CockroachDB 的策略,软件依然开源,但是提供服务必须付费。我觉得,目前来看这种策略在开源和收费之间达到平衡,比较理想。

五、参考链接

  • Cockroach and the Source Available Future, Stephen O'Grady
  • Why We're Relicensing CockroachDB, Peter Mattis
  • Everything You Need to Know About the OSS Licensing War, Raj Dutt

来源:阮一峰的网络日志 原文:http://t.cn/AiplCYnW 题图:来自谷歌图片搜索 版权:本文版权归原作者所有 投稿:欢迎投稿,投稿邮箱: editor@hi-linux.com

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 奇妙的Linux世界 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、CockroachDB 的许可证变更
  • 二、商业源码许可证的特点
  • 三、问题的由来
  • 四、对策
  • 五、参考链接
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档