開源記憶體資料庫Redis背後官方贊助商Redis Labs宣布,其為Redis建構的模組包含RediSearch、Redis Graph、ReJSON、Redis-ML和Rebloom,現在採用Commons Clause修改的Apache 2.0授權許可,這項修改針對現有雲端服務供應商,將不再能單純以提供使用Redis Labs模組的Redis託管服務收費,但這項改變不影響其他私人與商業用途,仍維持免費自由使用。

Redis Labs在官方網站更新授權聲明,文中提到Redis本身為開源且使用BSD授權條款,建構在Redis之上的模組,則視作者意願使用不同的授權許可,而由Redis Labs開發的RediSearch、Redis Graph、ReJSON、Redis-ML和Rebloom模組,現在使用Commons Clause修改的Apache 2.0授權許可,而Redis Enterprise則仍是閉源的專有軟體,需要Redis Labs的商業許可。

Redis Labs之所以開始在其模組使用Commons Clause,是為了阻止開源軟體Redis被雲端供應商用來賺取暴利,卻沒有回饋相對的資源給社群。Redis Labs提到,現代開源軟體在過去十年創造了巨大的價值,許多企業受惠於資料庫或是分散式系統等開源專案。不過,現今雲端供應商將一些成功的開源專案,重新包裝成具競爭性的專有服務商品,Redis Labs認為,這樣的作法一再違反開源軟體的理念,雲端供應商鮮少對這些開源專案貢獻,相反的卻利用企業優勢壟斷性的賺取數億美元,這種行為對開源社群造成嚴重衝擊,甚至使一些支援社群的公司破產,而Redis就是例子之一,大多數的雲端供應商都提供Redis託管服務,並從該服務賺走大把銀子,但Redis卻非由這些公司開發的軟體。

Redis Labs表示,他們資助並且帶領社群開發Redis,這些獲利應該由他們享用,因此雖然Redis永遠保持開源BSD授權許可,但也同時阻止雲端供應商,使用具有Redis Labs所開發模組的Redis創建託管服務。Commons Clause是由數家開源基礎架構企業所創造的授權方式,其出現的目的就在於保護開源軟體合理使用,不受企業濫用。

即便Redis Labs調整了授權方式,但是除了雲端服務供應商,其他使用皆不受影響。Redis Labs提到,Redis仍保持開放,無論企業規模、商用與非商用,都可以自由的使用Redis技術,並整合自家專有的解決方案。雖然Redis上特定模組使用了Commons Clause修改的Apache 2.0授權許可,還是可以在任何應用程式上自由的使用,只有銷售產品的價值全部或是大部分來自Redis,這樣的使用方式才受到禁止。

Redis之父Salvatore Sanfilippo在自己的部落格提到,由於一開始Redis Labs官方授權頁面說明不夠清楚,導致外界一度以為Redis不再開源,他解釋,Redis是十年來社群的集體結晶,應該最大程度的保持可用,因此才會採用最寬鬆的BSD授權許可,不過因為Redis Labs要保護自己的企業利益,所以將自家開發的模組使用Commons Clause修改的Apache 2.0授權許可。Salvatore Sanfilippo自己仍會繼續為Redis開發像是Disque模組,並且採用AGPL授權,來強迫其他SaaS公司分享他們貢獻。


Advertisement

更多 iThome相關內容