FinOps有望降低企业50%+的云成本! 了解详情
写点什么

集群过千的趣头条为何选择“回归”自研 Hadoop 管理平台?

  • 2019-11-06
  • 本文字数:3154 字

    阅读完需:约 10 分钟

集群过千的趣头条为何选择“回归”自研Hadoop管理平台?

2006 年 Hadoop 的诞生标志着大数据技术时代的开始,而 AWS 商用则表明云计算正式开始了改变信息时代的步伐。自此之后,大数据和云计算成为最近十几年最为火热的技术,学术界和工业界都大量投入到相关技术的研发,极大的加速了大数据技术的商业化落地。大数据和云计算技术的融合,更是加速了数据业务模式的创新,也催生了对大数据技术的底层架构的优化和升级。


趣头条在 2018-2019 年经历了业务的高速发展,主 App 和其他创新 App 的日活增加了 10 倍以上。相应的,大数据系统和平台也从最初的 100 台机器,增加到 2000 台以上,技术栈从单一的离线数据报表,发展到离线 + 实时 + 机器学习的完整系统。


趣头条的大数据治理,有个特殊之处,就是从完全依赖阿里云 EMR,到使用自研 Hadoop 集群管理平台+EMR 混合部署模式。趣头条大数据技术总监虞沐也说道:“上云还是占大多数,从云上下来的还是少数。“ 趣头条为了满足高速发展的要求,为什么选择自建 Hadoop?考虑了哪些因素?QCon上海2019我们采访了虞沐,了解了相关背景。

趣头条的技术选型

2018 年 9 月 14 日,成立仅仅两年零三个月的趣头条于美国纳斯达克上市。去年底用户数破亿。


随着用户的增长,大数据集群从最初的 100 台增加到 2000 台。大数据技术团队从最初 8 个人的规模,一年之后就发展到 30 人左右。


大数据技术的选型有三个指标:成本、稳定性、性能。在企业发展的不同阶段,侧重点会不一样。


18 年的时候,稳定性是第一位。因为业务快速发展,用户数量每季度翻 50%,整个系统非常不稳定。稳定性的问题解决以后,需进一步的考虑速度和性能的提升。今年发展到一个相对比较平滑的时期后,重点开始转移到成本上了,比如说,原来三个小时完成的任务,现在就希望缩减到一到两个小时完成。同时也能更快的将一些数据和指标反馈给业务,业务能更快的做决策。虞沐补充说道:“因为公司从财务角度要考虑它整个的投资的回报比例。如果业务这个季度只增长了 30%,但是我们系统开销增长了百分之百,那显然是不合理的。那么就需要帮业务梳理过去在成本上欠下的历史债务。”


今年 3 月,趣头条发布公告称,获阿里巴巴 1.71 亿美元投资。


跟阿里之间的投资关系,也决定了两者之间会有很多技术合作,这时候的架构选型就不仅仅考虑纯技术因素了。


虞沐曾在硅谷工作十二年,18 年底回国入职趣头条,他表示:”这种需要考虑商务合作的方式也是跟我过去经历的纯技术、成本选型不一样,需要考虑‘BAT 生态’的问题。“


趣头条大概两年前从自建 IDC 环境搬到阿里云。搬到阿里云以后,趣头条的增速比阿里云提供的 EMR 产品的增长要快很多,甚至很多时候是跑在阿里云前边。


最开始发现 EMR 不满足需求的时候,趣头条选择跟阿里云的团队一起去做一些定制的开发,这个阶段大部分工作也是由阿里完成。


趣头条曾经有很长一段时间都是阿里云上 Hadoop 最大的一个用户。因为大多数企业的集群规模在 50-100 台之间,阿里云产品能满足这些 95%的需求。而趣头条作为头部用户集群数量达到上千台,有很多历史遗留问题,例如用户和权限管理的缺失,缺少 Federation 对于各部门的隔离、不能很好的支持海量小文件存储、低价值数据的归档和删除、计算队列的利用率低等等。阿里云 EMR 还无法完全满足定制化的需求,导致客户机管理混乱。


发展过程中还得考虑成本。公司体量发展到一个量级,达到一个零界点之后,自己做机房能很大程度削减成本,能达到 10%。投资越大,节省的就越多,比如上千万、上亿投资的 10%。而且自建机房相对来说也能提升自己整个的技术团队的能力。不仅是大数据,还包括 IT 团队、运维团队、技术架构团队,能力都有很大的提升。


但是当有机器发生故障时,就需要有内核级别的专家坐镇,去定位问题。同时 IDC 属于一个长期的投资。机器一次性购买之后,能够长久使用才能逐步体现出整个成本上的效益。


“经过和阿里云沟通,以及做过’下云‘的调研后,我们决定不完全‘下云’,而是减少阿里云的使用。”


趣头条整体还是部署在阿里云上,但有很大一部分核心的集群会迁移到自建的集群上。主要使用的阿里云资源是 IAAS 层。在机器的层面、网络的层面和软件层面,会扩大自研的比例,这个比例会超过 2/3。


趣头条选择以自研+开源的方式,选择合适的供应商版本,自己做定制开发,自己去控制成本和系统的稳定性。也在系统的外围建立一个护城河,实现拦截异常的功能。同时将复杂的大数据底层做了封装,用 API、平台的方式实现了一个简单的入口。使用开源之外,自研达到 30%的程度。

不要 All in Cloud!

在大数据争夺架构霸权之战中,云计算显然是赢家,Hadoop 背后的势力在慢慢减弱。


虞沐认为 Hadoop 面临的最大问题是不同体量的公司需要解决的问题不一样,甚至企业在不同的阶段对 Hadoop 的诉求也不一样。云计算厂商提供的托管服务在部署和运维上给予了用户很多便利,很多体量小的企业选择上云,因为自建数据中心不划算。而大企业选择混合部署的方案的比较多,比如拼多多、今日头条。


包括硅谷很多大企业也会选择上云或混部,比如说 Groupon、Netflix。


很多小公司和 Groupon 一样,从云中起家,因为云允许公司快速部署和进入市场。Groupon 一直寻求财力自建数据中心,但是云服务可按月、天支付费用,对财务压力更小,最后他们关闭了硅谷机场旁的小型自建数据中心,全部上云。


Netflix 在 08 年的时候遭遇数据库损坏导致三天无法给用户提供服务,因此他们决定全部迁移上云。耗时七年,在 2016 年 1 月,Netflix 宣布完成了云端的迁移,并关闭了所有的流媒体服务数据中心。但是 Netflix 有自己的 CDN 服务,“成本原因,它总要有些自己的东西。但主要的业务以及系统都在云上。这是个比较典型的例子“。


另外一个例子是 Twitter,最开始是完全自建的数据中心。但现在 Twitter 大概 1/2~1/3 的规模是在 AWS 公有云上。


“的确,上云还是占大多数,从云上下来的还是少数。”


云上不仅是大数据,还包括其他的一些比如技术架构、数据库、微服务相关的东西,一旦上云,需要在两者之间达到一个平衡点。


“公司发展到一定体量,就不要 All in Cloud“,虞沐表示,“如果说都用云提供的服务的话,可能自己团队的技术能力就会减弱。如果有一天,万一有些原因需要搬离的话,可能就没有这个技术能力去支持迁移的动作了,就和云绑定了。”

未来的关注点

虞沐表示未来还有三个方向值得关注:


第一,离线转实时。目前实时计算成本还比较高,当技术越来越成熟了以后,可以用类似或者相差不太多的成本,将业务从离线转成实时化。过去一天才能看一次的报表,现在仅需要 5 分钟顶多一个小时,这对业务的冲击是非常明显的。


第二,容器化。容器化这波浪潮比以前的 VMware、Openstack 要大很多,必然会冲击到大数据领域。趣头条现在准备将一些计算引擎迁移到容器上。一方面是出于成本的考虑,另一方面是提高整体性能,因为容器有弹性伸缩的功能。如果有一天需要“下云”,实现起来就很容易。在容器里面,可以像搬运一个货柜搬走就行了。


第三,机器学习。机器学习这块的门槛也越来越低了,很多公司如果想实现人脸识别、语音识别、NLP 相关功能,可以选择一些开源的框架,这些东西不再像以前一样只存在象牙塔里。包括硬件环境的门槛也越来越低,就可以进一步的释放大数据的能力,不仅仅是传统上的 BI、报表了。


采访嘉宾:


虞沐,James。2001 年安徽大学本科毕业后,先后在上海 HP 和 SAP 工作。2007 年赴美国硅谷工作,先后在 eBay,赛门铁克,三星从事分布式系统开发。2013 年开始从事大数据和公有云相关开发,先后在百度美国,xAd,和 Facebook,从事技术管理和架构师工作。2018 年底回到上海工作,在趣头条担任大数据技术总监,经历公司快速发展,带领团队自研开发多个大数据和机器学习平台。


更多国内外一线技术大咖分享请持续关注 QCon 全球软件开发大会,访问官网与技术大咖面对面交流实践心得。


2019-11-06 17:362713

评论

发布
暂无评论
发现更多内容

Abp太重了?轻量化Abp框架

Patronum

学习 程序员 架构 框架 Abp

终于有人把大数据架构讲明白了

百度开发者中心

大数据 最佳实践 方法论 其他

Spring Boot指标监控与健康检查

偏执

面试 spring Boot Starter

Lazada首届技术开放日开麦在即 共享技术创新最佳实践

Qunar容器平台网络之道:Calico

Qunar技术沙龙

容器 TCP/IP calico BGP #Kubernetes#

iOS底层面试题(中篇)

程序员 面试 iOS底层

Qunar SwiftUI 的实践、评测与思考

Qunar技术沙龙

objective-c swift UI SwiftUI UIKit

spring-boot-starter自动配置的理解

偏执

面试 spring Boot Starter

保洁阿姨分享:腾讯架构师JDK源码笔记,13万字,带你飙向实战

保安小王分享:四面字节跳动,终拿Offer,只有努力,方能成功

Redis 关键点思维导图

康斯坦丁

Java虚拟机之CMS垃圾收集器

淘宝商城的系统架构,是如何一步步突破“亿”级并发的?

Java架构师迁哥

不收藏你就后悔吧!费了三天才从GitHub上扒下的阿里Java优化笔记

聊一聊在阿里做了 8 年研发后,我对打造大型工程研发团队的再思考

尔达Erda

开源 云原生 研发管理 PaaS 研发

【云洲智造】直播间下午4:30准时开播!

浪潮云

工业互联网

东京奥运会与网络安全背后的速度博弈!

郑州埃文科技

Linux-通过 liveCD 进入救模式-重装 grub 修复损坏的系统

学神来啦

Linux 运维 linux运维 linux学习

智能获客黑科技系统开发搭建

springboot自动装配源码解析

偏执

面试 后端 spring Boot Starter

模块三作业

Geek_35a345

EMQ X Cloud 正式支持 Microsoft Azure 平台,助力企业出海业务

EMQ映云科技

azure 云端 云上数据 emq

文档内容结构化在百度文库的技术探索

百度Geek说

百度 大前端

基于 Golang 构建高可扩展的云原生 PaaS(附 PPT 下载)

尔达Erda

开源 云原生 数字化转型 PaaS 数字化

银行4.0的AI世界——开启算法力的时代

索信达控股

一夜爆火!完美贴合开发实际!阿里SpringBoot宝典助你面试超神

Java 编程 程序员 架构师 计算机

2021秋招我这样准备,提前批就已经拿到了9个大厂offer

北游学Java

Java 面试 秋招

2021,你还在写“赤裸裸”的API吗?

客户端版本热更新

admin

Electron 热替换 客户端 小版本升级 热更新

底层即真理!Netty+Redis+ZooKeeper解读高并发系统架构!

Java架构追梦

Java redis zookeeper 架构 架构编程

架构训练营模块三作业

晨晨

架构训练营

  • 需要帮助,请添加网站小助手,进入 InfoQ 技术交流群
集群过千的趣头条为何选择“回归”自研Hadoop管理平台?_架构_Tina_InfoQ精选文章