在刚刚过去的2022年,Tapdata 带着开源项目 PDK(Plugin Development Kit)及 Tapdata Community 和大家见面,兑现了我们对自己以及开发者们的开源承诺,同时与阿里云等生态伙伴联合,加速构建更加开放的数据生态。
近日,Tapdata 创始人兼 CEO TJ 在阿里云「大咖说」栏目中,对话阿里云数据库开源负责人惊玄,彼此围绕数据技术开放生态这一主题展开交流,主要内容包括:
- 一个良好的开源生态具有哪些特征?
- 开源与商业一定是对立的吗?
- 开源产品应该如何做好商业化?
以下为部分核心对话内容整理:
一、Tapdata 对于开源整体策略的思考
Tapdata 的目标其实很明确,关于开源,问题从来不是要不要开源,而是什么时候开源。
但之所以选择在公司成立的第三个年头,而不是起始点就选择开源,也的确有我们的考量。从 DaaS(数据即服务,Data as a Service)起步的我们,其实最初也不确定这个新的概念是否能被市场接受并得到验证。因此,我们花了两年时间来寻找一个答案——在没有推广的情况下,我们逐渐积累起一批客户,并从内外得到了很多正向的反馈。于是我们知道,是时候了,Tapdata 会是一个值得大家使用的产品,DaaS 也是一个值得大家尝试的处理数据的新方式。
因此,虽然市场的开源热潮已经退去,我们仍然选择了开源,希望更多开发者能够接触到这样好用的技术,这也是我们的初衷。
二、Tapdata 开源发展基础路径与 PolarDB 有哪些合作点
Tapdata 核心职能是数据服务,虽然也会涉及存储,但我们的定位也非常明确——Tapdata 本身不是做存储的,同时和数据库之间存在非常紧密的上下游和生态关系。这里存在两种生态合作方式:
- 将数据库作为我们数据的来源。DaaS 平台不会直接产生企业核心数据,而是从 PolarDB 这样的生产数据库中获取数据;
- 将数据库作为我们数据的目标。这种情况下,Tapdata 会帮助企业将大量孤岛数据汇聚到中央化平台,其上,可以再同一处快速访问到想要的所有主数据、核心数据,而且这些数据还是实时更新的,因此,我们需要将数据放到一个分布式、大容量的现代数据库中。PolarDB 就完全符合需求,可以作为 DaaS 服务的存储,成为我们的一个目标。
此外,从数据汇聚的角度来看,Tapdata 与开源 PolarDB 也不乏不谋而合的适配点,前者是功能强大的数据高速公路,专注实时数据集成与实时数据服务,未来还会向以主数据为代表的数据资产管理进一步发展;后者作为云原生分布式开源数据库,未来的定位也是想做数据大集中,这也是 PolarDB 希望主推的应用场景。在这一点上,针对用户痛点,双方未来也有非常大的合作空间,也期待碰撞出更多可能。
三、Tapdata 主要解决的用户场景有哪些
从创业之初开始,Tapdata 的路径就不曾稍改——我们要做 DaaS,为企业提供一个数据即服务的实时数据服务平台。这是个新的形式,而新型产品意味着更大的挑战,我们需要让用户理解我们的价值。在实现实时数据服务,走向更深层产品形态的途中,我们投入大量时间和资源,构造了一套稳固可靠、内置多种数据源的数据集成系统,从而衍生了一个独特的产品,那就是实时数据集成,这也是目前我们的主流产品形式,支持将企业各个业务系统,包括数据库系统、文件系统等的数据第一时间的采集过来,放到中央化存储里。实时数据集成与实时数据服务两大能力,可以满足企业内部的多种数据场景需求:
- 同构数据实时复制或同步,用以替换 Informatica、OGG 等
类似 Oracle → Oracle 的高可用、灾备,或数据备份等需求,传统解决方案一般会选择一些昂贵的商用工具来解决,Tapdata 则提供了一个低成本的新选择。 - 异构数据实时复制或同步,低代码易操作
类似于新、老业务系统间的数据交换与同步,Tapdata 也可以提供很好的支撑。无需写代码,即可将各种数据库来源的数据通过托拉拽的方式,高度同步、一致地复制到目标端的新系统中。 - 实时数据服务(核心能力)
这是经多个成功案例验证有效的企业数据解决方案。其独特性在于,虽然架构类似,本质也是汇聚数据,但与大数据并不相同。后者主做 AP 事务,即对报表、指标、历史数据的分析与洞察;而 Tapdata 则是通过自身的实时接入能力,第一时间获取来自 Oracle、 MySQL 等的交易数据、订单数据、客户数据等,放到一个存储中,类似 MongoDB、TiDB、PolarDB 这样的分布数据库中。如此,企业就可以直接从中央化存储中,通过 API 或者直接的数据库调用方式获取这些经整合、处理、加工的完整、一致的企业数据。
四、并驾齐驱的开源与商业化
作为开源社区“老兵”,TJ 深知开源和商业化从来都不是“对着干”的关系,相反,开源还能够为商业化提供非常好的支撑。近年来多家大型开源公司的上市,也可以证明这一点,开源社区的力量不容小觑。
海外有个说法叫“Developer First”(开发者优先),随着 IT 对企业的贡献越来越大,开发者的价值也越来越高,他们在公司中语权也越来越重,基本上很多重要的产品选型或者技术选型都是由开发者来决定。而开发者惯常接触的往往不是那些传统的商业化闭源软件, 他们会更加偏爱在无需申请预算的情况下,可以怀抱学习心态来挖掘探索,这就是开源的重要所在。如果一味不拥抱开源,我们的技术可能就没有机会来到开发者们手上。
除此之外,单就 Tapdata 而言,我们的使命是“Make Your Data on Tap”,通俗讲就是让数据向自来水一样方便使用,但同时这也意味着我们需要对接的数据系统非常庞杂。尤其在面对大中型传统企业时,历史发展积淀了数十成百套业务系统,覆盖的数据源类型繁多,对我们产品的挑战也就更多。为了满足不同用户的各式数据源需求,单靠常规方式来开发,支持速度很难得到明显提升。但如果我们选择开源,将开发权限交予有需求的开发者自己以及数据库伙伴手中,一方面,开发者通过接入数据源获取产品能力,数据库厂商可以快速获得对50+数据源的对接能力;另一方面,Tapdata 支持的数据源快速提升,同时可以透过数据库生态伙伴触达更多潜力用户,这无疑是三方获利的选择,更是开源的力量。
五、一个良好的开源生态应该具备哪些特征
- 整个研发过程结合社区:技术设计、技术讨论也要是开放的,能够为社区用户提供健康、有意义且中肯的建议,而不是完全由内部产品经理决定,让外部的社区开发者能够真正接触到生态。开发流程也从闭源的模式逐渐转移到开源的模式,启用 GitHub 工具,使用开源方式进行事项管理、进度推进以及 tracking,开放透明,融入生态。
- 社区有一定的活跃度:项目贡献者逐渐由以内部成员为主,向越来越多的外部开发者参与转变
- 重视开源社区的用户:提供和付费用户一视同仁的技术支持与服务,重视社区用户的声音。
更多精彩观点及讨论,详解完整版对话视频。
【相关阅读】