写点什么

开源数据库接连修改开源协议,下一个会是谁?

  • 2019-01-10
  • 本文字数:1887 字

    阅读完需:约 6 分钟

开源数据库接连修改开源协议,下一个会是谁?

数据库作为业务的核心,是整个基础软件栈中的重要组成部分。近年来,随着开源社区的不断发展,新思路和新场景的不断出现,开源数据库在企业应用中获得了越来越多的应用,但是最近开源数据库风波不断,接连发生修改开源协议的事件。


近日,数据库流行度排行榜网站 DB-Engines 发布了 2018 年数据库排名情况,其中 PostgreSQL 蝉联“年度数据库”,MongoDB 和 Redis 分列亚军和季军。如今,MongoDB 和 Redis 都扛不住被“吸血”多年,收紧了开源许可,那么我们是否可在此开个脑洞,PostgreSQL 会不会是下一个收紧开源许可的流行开源数据库呢?

开源数据库为何接连修改开源协议?

事实上,2018 年后半年多个流行开源数据库修改了开源协议,下面我们就先以时间顺序来列举一下这些事件:


  • 2018 年 8 月,Redis Lab 将基于 Redis 构建的新数据库扩展许可修改成为 Commons Clause,许可条款规定,其他企业不允许将这些扩展服务作为云服务的一部分提供。

  • 2018 年 10 月,MongoDB 宣布未来将在 SSPL 的不同许可机制下授权 MongoDB 社区服务器软件,该许可允许云服务商提供 MongoDB 服务,但是必须从 MongoDB 获取商业许可或者想社区开源全部代码。

  • 2018 年,图数据库 Neo4j 宣布从 3.5 版本开始,企业版将在商业许可下才会提供,并且不再在 GitHub 上提供源码。


为什么这些开源数据库会修改开源协议呢?其实,从他们限制的企业和使用范围就可以看出一二。首先,Redis 和 MongoDB 都提到了“云服务商”和“云服务”这样的词汇,显然云服务商将开源项目转到自己的云平台并对外提供有偿服务,且从不回馈或很少回馈社区的做法激怒了他们;其次,MongoDB 和 Neo4j 提到了“商业许可”这个词,让我们不得不联想到他们对于这些开源项目流行度高但是商业回报低的发展态势很不满意,他们正在积极探索开源项目的盈利模式。

开脑洞,PostgreSQL 会修改开源协议吗?

近日,数据库流行度排行榜网站 DB-Engines 发布了 2018 年数据库排名情况,其中 PostgreSQL 蝉联“年度数据库”,MongoDB 和 Redis 分列亚军和季军。如今,MongoDB 和 Redis 都扛不住被“吸血”多年,收紧了开源许可,那么我们是否可在此开个脑洞,PostgreSQL 会不会在未来也收紧开源许可呢?


针对此问题,笔者之前也和很多 PostgreSQL 的专家进行了讨论,大多数 PostgreSQL 专家都给出了很乐观的意见,并且认为 PostgreSQL 在短时间内肯定不会修改开源协议。


首先,PostgreSQL 和 MongoDB、Redis 有一个本质的不同,那就是 MongoDB 和 Redis 背后都有一个商业公司在支撑,而 PostgreSQL 的开发机构是加州大学伯克利分校,PostgreSQL 更加学术派。



PostgreSQL 核心团队贡献者


其次,PostgreSQL 社区很活跃,且核心团队是由极具开源精神的、富有社区运营经验的专业人士组成。据官网数据显示,PostgreSQL 社区现在共有 50 余个本地用户组,400 多名贡献者,提交次数 45000+。



第三,PostgreSQL 的发展很稳定,2017 年 10 月 PostgreSQL 10.0 版本发布,2018 年 10 月 PostgreSQL 11.0 正式版发布,且 PostgreSQL 11 系列一直维持着一个月一个新版本的更新速度。

如果 PostgreSQL 修改开源协议,会对国内 PostgreSQL 生态有何影响?

想要讨论“如果 PostgreSQL 修改开源协议,会对国内 PostgreSQL 生态有何影响?”的话题,首先我们要对国内的 PostgreSQL 生态有所了解。


国内的 PostgreSQL 社区成立于 2011 年,社区管理委员会有轮值主席、常委、分会会长和 PG 大学虚拟小组组成。国内 PostgreSQL 布道者德哥曾这样描述过 PostgreSQL 数据库技术生态圈:“要形成内核研发、用户、培训机构、厂商、服务商、软件开发商、高校等‘业务与利益双向驱动’的良性发展生态圈。”


如果要是 PostgreSQL 宣布收紧开源协议,那么这个生态圈中的哪些环节会受到影响呢?厂商,尤其是在 PostgreSQL 基础上二次开发提供商业数据库的厂商;软件开发商,开发 PostgreSQL 周边工具的软件开发商;用户,包括个人用户和企业用户。


另外,还有一个问题值得我们思考,就是如果 PostgreSQL 修改了开源协议,那么开源协议修改的程度也需要考虑:是从某个版本开始还是所有版本都修改开源协议?如果是某个版本开始,那么之前的版本是否还可免费使用?协议更改的条款是针对企业用户还是个人用户?…

小结

目前 PostgreSQL 遵循的是 BSD 开源协议,该协议给予了使用者很大的自由,不仅允许使用者修改和重新发布代码,也允许使用或在 BSD 代码上开发商业软件发布和销售。另外,国内外的主流云厂商几乎都在提供 PostgreSQL 云服务,如国外的 AWS、Microsoft Azure,国内的阿里云、腾讯云、华为云等等。


开脑洞,您觉得 PostgreSQL 是否会修改开源协议呢?欢迎在下方评论留言。


2019-01-10 13:208171
用户头像

发布了 34 篇内容, 共 28.8 次阅读, 收获喜欢 58 次。

关注

评论

发布
暂无评论
发现更多内容

spring-bean的理解

Java 程序员 后端

spring-cloud-kubernetes背后的三个关键知识点

Java 程序员 后端

Springboot 实现 上传、下载 以及解决必须项目重启才能访问资源的问题

Java 程序员 后端

SpringBoot2---静态资源映射规则

Java 程序员 后端

SpringBoot实现对HikariCP连接池的整合

Java 程序员 后端

Spring--基于AOP实现事务控制

Java 程序员 后端

Springboot 整合Retry 实现重试机制

Java 程序员 后端

11 K8S之节点资源

穿过生命散发芬芳

k8s 11月日更

SpringBoot+shiro+mybatis实现权限登录

Java 程序员 后端

springboot多数据源配合docker部署mysql主从实现读写分离(1)

Java 程序员 后端

SpringBoot快速整合Mybatis&MybatisPlus(1)

Java 程序员 后端

Spring 三级缓存和循环依赖 思考和总结

Java 程序员 后端

Spring--基于IOC的CRUD操作

Java 程序员 后端

Spring5 框架新功能(Webflux)

Java 程序员 后端

springboot多数据源配合docker部署mysql主从实现读写分离

Java 程序员 后端

springboot实现AOP切面编程

Java 程序员 后端

Spring+SpringMVC+Mybatis框架整合(SSM整合)

Java 程序员 后端

Springboot 整合RabbitMq ,用心看完这一篇就够了

Java 程序员 后端

Springboot 最简单的发送邮件(文本、附件、图片)实战案例

Java 程序员 后端

从环境搭建到回归神经网络案例,带你掌握Keras

华为云开发者联盟

Python 神经网络 tensorflow keras 回归神经网络

springboot+mybatis+druid整合笔记

Java 程序员 后端

SpringBoot技术实践-SpringRetry重试框架(1)

Java 程序员 后端

Spring(一):容器的实现——两大核心类

Java 程序员 后端

来,带你一次性搞懂数据分析和数据挖掘!

博文视点Broadview

Springboot 整合 Current-Limiting 实现接口限流

Java 程序员 后端

一文搞定Python深拷贝和浅拷贝

老表

Python 深拷贝 浅拷贝 11月日更

SpringBoot使用Logbook记录HTTP请求响应日志

Java 程序员 后端

SpringBoot实现图片上传demo&Nginx进行代理显示

Java 程序员 后端

SpringBoot实现幕课网在线学习系统

Java 程序员 后端

SpringBoot快速整合Mybatis&MybatisPlus

Java 程序员 后端

SpringBoot技术实践-SpringRetry重试框架

Java 程序员 后端

开源数据库接连修改开源协议,下一个会是谁?_数据库_甜梨_InfoQ精选文章