整理 | 孙胜

出品 | CSDN(ID:CSDNnews)

Elastic近日对其官方Python客户端(Elasticsearch-py)做出了修改,使其无法与各个分支版本相兼容。Elastic开发者向Elasticsearch-py提交了一个PR,增加了一个验证逻辑,限制用户使用Elasticsearch客户端连接到由AWS创建维护的Elasticsearch分支OpenSearch,以及跟AWS相关的Elasticsearch产品和服务,后来又关闭了GitHub上相关的话题讨论。

AWS如何解决这次“危机”

面对Elastic的“主动出击”。AWS在官方博客中表示:“因为Elastic维护的开源库提供了方便的API接口,所以许多使用Elasticsearch和OpenSearch的开发人员都依赖于Elastic维护的开源客户端。修改后的客户端将无法连接到由AWS维护的Elasticsearch分支OpenSearch,以及一些版本较低的Elasticsearch开源发行版,或是托管到AWS Elasticsearch Service 的Elasticsearch。Elastic公司现在只允许应用程序连接到Elastic的商业产品上。”

不仅仅Elasticsearch的Python客户端出现问题,Elasticsearch的.NET连接器也发生了同样的事情,导致出现诸如“客户端注意到服务器不是Elasticsearch 受支持的发行版”之类的弹窗提示。另一个变化是Elasticsearch的Java客户端也已切换到Elastic License。

随着Elastic不断限制不同编程语言Elasticsearch客户端与OpenSearch产生联系。“OpenSearch 要如何处理当前可用的各种编程语言所对应的多种 connector 和 binding?“这个话题在OpenSearch社区引起了用户的焦虑。

AWS计划将在OpenSearch项目中添加一组新的开源客户端,使应用程序可以轻松连接到任何OpenSearch或Elasticsearch集群。这些客户端将允许开发人员继续运行当前版本的OpenSearch或Elasticsearch。并且用户先前的应用程序代码只需进行较少的更改,新客户端将提供他们与之前版本相同的API接口和功能。AWS计划修改的客户端包括:elasticsearch-py;elasticsearch-java;elasticsearch-net等客户端。

AWS补充到,不建议把Elastic维护的客户端更新到最新版本,因为这可能会导致应用程序中断。任何已更新其客户端并遇到问题的人都可以使用 OpenSearch文档说明,解决这些问题。他们预计在OpenSearch GitHub 组织中为每个新客户端库开放存储库。然后,迅速将客户端发布到所有相应的包管理器和存储库。确保开发人员可以轻松访问开源的Elasticsearch、Open Distro for Elasticsearch和OpenSearch客户端库。

双方纠纷的由来

Elasticsearch是Elastic于2010年首次发布的分布式免费开源搜索和分析引擎,具有快速实时搜索和可靠稳定的特点。因此Elasticsearch凭借自身的优势获得众多企业的青睐,比如Adobe、Cisco、Netflix和Uber等大型企业,亚马逊的AWS云计算服务也使用Elasticsearch用来存储、搜索和分析大数据。

早在2019年1月21日,AWS曾发布Open Distro for Elasticsearch。Open Distro for Elasticsearch项目是Elasticsearch的增强版本,基于Apache 2.0 100%开源,Open Distro for Elasticsearch包含了Elasticsearch里面的商务付费功能以及Kibana的开源代码。

2021年1月15日,Elastic的创始人Shay Banon官网发文,宣布将更改开源协议,从Elastic 7.11版本开始,Elasticsearch与Kibana代码由原先遵循的 Apache 2.0许可协议调整为SSPL与Elastic License双许可协议。面对Elastic公司更改开源协议的行为,AWS回应称,Elastic这种做法只是为了自己的利益垄断,而且更改开源协议后的SSPL协议丧失了“开源精神”。AWS这样的说法,也让Elastic的创始人Shay Banon在2021年1月20日官网发文怒怼AWS,他们更改开源协议完全是因为AWS的逼迫不得以而为之,同时指责AWS本身的种种恶行。AWS也回应Elastic公司的声明,否认自己威逼Elastic公司,表示自己一系列做法完全是为了创造一个更好的开源社区,也强调自己的做法得到了很多公司的支持。

业界如何看待这次纠纷

对于这次AWS与Elastic的纠纷,有开发者吐槽亚马逊本身就有“不回报开源”这个标签,而且Redis Labs、Confluent 和 MongoDB 这些公司曾经先后修改了开源协议,并明确表示修改的原因,主要为了避免像 AWS 这样的大型云服务提供商将他们的开源软件进行改版与销售。虽然AWS这次努力为OpenSearch打造成一个”完美的”开源社区,也不易改变人们对AWS的传统印象。

依旧有人认为AWS的行为是在“抢劫”开源项目,也有开发者表示,Elasticsearch属于社区的开源贡献者,Elastic没有权利保留版权,也不应该修改许可协议,他们这样做违背了开源社区的精神。

参考链接:

  • https://aws.amazon.com/cn/blogs/opensource/keeping-clients-of-opensearch-and-elasticsearch-compatible-with-open-source/

  • https://www.theregister.com/2021/08/09/elasticsearch_python_client_change/

☞小米 MIX4 发布、三年要拿下全球第一、还有一只 9999 元的狗?快看 3 个小时雷军都讲了什么!☞OpenAI升级Codex,直接将书面语言转为计算机代码;区块链网站被黑客偷走6亿美元加密货币|极客头条☞世界第三大浏览器正在消亡

AWS 与 Elastic 矛盾再升级!相关推荐

  1. aws beanstalk mysql_DevOps on AWS之Elastic BeanStalk

    Elastic BeanStalk相关概念 童话世界中存在着一种魔力beanstalk(豆荚),种在花盆里可以无限的向上生长,越长越高直达云端.AWS Elastic Beanstalk也采用类似概念 ...

  2. x10i升级android4.0,智再升级 Xperia X10i升Android 2.3

    智再升级 Xperia X10i升Android 2.3 2011年08月04日 16:08作者:LEE编辑:李军工文章出处:泡泡网原创 分享 近日索尼爱立信官方表示,从即日起中国大陆地区用户可通过官 ...

  3. AWS的Elastic IP和Private IP的区别

    上图elastic IP即弹性IP: 弹性 IP 地址 是专为动态云计算设计的静态 IPv4 地址.弹性 IP 地址与 AWS 账户关联.借助弹性 IP 地址,您可以快速将地址重新映射到您的账户中的另 ...

  4. qtdesigner右击按钮没有 to slot_或添加“力感按钮”再升级,Apple Pencil会更“能打”?...

    [钉科技编译]"I have a pen/I have an apple/Ah apple pen",钉科技编辑写到的这些"歌词",看上去是不是很熟悉?对了,这 ...

  5. 性能提升3倍、时延降低70%,阿里云企业级存储ESSD云盘再升级!

    9月22日,阿里云存储年度新品发布会上,阿里云基础产品资深产品总监陈起鲲发布了其全球领先的旗舰级块存储产品ESSD的两款新规格(ESSD Auto PL.ESSD PL-X),并宣布了新增的多项企业级 ...

  6. 金山云发布全新Serverless产品 云原生基础设施再升级

    随着企业数字化转型的深入,云计算正全面步入2.0时代,即为云而生的阶段.以云原生为代表的理念,已经成为进一步释放云计算价值的核心推动力. 1月6日,金山云举行了云原生媒体沟通会,金山云副总裁.合伙人钱 ...

  7. 互联网日报 | TikTok将开启Pre-IPO融资;菜鸟裹裹战略再升级;滴滴中国西区总部落户重庆江北...

    今日看点 ✦ 字节跳动:TikTok Pre-IPO轮融资不排除还会引入其他投资者 ✦ 腾讯:Wecom是企业微信海外版,和WeChat是完全不同的产品 ✦ 菜鸟裹裹宣布战略再升级,未来一年服务用户翻 ...

  8. 牧马人鼠标g13鼠标宏_经典再升级:达尔优牧马人五代游戏鼠标

    经典再升级:达尔优牧马人五代游戏鼠标 牧马人系列可以说是达尔优的翻身之作,从一个名不见经传的小厂到现在有多见地,多款产品得到消费者的认可,或多或少是因为达尔优的经典牧马人系列带来的口碑与销量. 而牧马 ...

  9. oracle delphi唱盘,经典再升级 Oracle Delphi MK VI Gen 2

    加拿大Oracle最出名的产品,莫过于Delphi黑胶唱盘,Delphi在1979年首度问世,外观设计的基本模样,就和现在Delphi MK VI Gen 2几乎一模一样,三点式避振外加铝合金一体成型 ...

最新文章

  1. gbdt 算法比随机森林容易_用Python实现随机森林算法
  2. typescript利用接口类型声明变量_TypeScript入门指南(基础篇)
  3. mysql把latin1编码的中文转成gbk(或utf8)编码
  4. Memcached 在linux上安装笔记
  5. 和后台如何对接_业务系统如何对接第三方服务?
  6. IBM AIX 5.3 系统管理 -- 系统启动过程详解
  7. 漫步数学分析十——序列
  8. HBase的BulkLoad详解
  9. Nginx [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)
  10. 传统企业是滚雪球逻辑
  11. MySql-第七篇单表查询
  12. 自适应特征融合用于Single-Shot目标检测(附源代码下载)
  13. 基于GMT绘制行政区划图
  14. 揭开互联网金融健康发展意见神秘面纱
  15. VUE学习笔记,最近12,12上班,没得空继续学习vue,先记录一下
  16. 数据库系统之ANSI SQL中的事务处理
  17. HTML5期末大作业:红酒销售网页网站设计——品牌红酒销售网页模板(4页) html网页设计期末大作业_网页设计平时作业
  18. Fast Walsh-Hadamard Transform (快速沃尔什变换)
  19. 7-1 jmu-python-汇率兑换
  20. to_param()函数和parameterize()函数

热门文章

  1. docsify+github/gitee搭建个人在线文档
  2. 用C语言编写链式存储的线性表(含代码实现)
  3. selenium操作webdriver(一)
  4. SpringBoot是什么?
  5. 使用Node.js的Express框架搭建和开发项目
  6. SM系列国密算法(转)
  7. 我的第一个python web开发框架(23)——代码版本控制管理与接口文档
  8. FM算法及FFM算法
  9. margin和padding的四种写法
  10. 2014百度之星资格赛——Disk Schedule