大数据说起来容易做起来特别难,体验过的朋友都知道,从数据发现、数据集成、数据开发到数据分析的整个过程,都非常复杂。
因为,整个过程的主要工作都集中在数据采集、组件安装、数据仓建设等方面,想要高效地使用数据,需要的是一整套管理体系。然而,在传统上大数据平台构建这样一套管理体系,很难!
在日前的一次媒体沟通会上,智领云LinkTime Cloud公司CEO 彭锋介绍了国内第⼀个纯K8s在线⼤数据平台BODS Online,它的出现,意味着大数据平台的构建难题,大数据开发的低效率,这两大行业性问题找到了行之有效的应对之道。
盼望着,让大数据平台借力K8s
个性化推荐是最典型的大数据应用。在新闻网站、电商网站、短视频平台上应用的非常普遍,每个用户看到的推荐内容都各不相同,基本都做到了千人千面,能上网的朋友都有体会。
智领云LinkTime Cloud公司CEO 彭锋表示,这样一个推荐应用其实涉及多个大数据组件和流程,对应就需要安装Hadoop、Kafka、Hive、Redis、Spark、Flume等组件,上图显示需要8条数据线,而真正的部署场景,比上图描述的更复杂。
基于传统大数据开发平台做开发时,经常需要分散管理各种组件。由于每个组件的安装流程不同,系统版本要求不同,依赖的第三方库不同,高可用容错设计,授权、建权机制都各不相同,管理流程不同,把这些组件拼接到一起就非常有挑战性。
就好比管理具备各种超能力英雄一样困难,每个都很重要,每个英雄的性格都不一样,让这些人齐心协力的朝着一个目标前进,对能力的要求也非常高,而这种要求无疑阻碍着大数据的进一步发展。
随着以K8s技术为代表的云原生技术浪潮的袭来,为大数据开发平台的问题提供了解决之道。
原本,K8s作为新的技术生态,它缺少对于大数据组件的支持,虽然有人尝试让各种组件运行在K8s之上,但都并不成熟,所以,业内也基本没有基于K8s的云原生大数据平台。
彭锋介绍称,去年云原生大数据领域出现了两大标志性事件,一个2021年3月份,Apache的Spark支持了Kubernetes,另外一个,2021年5月份,Kafka也公开支持Kubernetes。
在彭锋看来,大数据平台的云原生化已是大势所趋。
从技术的角度看,Hadoop会逐渐迁移到K8s上。常说的Hadoop三架马车中,计算框架MapReduce会被更高效的Spark所取代,资源调度组件YARN正在被K8s取代,最坚挺的HDFS也有了云原生的对标方案,这意味着可以直接在K8s上运行所有现在的大数据工作负载。
从大数据开发者的角度看,当所有组件能运行在K8s之上以后,集成的开发管理系统成为可能,打破分散管理各个组件的局面。从使用者的角度看,这意味着数据能力可以以一种集成的方式来使用,可以轻松集成到各种应用中,而不是一些散乱无章的代码。
总之,随着K8s对大数据组件的更多支持,基于K8s的云原生大数据平台便成为可能。那么,当大数据平台遇上K8s会发生什么呢?
走近基于K8s的云原生大数据平台——BDOS Online
智领云官网上有一则博文叫《如何在 4 天时间内开发一款薅羊毛神器,并完成交付?》,说的是,五位开发人员用四天时间就开发了一套智能商品推荐系统,而且,全过程完全没有加班。对于熟悉大数据开发流程的开发者来说,这非常不可思议。
其实,这套智能商品推荐系统就是在智领云的BDOS Online平台上开发的。
BDOS Online是一款DPaaS(Data Platform as a Service)服务,底层使用的是阿里云的K8s托管平台ACK,在此之上,部署了智领云的大数据开发平台,这一套平台可以引导开发者一步步完成从数据导入到最后应用部署的全流程。
如图所示,这款叫“薅羊毛神器”的应用就是智能商品推荐系统,上图左侧清晰展示了整个应用程序的构建流程,同时也是这套系统的工作流程,从发布一款Docker部署的MySQL数据开始,随后导入数据、创建Hive表、进行ETL、数据清洗、创建API,最后发布在线应用。
而在用户端,我可以看到系统为我推荐的优惠商品,这就是一个完整的智能商品推荐系统。
上图是一个空白项目的初始化界面,我也可以从数据采集导入开始创建一个项目,如图所示,这里提过了多种导入方式,同样的,数据转换和数据分析也有多种实现方式,这两部分也是开发者花时间最多的部分,也是大数据开发的精髓所在。
有了BDOS Online,开发者就可以将绝大部分时间花在数据转换和数据分析的业务逻辑实现上面,而不用花时间设置服务器硬件,花大量时间安装、配置和管理各种插件,BDOS Online初始化时已经将这些都配置好了,这就是能节省开发时间的根本原因。
为什么是智领云?
体验过公有云用户的朋友会觉得,这样一套用户体验极佳的开发流程似乎是理所当然的。然而,受限于技术原因,这样的云原生大数据平台在市场上并不多,而智领云之所以能推出国内第⼀个纯K8s在线⼤数据平台,还要从十多年前说起。
智领云CEO彭锋是非常资深的数据分析从业者,他从2008年就开始做基于Hadoop的大数据平台建设工作,2011年成了Twitter大数据平台系统架构师。在Twitter期间,他就见识到云原生数据开发能力的威力。
当各部门在同一平台上进行开发时,开发效率呈指数级增长。当集群规模从80台扩展到8000台时,也全是在云原生架构上扩展而来的。或是有感云原生数据平台的种种优势,彭锋坚定了要做云原生大数据平台的信念。
2016年,智领云成立,2017年,智领云开始做大数据平台的云原生改造,当时是基于Mesos(对标K8s的方案)平台来做的,一方面是因为在Twitter就在用Mesos,另一方面,Mesos对于大数据组件的支持度比较高,于是,智领云很快就完成了大数据平台的云原生化。
随后几年里,技术风向发生了大的变化。K8s凭借谷歌在开源社区的影响力,在几年里超越Mesos成为容器编排领域事实上的标准,彭锋一直期待着云原生的大数据平台发挥真正威力,等待基于K8s构建云原生的大数据平台的那一天。
随着K8s支持Spark和Kafka,智领云开始做基于K8s的大数据平台,2022年就在业内率先推出了在线的数据开发平台。这是一个完全运行在K8s之上的大数据平台,用户可以选择部署在本地,也可以部署在公有云上,在公有云上部署的就是我们刚才看到的BDOS Online。
BDOS Online平台提供了各种插件,所以,用户可以把BDOS Online作为开发平台使用。除此之外,用户也可以用它来构建K8s上的DataOps体系。
因为,BDOS Online的底层其实是智领云的DataOps管理体系,这是智领云的核心能力所在,该体系主要包括数据门户,数据质量管理,应用调度、资源计费等功能。
基于在底层技术的积累,智领云可以在公有云和私有云上改造和部署各种组件,可以进行容器的编排与调度以及发布管理。
也正是因为有这些积累,才使得智领云快速完成了从Mesos到K8s的技术路线转移,推出了国内第一个纯K8s的在线大数据平台。