1. 程式人生 > >Redis開源專案的終極殺手? ——CRUG解讀Redis開源協議變更

Redis開源專案的終極殺手? ——CRUG解讀Redis開源協議變更

引言:

資料庫製造商 Redis Labs 本週將公司開發的Redis 模組從 AGPL 遷移到將 Apache v2.0 與 Commons Clause 相結合的許可證,對許可證涵蓋的軟體作了限制。許可證的變更意味著自研 Redis 模組 - RediSearch,Redis Graph,ReJSON,ReBloom 和 Redis-ML 將不再是開源軟體,而是原始碼可用(source available)。

新許可證限制了雲提供商向客戶提供這些 Redis 模組的能力,Redis Labs 可能會成為包含這些附加元件的唯一服務銷售商。 但是,Redis 資料庫程式碼仍屬於 BSD 許可證。

Redis Labs 並不是唯一一家做出這樣改變的公司。5月,Neo4j 圖資料庫在其 AGPL 許可證中添加了 Commons Clause。

Redis Labs 的聯合創始人兼首席技術官 Yiftach Shoolman 表示:“多年來,雲提供商通過銷售基於開源專案的雲服務,可從中獲利數億美元,可這些專案實際上並不是他們自己開發的,如 Docker,Elasticsearch,Hadoop,Redis 和 Spark。這阻礙了社群投資開發開原始碼,因為任何潛在的好處都歸雲提供商而不是程式碼開發人員或他們的贊助商。”

       Redis的license變更許可證引發開源社群熱議,大家比較關心的問題主要集中在這幾個方面:Redis 還開源嗎?新出現的 Commons Clause 到底包含哪些內容?協議變更對使用者的直接影響有哪些?下面就由小編為您詳細解答,關於此次Redis開源協議變更大家關心的一些問題。

Q:Redis協議到底做了哪些變更?

A:為了讓大家更清楚的瞭解變更點,小編特意梳理了如下表格供大家參考:

變更前

變更後

備註

Redis Core

BSD

BSD

不變

Redis Modules

AGPL

AGPL

不變

Redis Modules(RedisLabs公司創辦)

AGPL

Apache 2.0 with Commons Clause

涉及模組:RediSearch, Redis Graph, ReJSON, Redis-ML, Rebloom

表1.Redis協議變更範圍

Q:新出現的 Commons Clause 到底是什麼東東?

A:Commons Clause v1.0 的介紹:

本軟體由許可方根據以下定義的條款提供給您,但須符合以下條件。

在不限制許可中的其他條件的情況下,根據許可證授予的權利不包括、並且不授予您銷售軟體的權利。

綜上所述,“出售”是指根據許可證授予您的任何或所有權利,以向第三方提供費用或其他報酬(包括但不限於與軟體相關的託管或諮詢/支援服務的費用),產品或服務的價值完全或基本上來自軟體的功能。許可證要求的任何許可宣告或歸屬也必須包含此 Commons Cause License Condition 宣告。

簡單地說就是:不許銷售,不存在商業環境。

Q:Redis作者對此是怎麼看的?

A:Redis作者antirez表態:“對於我將開發的Redis模組,比如Disque,我會選擇AGPL

我們生活在雲時代,所以使用新許可證會強制其他SaaS公司重新提交回他們的改進。然而,這不適用於Redis本身。 Redis是10年集體努力的成果,是我們可以一起做其他事情的基礎,這個基礎必須有儘可能多的可能性,即使用BSD許可證。”

Q:Redis中國使用者組(CRUG)如何解讀這件事情?

A:Commons Clause 的初衷,是為了抵禦一些不良行為。如那些使用原始碼,卻不對開原始碼維護做出補償的公司,但這個License在開源界存在很在的爭議。如OSI VM Brasseur 副總裁吐槽 Commons Clause 的銷售禁令表述不明晰,可能會面臨法律問題。OSI 總裁則認為,這種許可證剝奪了軟體自由。

的確,新許可證對使用Redis Module的商業公司影響較大,Commons Clause 並未給出支援開源軟體的解決方案,而是將開源軟體變成了專有軟體,並將所有開發者的開源貢獻成果交由 Redis Labs 來控制,因為Redis Labs 是這些元件的唯一服務銷售商。

這限制了其他商用公司向客戶提供這些 Redis 模組的能力。Redis Labs 是否能夠通過Commons Clause獲得更多好處,需要持續觀望。

Q:雲服務廠商的表現如何?

A:華為雲分散式快取服務DCS提供雲上的Redis服務,為使用者提供Redis Core的基礎能力,並未提供Redis Module相關能力,此次協議變更對使用者是沒有影響的。華為雲在積極參與開源活動的同時,尊重開原始碼的智慧財產權,嚴格遵守開源協議的要求,為使用者提供更優質的雲服務。