共计 5729 个字符,预计需要花费 15 分钟才能阅读完成。
在近日举办的 ApacheCon Asia 大会主题演讲上,Kyligence 联结创始人兼 CEO,Apache Kylin PMC 韩卿给大家带来了「From Open Source to Product,开源我的项目产品化的思考与实际」的演讲,分享了 Apache Kylin 的最新进展及将来布局,技术和产品思维的比照,以及如何通过产品思维去经营开源社区 / 我的项目等话题分享,想理解更多快往下看吧~
以下为韩卿在大会的演讲实录
大家好!我是韩卿,非常高兴明天可能在 ApacheCon Asia 给大家分享。我记得上次加入 ApacheCon 是在 2016 年的温哥华,过后 Apache Kylin 作为首个来自中国的顶级我的项目刚刚毕业,咱们在 ApacheCon 上进行了分享,也参加到了国内社区中。在过来的五年中,咱们看到很多来自中国的我的项目,一直进入孵化器,而后毕业成为顶级我的项目,整个社区咱们的声音也越来越多,我很快乐看到,来自华人的力量、技术及内容越来越多地在寰球开源社区里进行发声。
我置信明天有十分多的同学会带来开源文化、社区经营、技术等话题分享,我想从另外一个角度,也就是产品的角度,给大家分享一些咱们的教训和认识,即如何用产品思维去经营一个开源我的项目。明天的分享次要是以下三局部:
- Apache Kylin 的简介及将来布局
- 开源我的项目中的技术 VS 产品
- 如何通过产品思维经营开源社区 / 我的项目
Apache Kylin 的简介及将来布局
Apache Kylin 是在 2014 年从 eBay 中国研发核心奉献到了 ASF,成为了孵化器我的项目,在 2015 年的 12 月,Apache Kylin 毕业成为了顶级我的项目,这也是第一个来自中国的顶级我的项目。IPMC 的 VP Ted Dunning 也过后给了咱们十分高的评估,他说 Apache Kylin 代表了中国以及亚洲国家在国内开源社区里的奉献和参加。
Apache Kylin 诞生几年来,曾经播种了超过 1500 多家客户,寰球客户从咱们的老东家 eBay,包含 Cisco、Walmart、Apple、Amazon、Microsoft,以及欧洲的 OLX Group 等;同时也有十分多的国内客户,规模以上的互联网公司很多都将 Apache Kylin 作为他们在整个大数据分析外面不可或缺的一个组件,咱们也非常高兴看到越来越多社区敌人为 Apache Kylin 的演进与迭代继续做出了奉献。
Apache Kylin 用来做什么的呢?如架构图所示,Kylin 其实充当了传统的数据仓库中最外围的一块——数据集市或者说 OLAP 层,用户会在 Kylin 外面定义相应的数据模型,包含星形模型、雪花模型以及星座模型等,在今年初公布的 Kylin 4.0.0-beta 中咱们曾经去除了对 Hbase 的依赖,可间接应用 Parquet 作为存储,能在云原生时代更符合云上的利用,这也是咱们接下来整个产品演进之一。
除此之外,Kylin 也有十分多其余演进,比方反对实时能力,包含应用 Flink 进行相应的解决。整个过程中,万变不离其宗,咱们是为用户的 OLAP 能力所服务。最近业界技术也在一直倒退,Kylin 社区也心愿通过不断创新,可能合并所长,为社区用户带来更多价值。各位同学如果对这些技术或话题感兴趣,欢送退出到 Kylin 社区一起来探讨和奉献。
案例分享
介绍两个简略的案例。第一个案例是来自欧洲的电信公司。这个案例是我在西班牙做展会的时候意识的,他们过后做的是整个国家的网络品质的剖析、通信,包含应用手机的型号、版本以及相应的内容,来晋升整个网络服务质量的监控和治理。他们仅须要一个十分小的 Hadoop 集群,在较小的老本下就能够撑持大量的利用。
第二个案例是来自德国的跨境电商平台 OLX 团体,OLX Group 是寰球互联网巨头 Prosus 公司的一部分,Prosus 也投资了腾讯等公司,他们应用 K8s 来部署 Apache Kylin,同时应用 Amazon EMR 将 Kylin 的 HBase 集群与 Hadoop HDFS 托管在一起,并且将数据备份到 S3 中。该数据架构还领有一个主动还原过程,当发现部署中产生解体时,该过程能够随时从 S3 复原所有环境。OLX Group 将 OKTA 用作用户登录的 SAML 联邦身份认证,也把 OpenLDAP 用于用户受权。分析师和非技术用户能够应用统一、全面监控、稳固且可扩大的跨团队环境,轻松顺畅地构建多维数据集并应用 Apache Kylin。更多案例详情大家能够参考👉 Kylin on AWS 云上运维实际|揭秘 OLX Group 寰球数据基础架构
Kylin 版本迭代
接下来介绍一下 Apache Kylin 当初的版本状况。
在往年公布的 Kylin 4.0.0-beta 中,咱们曾经去除了对 Hbase 的依赖,反对基于 Parquet 的存储,并且 Apache Kylin 4 曾经在不同企业开始测试并上线,例如有赞等社区用户曾经在 Meetup 中分享了一些性能优化和运维实际,成果还是相当不错的。
咱们往年还会做几个比拟重要的工作,一个是反对 Spark3,可能疾速引入到 Spark 最新能力 。另外,Apache Kylin 在很多时候是以性能著称,但大家对性能的谋求永远没有起点。 咱们打算往年带来新的技术,包含 LocalCache 以及 SoftAffinity 等。存储和计算尽管拆散,但又要在软亲和性能力上能够放到一起,这对咱们来说是比拟新的一块畛域,也在一直地进行摸索,心愿各位有趣味的点能够在这个下面,在社区里能够给咱们进行进一步的探讨,咱们曾经做了相干的钻研,咱们能够看到这里可能带来的十分大的变动,可能一直地晋升零碎的性能和稳定性。
另外一方面,咱们也会在接下来一直地想方法去除对整个 Hadoop 的依赖,尽管 Apache Kylin 在出世时是作为 Hadoop 上的 OLAP,然而随着这两年云计算的迅速倒退,云原生曾经是大势所趋,咱们往年也会花比拟大的精力去更好地拥抱云原生。
得益于 Apache Kylin 最早的可插拔架构,使得咱们对于相应的依赖其实都是有条件随时更换底层存储的,咱们也在逐渐迁徙到 K8s 上。
将来咱们也会更多地在整个的 CloudNative 上一直进行一些投入。外围的指标,咱们心愿可能将 Apache Kylin 从原来依靠于 Hadoop 做 OLAP,变成转换为一个纯 self-contained 的 OLAP 的能力。咱们也会将整个资源的调度、依赖齐全迁徙到 K8s 方面上,咱们会将存储更多面向到对象存储上,咱们也心愿将其余的一些组件一直地更换成更加通用的组件之后,使得整个的依赖会更少、部署更简略。
咱们预期在明年做到,用户给到一堆机器,或者一些 K8s 的资源,咱们就可能间接部署上、应用起来,不再须要任何 Hadoop 的依赖。益处在于,一方面咱们会确保整个的零碎会平滑地过渡,这对于当初应用 Hadoop 的客户来说,是十分重要的;客户在爱护现有投资的同时,在向将来转变的过程中,不必放心很多事件重来一遍。我置信,在将来的三到五年,随着云计算、云原生的崛起,肯定会对 Hadoop 带来一些影响。如何平滑地过渡?如何更好地将现有的这些利用以最小的老本、最小的代价迁徙过来?我置信这是一个十分值得探讨和投入的方向。
技术 VS 产品
接下来,给大家分享咱们在打造开源我的项目以及经营社区过程中失去的一些思考。在技术方面,这次大会有很多技术专家和行业大佬,然而在产品方面可能会被稍微疏忽,明天我想探讨技术和产品相干的话题。
借用这张图,大家能够看到产品和技术其实是不一样的。技术研发更多地是冲破某一个技术上的挑战,而后去做翻新,然而产品往往是将一些技术或者想法变成市场的行为,可能满足更多的用户和利用场景。两者的出发点其实也不一样,技术往往是从某一个点进行深刻地钻研和投入,然而产品可能首先要想市场状况、生产成本等问题,两者不一样,但又是严密相连的。
技术是让本人爽,产品是让他人爽。技术让本人爽的起因在于,是说咱们明天做了一个很好的算法、架构或者框架等,本人会有很大的成就感。然而咱们做产品的时候,状况就不同了,因为只有本人爽是不够的,咱们肯定要让他人爽,用户要用得开心、用得难受。
以 Apache Kylin 为例,刚做进去的时候咱们都十分兴奋,然而在刚开源进去的前三个月,咱们十分苦楚,因为社区里很多用户发现在兼容性、编译、适配等方面都呈现了各种问题。在这两年咱们的工作中,更大的感悟在于,如果只是把一个技术点做进去是远远不够的。咱们如何让更多的人应用好你的技术?也就是,你的产品怎么让他人用得爽?这其实要思考的往往比技术角度要多得多,甚至很多事件是不得不去做的。
另外一点,咱们讲技术更专一在问题自身,产品更专一在价值自身。技术往往是咱们碰到了一些挑战,比方是性能、并发、或者某些算法等,通过一些技术、论文、能力,把它变成一个解决方案。然而从产品角度思考,十分重要的是在技术解决了问题之后,咱们如何把它变成一个有价值的产品。这里不是说要把我的项目变现,因为开源我的项目自身就是收费的,咱们更应该关注的是,如何让用户可能取得从我的项目中取得价值?这其实是一个十分有挑战的点。
我最早去美国进行社区交换的时候,很多人会问为什么会把 GUI 都开源进去了?这是一个十分重要的点,如果咱们只关注在技术自身,只有分享一个脚本可能解决问题吗?或者能解决,然而用户要花大量的工作去应用它。咱们间接把 GUI 给开源进去,就是心愿用户能够间接应用起来。当产品越来越容易应用,就能给用户带来更多价值,用户能关注到解决问题之后的业务价值,而不在于技术自身。大家对性能的谋求是没有起点的,然而仍要通过一些翻新的形式来谋求技术和产品这两者的均衡。
我总结下来一句话叫做没有好的技术,产品肯定没有竞争力,然而如果没有好的产品,技术就没有生命力。优良的技术进去之后,肯定须要产品让人去应用起来,好的技术须要好的产品来配合,同时好的产品也须要有技术来作为撑持。
咱们能够看到,开源是目前最佳的、也是最快的让基于技术的产品一直打磨的形式,通过开源,能让一个我的项目更快地成熟、被应用、甚至教育市场等。尤其是这一两年,开源社区和我的项目失去了更多关注,也心愿将来有更多敌人一直被激发,去从参加开源、奉献开源,一直壮大开源社区。
如何通过产品思维经营开源社区和我的项目
接下来分享如何像产品一样去经营开源我的项目。参加开源这么多年以来,给大家的倡议是心愿各位可能从技术角度之外做一些思考,因为即便是一个很简略的开源我的项目,甚至一个小工具,也须要一直地去宣传、演进,去找到用户。这其实和做一个产品实质上没有任何的区别,咱们常常开玩笑说产品经理是一个产品的 CEO,其实对于一个开源我的项目的负责人来说,其实就是这个我的项目的 CEO,如何经营好产品和社区,曾经超过了技术自身。
上图是 Product Led Growth,这个图经常被用来形容商业产品的倒退阶段,然而其实开源我的项目也是一样,只不过整个过程中,可能不太须要市场和销售团队,因为开源社区自身曾经能够做到了。
开源在这个阶段的益处是什么?当一个新技术或产品走向市场的时候,能以更早的工夫、更低的老本让用户应用起来。然而,在前期阶段,有一点不容忽视,大家能够看到图上有一个 Customer Success Team,对应到开源社区就是去一直地做社区经营、用户反对等。
从 Apache Kylin 开源晚期到当初,咱们对社区的反对仍然是十分忙碌的,其实大家也能够看到,在整个的过程中,咱们的目标其实是让开源的用户用起来,和这个 Life Cycle 是高度重合的。
除此之外,如果你想把一个开源我的项目做大,我是十分举荐大家去看一下 A16Z 的 Go-to-Market Model 的,这里有两个不同的模式,一种叫 Top down,一种叫 Bottom up,其实是通过不同形式去关上方向,这里就不再多做介绍了。
开源一个我的项目其实只是开始,对于经营的负责人来说,不可能靠一个人就做到所有工作,必须通过相应形式去组队。最近,我也看到越来越多中国的开源我的项目在这方面上进行了微小投入,确实也带来了微小的影响和播种,也心愿这张图给大家带来更多对于开源我的项目及产品的思考。
最近和很多做开源的敌人聊天,其实在经营开源我的项目中,咱们很容易陷入一个点,例如很多人做了某个开源我的项目,播种了十分多的用户,然而如果想把它变成一个更大的幻想,往往会发现存在不少挑战。
这幅图能够帮咱们去设置产品能力,匹配行业需要,解决客户真正的痛点,能力播种更多用户。以 Apache Kylin 为例,过后在 Hadoop 上做大规模的数据分析其实是十分难,而且是效率很低的。通过 Apache Kylin 的 OLAP Server,能让用户在最短时间内取得剖析报告,无需花大量工夫去跑各种脚本等,当用户有一个痛点,我也有一个十分好的解决方案,同时这个解决方案还有微小的普适性,客户就会越来越多地应用起来。当咱们设计本人的开源我的项目或者技术的时候,肯定要答复产品价值、定位等问题,如果答复不出这些业务角度的问题,可能就会把产品带往谬误的方向。
最初给大家分享一下死亡之谷。尽管这个经常用于评估守业公司,但对于开源我的项目来说,其实实质是一样的。任何一个开源我的项目都要本人的生命周期,当然,很多开源我的项目往往也躲不过死亡之谷。
最近,其实大家也看到很多 Apache 我的项目曾经被淘汰了,其实是因为它在某种程度上可能失去了一些价值等。在经营开源我的项目的时候,心愿大家肯定要有这样的意识,不是说咱们把它开源进去,就肯定有人应用,或者是说它会长存,它一样会经验死亡之谷的过程,咱们都能做的就是让开源我的项目去一直演进和迭代,给用户带来更大的价值。
举一个例子,在 Apache Kylin 开源的五年多来,如果咱们还只是提供基于 Hadoop 的解决方案,可能再过几年就会缓缓隐没了。在社区倒退过程中,咱们也是一直地探讨,心愿抗过一个又一个的死亡之谷。从去年开始咱们逐渐拥抱云原生,这幅图心愿大家给大家带来更多思考,尤其是每个开源我的项目的负责人,对本人和社区都负责任。
非常感谢各位,也心愿有机会能够和大家聚一下,一起聊聊如何把开源做得更好,不仅在中国做大社区和影响力,甚至可能影响到寰球。