InfluxDB OSS的未来:更加开放,兼容闭源
作者:保罗·迪克斯 / 产品,用例,开发者
2021年2月26日
导航到
最近,我在Changelog播客上讨论了Elastic近期从开源许可证的转变。我在1:02:45到1:24:03进行了讨论,但如果您有时间听的话,整个节目都很有趣。我谈论了我们正在InfluxDB所做的工作以及我们对开源的未来计划。昨天,我的访谈部分被摘录了,我在推特上转发了它并说道
我谈论的未来是InfluxDB IOx,它是InfluxDB的新核心:一个使用Apache Arrow编写的列式数据库,并使用对象存储进行持久化。我在这里讨论了InfluxDB IOx,并也谈到了我们对于许可的偏好(IOx采用MIT & Apache2双重许可)。
有几个人误解了我那条推文的内容,他们认为我们对于InfluxDB所构想的未来是仅构建云软件并放弃开源。这完全不是事实。通过InfluxDB IOx,我们正在加强我们对开源的承诺,并将更多资源投入到免费提供的内容中。它将成为InfluxDB 2.x OSS即将发布的点版本的后端基础,以及我们云产品中的存储架构。我们还将为InfluxDB和InfluxDB IOx的用户提供商业产品,以补充他们正在运行的开放源代码部分。
关于互补性的最后一点,我认为是我们开源策略中最重要和最有意思的部分。在为InfluxDB开源和商业努力制定未来计划时,我们希望有两个属性
- InfluxDB Cloud服务以原样运行开源代码(如它们是为社区构建的)。
- 我们的本地客户应继续以原样运行开源代码。
换句话说:商业产品应该是与开源软件互补的独立软件。
从这个模式中可以获得重大开发、测试、稳健性和软件成熟度的胜利。我们的测试面是开源构建,我们在持续交付的云产品中运行这些构建。这意味着我们可能会在其他人之前发现错误。在客户环境中发现的任何错误都将修复在开源存储库中,并在现实世界中立即测试。
要实现这两个目标,意味着我们需要提供一个商业软件产品,它不是开源项目的分支。这是一款利用开源软件构建更大系统的软件。在我们的案例中,这个更大的系统实际上就是一个运营云平台。InfluxDB IOx将具有复制、订阅、横向扩展和纵向扩展的功能,全部在公开场合和许可协议下进行,允许用户进行合作和竞争。这些功能在InfluxDB开源版本的生产版本中从未提供过,但很快,由于我们新的策略,它们将很快实现。
这与我们的理念相一致,即开源事物应该是真正免费、开放和许可的,而商业事物应该是显然是封闭源代码和商业的。我们不希望InfluxDB的潜在用户对我们如何赚钱以及他们是否需要向我们支付任何费用感到困惑。
在InfluxDB 1.x版本中,我们的商业产品是开源构建的分支。也就是说,它是一个替代品。如果你是开源用户,你想购买InfluxDB 1.x版本的产品,你可以转移到我们的云平台,或者购买我们的InfluxDB Enterprise软件,这将需要替换你正在运行的开源InfluxDB实例。
这完全属于我所说的“开源核心”软件:核心部分是开源的,有一个专有分支为开源事物增加功能。许多数据库都是或曾经是这样的结构。然而,其中许多正在转向一个模型,即放弃开源许可,而选择一些带有使用限制的源代码可用许可。它们的明显目标是创造一个托管产品的垄断,同时仍然希望获得开源经常提供的免费营销、炒作和吸引力。
我认为开源核心和源代码可用策略都不是最佳选择。我想要开源项目,每个人都自由地使用软件,包括与开发它的任何公司进行商业竞争。我还想要项目有明确的目标和责任,可以在该范围内接受贡献,同时将其他问题推向其他软件。我提倡的互补模型将你的封闭源代码努力归类到其他软件类别。
现在你可能要说,等一下,你只是在诡辩。你只是选择将某些内容放在封闭产品中,而不是放在开源中。我现在就告诉你,那不是我的意图,但这个策略最好的部分是,你不需要相信我。因为封闭源代码与开源是互补的,其他开源开发者或其他公司无法阻止他们开发我们商业代码的版本。他们能够这样做,因为所有API都在开源代码中公开。
这种竞争受到保护,因为InfluxDB IOx代码(以及我们做的所有其他开源代码)都是根据许可的非限制性许可证许可的。如果你不相信这一点,你可以验证。它已经在互联网上,并且是免费的。这就是为什么AWS和其他人能够分支Elastic,并将开源工作向前推进。所以名字可能会改变……谁在乎呢?重要的是,当情况需要时,用户有自由将事情掌握在自己手中。
这种防止潜在未来不良行为者的保护,即使这些行为者是 ourselves,也是我们为什么如此重视许可协议和互补商业软件的原因。今天的许可证不是我们向社区做出的承诺,而是一份你已经签署并拥有的可交付成果。显然,在InfluxDB IOx中,它尚未准备好使用,所以在这个阶段,你需要相信我们会坚持下去。但是,由于还没有什么可用的东西(或丢失),你只需坐下来,吃爆米花,看戏。