10 月,开发者不可错过的开源大数据大会-2021 WeDataSphere 社区大会深圳站 了解详情
写点什么

阿里搜索离线技术团队负责人谈 Hadoop:阿里离线平台、YARN 和 iStream

2014 年 9 月 18 日

Hadoop 从互联网诞生,但近些年在整个大数据领域呈现爆发式发展和进化,尤其是在 2013 年 Hadoop 2.0 正式 Release 后,Hadoop 有了正式的 Operation System—YARN,从此 Hadoop 不再只是 MapReduce 的代名词,Storm、Spark、Graph,MPI 等越来越多的计算模型可以运行在 YARN 上,批处理计算、实时流式计算、迭代交互计算等都可以同时运行在 Hadoop 集群上,Hadoop 已经成为大数据计算的全能平台。HBase 随着近几年的高速发展和应用,已经成为大数据技术领域最主流的 NoSQL 数据库;Tez 和 Spark 的出现让 Hive 拥有了更高效的计算引擎可以选择;Impala 和 Stringer 更是将大数据 SQL 带入到了 Realtime 时代;Ambari 的诞生和快速发展也大幅降低了 Hadoop 集群的运维门槛。随着 Hadoop 开源社区不断涌现出各种令人兴奋的新技术,逐步完善的 Hadoop 生态系统已经成为大数据行业发展的核心动力。

本次 QCon 上海的 Hadoop 专题出品人王峰(莫问)接受了InfoQ 邮件采访,谈到自己在阿里的工作,YARN 的优势以及Stream 和Spark 等平台的比较。

InfoQ:为什么会做这次 QCon 上海“Hadoop,超越 MapReduce”的出品人?

王峰:我在阿里的 8 年中一直从事搜索和分布式技术研发,自 2010 年开始基于 Hadoop 生态技术构建阿里的搜索离线技术平台,统一支持淘宝、天猫、1688、一淘和云搜索等多条搜索业务线的后台数据处理,亲自带领团队经历了 Hadoop 从 1.0 到 2.0 的平台演化之路,本次受我们阿里的朱鸿老师邀请,有幸成为“Hadoop,超越 MapReduce”的出品人。

InfoQ:您一直负责为阿里集团服务业务提供平台数据支持,请给大家简要介绍一下整体情况?

王峰:我负责的阿里搜索离线技术团队,为阿里集团的搜索业务提供统一的离线基础数据平台支持,目前我们基于 YARN 构建了统一的计算平台,支持批处理、实时流式等多种计算模型支持;基于 HBase 构建了统一存储平台,支持 KV,SQL,Queue 等多种存储模型,计算 + 存储共享集群资源,同一套基础架构同时支持淘宝、天猫、1688、一淘和云搜索等多条搜索业务线,为阿里的搜索引擎提供实时、增量、全量的全数据支持。

InfoQ:2013 年阿里搜索全面升级 YARN,比起之前来讲有什么优势呢?

王峰:第一次接触 YARN 是在 2011 年低在美国参加 Hadoop World,随即造访了 Hortonworks,更加详细深入的理解了 YARN 的设计思路,感觉这个东西如果成熟了,就是 Hadoop OS,Hadoop 的计算能力将产生飞越。但如果只在 YARN 上单纯运行 MapReduce,其价值将不会有质的变化,最大的好处也就是把集群规模可以做的更大了,这个意义就大打折扣了。升级到 YARN 的最终目标应该是让计算模型更加丰富,并产出统一的计算平台,降低维护成本,更大程度的扩大集群资源利用率,发挥云计算的效果。我们阿里搜索的 Hadoop 升级到 YARN 以后,不仅运行了传统的 MapReduce、Hive,还自主研发了 iStream(流式计算引擎)、iCall(基于 Thrift 的分布式 RPC 服务),后续还计划尝试 Tez,Spark 等新式计算模型,统一的计算平台相比之前的 MapReduce Job,无论是效率,成本还是对业务支持的灵活性都实现了质的飞跃。

InfoQ:我们还看到淘宝自主研发了 iStream 流式计算引擎,这方面的工作也想请您简要介绍一下。

王峰:其实我们当初最早是尝试 storm,但 storm 最大的问题是无法和 hadoop 集群复用,单独存在的 storm 集群让我们运维成本增加,同时资源利用率也上不去,出现各种问题也无法根本解决,YARN 的出现让我们有了新的思路。iStream 天然是基于 YARN 来设计的,因此其在设计理念上最大的亮点就是考虑了如何和其他计算模型共存,达到实时计算效果的同时,还可以实现计算平台的全局最优化,例如:iStream 可以自动感知流处理的进度快慢,智能调整计算节点的数量,即高峰期可以自动扩容节点保证处理速度,低峰期也可以在保证进度的条件下合理释放节点,让资源在多计算模型场景下真正按需分配。现在阿里搜索的 hadoop 集群上,iStream 承担了流式数据处理的角色,为搜索引擎提供实时增量数据,MapReduce 承担了全量或者批量数据处理的角色,为搜索引擎提供全量数据,两种计算模型可以自动合理的配合,无需人工运维干预。

InfoQ:Spark 平台目前挺火的,您在这方面是否有所涉及?

王峰:Spark 目前可以算是最火的计算模型,不过我们还没有将 Spark 投入生产,原因不是我们不认可 Spark,而是 Spark 强在迭代计算和实时 SQL,这块在搜索主流程中的场景不是特别明显。简单来说,Spark Streaming 在我们这里有了 iStream,实时性和资源管理更加专业;Spark SQL 在我们这里有了 Phoenix(SQL On HBase),因为我们的数据基本都在 HBase,基础的 SQL 场景,我们用 Phoenix 可以轻量级的解决了;迭代运算都是算法训练的纯离线过程,都在阿里的云梯和 ODPS 上运行了。

InfoQ:作为行业翘楚,您对 Hadoop 的认识非常深刻,不知您有没有比较好的图书、社区推荐给广大读者?

王峰:其实我个人阅读的 Hadoop 相关的图书并不多,除了几本英文经典之外,大部分信息都是通过社区文档、hortonworks/cloudera 的 blog、slideshare 上的各种会议 slides 以及微博 /twitter 获取的,当然经常去 hadoop 社区的 jira 上看看 issue,阅读一些源码也是必不可少的。

InfoQ:最后一个比较八卦的小问题,请您谈谈花名“莫问”的由来?

王峰:虽然我在阿里已经超过 8 年了,但我前几年在雅虎中国和阿里云,2010 年转到淘宝的时候,好的花名已经都没有了,“莫问”这个名字是“七剑”中傅青主拿的那把剑的名字,是“七剑”智慧的象征,同时也挺喜欢七剑中“莫问前程有愧,但求今生无悔“这句话,所以就起名“莫问”了。

采访者简介:张天雷(@小猴机器人),清华大学计算机系博士,熟悉知识挖掘,机器学习, 社交网络舆情监控,时间序列预测等应用。目前主要从事国产无人车相关的研发工作。

2014 年 9 月 18 日 19:276364
用户头像

发布了 268 篇内容, 共 104.9 次阅读, 收获喜欢 20 次。

关注

评论

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

单片机如何从上电复位执行到main函数?

不脱发的程序猿

嵌入式软件 单片机 28天挑战 3月日更 上电复位执行到main函数

nginx做代理访问慢,优化方案

Ng

智慧社区服务平台的搭建,助力老旧小区改造

13828808769

智慧终端

可视化开发:前端按时下班不再是问题

华为云开发者社区

前端 框架 交互 渲染引擎

世界首台人工智能地震监测系统问世;AAAI 2021 | 利用深度元学习对城市销量进行预测

京东科技开发者

大数据 红帽

EGG Network公链生态应用EFTalk阿凡提

币圈那点事

程序开发必备的六个信条

这就是编程

程序开发

通过序列号Sequence零代码实现订单流水号

crudapi

低代码 流水号 crud crudapi 序列号

作业8

瑾瑾呀

产品经理训练营作业 06

KingSwim

nginx配置日志为json格式,nginx按照天实现日志分割,nginx配置负载均衡

Ng

第九章学习总结

Kasn

产品经理 产品经理训练营

音频互动连麦使用手册

anyRTC开发者

ios android 音视频 WebRTC RTC

第 9 周作业 _ 数据分析

园子

中国云基础设施支出创新高,增速全球第一;国内首个区块链特色司法鉴定机构在京成立

京东科技开发者

区块链 人工智能 开发者

力扣(LeetCode)刷题,简单题(第12期)

不脱发的程序猿

面试 LeetCode 28天写作 算法面经 3月日更

企业迁移到云服务时要考虑的六大问题

浪潮云

云计算

从优秀到卓越:成为DevOps专家的7项软技能

禅道项目管理

DevOps 趋势 软技能

大侠请留步!欢迎有极客精神的你

Lily

从相识到相惜:Redis与计算存储分离四部曲

华为云开发者社区

数据库 redis 华为云 存算分离 GaussDB ( for Redis )

AI量化智能交易软件,量化策略系统搭建

13823153121

Kubernetes弃用Docker运行时,小甜甜变牛夫人影响了谁?

会飞的鱼

Docker 云计算 架构 容器 #Kubernetes#

五年磨一剑,海外运营商数字化转型与新一代OSS

鲸品堂

方法论 数字化转型 运营商

第九章作业

Kasn

产品经理 产品经理训练营

聊聊Java的异常机制问题

华为云开发者社区

Java 对象 异常机制 Throwable Error

封装变化的内容

这就是编程

程序开发

区块链农产品溯源系统开发,区块链农产品溯源平台的搭建

13828808769

区块链 区块链+ #区块链#

区块链在医疗领域的应用场景,区块链+医疗的解决方案

13828808769

区块链 区块链+ #区块链#

颠覆认知——Redis会遇到的15个「坑」,你踩过几个?

Kaito

redis 踩坑 后端

如何避免水肥一体化过量灌溉?开启智慧管理,一个屏幕轻松搞定

一只数据鲸鱼

物联网 数据可视化 智慧城市 智慧农业

layui使用templet格式化表格数据

阿里搜索离线技术团队负责人谈Hadoop:阿里离线平台、YARN和iStream-InfoQ