随着网易云音乐、新闻、考拉、严选等互联网业务的快速发展,网易开始加速大数据平台建设,以提高数据获取速度,提升数据分析效率,更快发挥数据价值。 本次演讲主要分享网易如何围绕和改造开源技术,以产品化思维打造网易自己的大数据平台, 也会分享一下网易在大数据平台构建和支撑互联网业务过程中面临的技术挑战,以及我们在调度、安全、元数据管理、spark多租户、SQL流计算、高性能查询引擎等关键技术环节的实践经验。 最后会介绍一下,网易大数据平台未来的技术路线规划。
分享大纲:
1、大数据平台概述
2、Kudu:实时更新存储
3、Sloth:实时计算
4、Kyuubi:Spark 多租户
5、未来规划
1、大数据平台概述
2008年之前,网易一直在使用传统数据库软件,随着数据量的增大逐渐过渡到Hadoop平台。2009年,网易发现单独的Hadoop平台不足以满足内部数据量的需求,便开始着手研发相关工具。2014年之后,随着网易云音乐和网易考拉等业务的发展,网易原有工具也无法支撑庞大的数据使用诉求,网易开始进入平台化阶段,推出网易猛犸和网易有数两款产品。
网易猛犸是面向网易集团内部的大数据平台软件,网易有数是企业级智能可视化分析平台。网易之所以推出这两款产品,是因为单纯维护Hadoop并不能满足数据使用诉求,我认为最核心的原因是大数据系统难以使用,以下是一个典型的数据处理流程:
数据从Kafka出发,通过Flink处理同时写入HDFS和HBase。HDFS的数据经过Spark进一步处理最终将汇总数据返回HDFS,传递给BI软件进行展示或者为线上数据提供支持。如果将大数据系统与数据库内核做对比,我们发现Kafka其实类似于数据库中的Redo log,Hbase/ES代表一个索引,经过进一步汇总最终形成物化视图HDFS Parquet。
表和索引通过Kafka日志保证一致,相当于将组件重新组成类数据库内核的样子让各组件配合工作,保证系统的稳定性和性能。整体来看,这件事情比较复杂,一番折腾下来,我们认为大数据系统还是比较难用的,需要花费大量精力组装搭配,虽然这也证明了大数据系统比较灵活,但确实进入门槛较高。
我们考虑要做一个大数据平台,就需要先搞清楚我们的需求是什么。我认为主要有以下四点:
一是可提供大数据的基础能力;
二是在基础之上提高使用效率,所谓的使用是指用户在我们的大数据平台上开发数据业务,包括数据仓库、数据可视化、推荐业务等的使用效率,这是大数据平台的核心价值;
三是提升管理效率,运营一个大数据平台会涉及到各方面的管理,比如升级、扩容、技术支持的代价等,我们需要提升管理效率进而降低成本。
四是多租户安全,大数据平台服务于整个公司,公司内部多条业务线都会使用,多租户安全是必备功能。
在这些需求之下,网易大数据最终的整体架构如下:
整个平台主要有四大特点:
一是统一元数据服务,Hive、Spark、Impala、HBase等元数据打通,也就是平台上任意一张表既可用Hive查询,也可用Spark、Impala来查,不需要在不同系统之间做元数据的同步。
二是流计算服务,我