InfluxDB 集群、高可用性和商业化更新
作者:Paul Dix / 用例, 公司
2016年3月10日
导航至
更新:自从我撰写这篇文章以来,我们已经兑现了我承诺的事情。
- 我们持续改进了我们的开源平台,为 InfluxDB 增加了 88 个新功能和 133 个错误修复。这包括性能增强和所有新的查询功能,如 Holt-Winters、移动平均以及终止长时间运行的查询。
- 我们创建了 influx-relay,作为一个用于高可用性设置的纯开源选项。
- 我们在 4 月 19 日在 InfluxDB Cloud 上发布了 InfluxDB 的托管集群,公告发布于 4 月 19 日。
- 在 9 月 8 日,我们推出了本地部署的 InfluxDB Enterprise 产品。
“InfluxData 如何赚钱?” 这是在开发 InfluxDB 项目并围绕它建立 InfluxData 公司过程中,我被多次问到的问题。目前,我们有 云产品,一个用于 InfluxDB 的托管平台,我们还提供包含 SLA 的支持以及专业服务。
在过去的几个月里,我们与其他开源厂商进行了对话,并研究了不同的开源商业化模式。从我们的讨论中,我们了解到,仅靠支持不足以确保我们能够继续保持一切开源。似乎尽管客户持续为开源项目做出重大贡献,但随着基础设施成熟,他们会寻求降低运营成本,最终放弃支持。
我们还考虑构建闭源工具来处理生产任务,如管理和监控。我们发现这些工具在很大程度上无法很好地实现商业化,并且容易受到其他监控厂商和托管公司的影响。托管提供商尤其构成严重的生存威胁,因为他们可以提供我们开源软件的完全托管解决方案,从而消除任何客户购买生产工具、支持或我们的云产品的需求。在过去的 6 个月里,我们看到了 AWS 在其平台上推出托管 ElasticSearch 的情况。时间将证明 Elastic 如何从产品角度做出回应,但毫无疑问,亚马逊将继续改进并积极地将其服务产品商业化。
虽然我们致力于开源,但我们也无法忽视商业的现实。我们需要能够支付开发人员的工资,以继续推动 InfluxDB 项目向前发展。因此,我们决定将未来的集群功能构建为闭源软件。未来版本的开源 InfluxDB 将专注于提供作为独立服务器的最佳体验和性能。集群和高可用性功能将作为我们的 Influx Enterprise 产品的一部分提供,该产品将在未来几个月内推出。
我知道这对我们的一些用户和粉丝来说会是一个惊喜。在过去的 2.5 年里,我们一直在开源开发 InfluxDB,并且在这段时间里进行了多次集群迭代。然而,我们认为,对于 InfluxDB 社区和支持它的公司来说,最好的前进道路是更早、更积极地进行商业化,以确保我们能够继续为开源 InfluxDB 做出巨大贡献。对于那些期望我们最先进的集群作为免费开源软件的用户,我很抱歉让您失望了。
下周我们将发布 0.11.0 版本的第一个候选版本。虽然此版本包括查询引擎和集群代码库的重大改进,但它将是最后一个包含集群的开源版本。在四月份,我们将发布 0.12.0 版本,它将完全开源并具有出色的新功能,但它将专注于独立的 InfluxDB 服务器。这两者都将是当前稳定 0.10.3 版本的直接替代品。
对于正在寻找免费开源选项的用户,我们将发布开源的 InfluxDB Relay 项目,以及一个关于如何使用纯开源和订阅选项实现高可用性的 着陆页,与 0.12.0 版本及更高版本一起发布。从那时起,我们的集群工作将专注于闭源的 Influx Enterprise 产品。
我们进行这种拆分的目的是划清界限,即我们提供免费的纯开源软件和用于销售的闭源软件。我们的目的是通过开源服务我们的大部分用户群,同时将较小比例的企业和更大规模运营的用户商业化。
这不是一个我们轻易做出的决定。我们查看了我们当前的用户群,在全球成千上万的 InfluxDB 组织和用户中,只有不到 ½ 的百分比在运行活跃集群。考虑到我们一直告诉社区集群尚未准备好用于生产,仅用于测试目的,这是可以预期的。
然而,全球仍有成千上万的组织正在使用 InfluxDB,并在没有集群的情况下从中获得真正的价值。随着我们在 TSM 存储引擎、我们新的查询引擎以及扩展的查询功能中交付开源代码的增强功能,我们在开源产品中创造的价值将在未来几个月和几年内随着每个版本的发布而增加。
关于我们是否发布了残废软件的问题确实出现了。我交谈过的一些人认为,对于任何开源数据库来说,集群都是“基本要求”。但看看我们当前的用户群,我认为情况并非如此。当然,还有其他数据库,如 Cassandra 和 Riak,提供免费的开源集群,但这些数据库在分布式、集群环境之外几乎没有用处。
即使没有集群,InfluxDB 作为时间序列用例的独立服务器也很有吸引力。我们有用户在单台服务器上运行,每天摄取超过 10 亿个值,我们预计随着时间的推移,开源平台上的摄取吞吐量将增加。今天,有数千个独立 InfluxDB 服务器在生产环境中运行。看看我们即将推出的功能,我们预计这个数字会显着增加。
以下是未来 6 个月内将在开源 InfluxDB 中直接开发的一些功能的预览
- 改进的查询引擎,具有显着的性能提升和针对许多内存杀手查询(OOM 错误)的修复
- 更多查询函数,如移动平均、基于时间的连接、直方图、跨序列转换等
- 查询管理和终止长时间运行或行为异常的查询的功能
- 单台服务器上支持数十亿个瞬态序列。这是一个用于度量和标签的索引,它位于磁盘和内存中
- 地理空间查询
我们将继续在 MIT 许可证下开源开发独立的 InfluxDB 代码,就像过去两年所做的那样。我们构建世界上最好的开源时间序列数据库的目标保持不变。
对于我们当前和未来的客户,我们将在未来几个月内通过 Influx Cloud(我们的托管产品)和 Influx Enterprise(我们的本地部署产品)提供集群和高可用性。对于本地部署,我们的目标是提供高可用性集群产品,其中将包括开发者支持。
Influx Enterprise 及其提供的集群将在我们将其作为本地部署二进制文件提供之前,通过我们的 Influx Cloud 产品进行部署。这将使我们能够在我们可控的环境中快速迭代集群产品,并每天进行多次部署。对于我们的云客户来说,这意味着他们将获得任何问题的最快修复,而我们未来的本地部署客户将获得通过生产使用而久经考验的二进制文件。
如果您有任何意见、问题或疑虑,请随时发送电子邮件至 [email protected] 与我个人联系。我们致力于这个项目的长期发展,并拥有我们不断改进的引人注目的免费开源软件。