您的位置:  首页 > 技术杂谈 > 正文

中年 Hadoop

2022-02-28 19:00 https://my.oschina.net/u/4489239/blog/5465718 一君_ 次阅读 条评论

2 月初,Apache Hadoop 管理工具 Apache Ambari 也正式宣告退休,一年内,Apache 软件基金会已经有 11 个 Hadoop 生态内的项目不再是顶级项目。 

“Hadoop 是为了大数据而诞生的,其本身就象征着本世纪工业革命的焦点:业务的数字化转型。”2016 年,Hadoop 诞生十周年之际,其创造者 Doug Cutting 这样形容 Hadoop。

21 世纪初,正值数据大爆发时刻,Hadoop 的出现为企业解决了不少难题,成为推动企业数字化转型的重要因素。但随着云时代的到来,Hadoop 似乎也开始步入中年:有了自己生态积淀,但也面临着后来者强劲的冲击。

或许多年后回头看,现在正是 Hadoop 生命周期中决定兴亡的重要时刻。

黄色小象 Hadoop

1985 年,斯坦福大学生 Doug Cutting 为了偿还助学贷款,并为毕业后的生活做准备,意识到自己必须学一些更加实用的技能。在学校所在地硅谷,Doug Cutting 为自己找到的第一份工作是在 Xerox 做实习生,为激光扫描仪上的其中一个系统开发屏幕保护程序。

Xerox 的这份工作不仅解决了 Cutting 生活上的“近忧”,更是为将来 Cutting 研究搜索技术起到决定性作用。

毕业之后,Cutting 继续留在 Xerox 工作,主要研究搜索技术,他花了大量时间搞研发,读论文,同时自己也发表了些论文,对于这段经历,他形容:“我的研究生是在 Xerox 读的。”搞了几年“学术研究”之后,Cutting 想要让自己的研究成果为更多人所用。

1997 年年底,Cutting 每周花两天时间尝试用 Java 落地研究成果。1999 年,第一个提供全文文本搜索的开源函数库——Lucene 诞生。这是 Cutting 的第一个代表作。

沿着 Lucene 的研发方向,Cutting 之后曾在搜索引擎公司 Architext 呆过一段时间,Architext 因互联网经济泡沫冲击破产后,Cutting 希望自己的项目能通过一种低开销的方式来构建网页中的大量算法。

2002 年,Cutting 决定和 Mike Cafarella 共同开发一款开源网页爬虫项目 Nutch,但他们也遇到了难题——如何储存大量网站数据。

而那一时间,IT 界最受瞩目的事件便是谷歌接连发布的 3 篇论文,对外公开了内部搜索引擎的三大关键技术,分别是 Google 的 GFS 文件系统,大规模丛集上的运算技术 MapReduce,以及分布式文件系统 Bigtable。同时,3 篇论文论述了怎么借助普通机器有效存储海量大数据;怎么样快速计算海量数据;怎样实现海量数据的快速查询。这为 Cutting 解决所遇到的问题提供了新的思路。

Doug Cutting 参考了 Google 的技术和理论,利用 Java 语言,发展出自家的 DFS 文件系统和 MapReduce 程序,解决 Nutch 搜索引擎的大量数据扩充需求。

借助 GFS 和 MapReduce,2006 年 1 月 28 日,Hadoop 诞生了。这时候,Cutting 已经成为一名父亲,他看着牙牙学语的儿子抱着一头黄色小象叫“Hadoop”,便决定将新项目命名为“Hadoop”,并且用黄色小象作为项目 Logo。后来,这头黄色小象时常跟着 Cutting 出现在各种技术活动上……

而关于谷歌论文对 Hadoop 研发的帮助,Cutting 十分认可,“我们开始设想用 4~5 台电脑来实现这个项目,但在实际运行中牵涉了大量繁琐的步骤需要靠人工来完成。Google 的平台让这些步骤得以自动化,为我们实现整体框架打下了良好的基础。”

有了 Hadoop 之后,IT 生产所需的应用程序和产生的资料得以被存储在单一的系统里,并且在扩容、数据处理上也有了更加显著的进步。

Cutting 曾说,Hadoop 的意义不在技术,更大的意义在于“数字转型”(Digital Dransformation),而开源也非常重要,“因为它(Hadoop)并不是最好的技术,也不完美,但它因为是属于开放源代码,透过社群的力量,使它成为了最好的搜索技术。对使用者来说,现在更多想要的是开放源代码的软件。”

成为 Core Hadoop

Hadoop 诞生没多久,这头“黄色小象”就再不单单只是代表一个软件,而是一个庞大的大数据软件生态。

借用 Cloudera 资深工程师陈飚的话来形容就是:

2006 年项目成立的一开始,“Hadoop”这个单词只代表了两个组件——HDFS 和 MapReduce。到现在的 10 个年头,这个单词代表的是“核心”(即 Core Hadoop 项目)以及与之相关的一个不断成长的生态系统。这个和 Linux 非常类似,都是由一个核心和一个生态系统组成。

现在, Hadoop 核心模块有四个:通用库 Hadoop Common、分布式文件系统 HDFS、作业调度和集群资源管理框架 YARN、计算引擎 MapReduce,在其基础模块之上,需要借助 Hive、HBase、Pig、Spark、Kafka、Zookeeper 等软件真正应用在生产环境中。反之,这些软件也在帮助 Hadoop 构筑生态。在 Hadoop 生态体系之下至少有30个以上开源项目,为了完成一个生产项目需要对多个开源模块集成。也因此,Hadoop 在很大程度是代表着数据库。

Hadoop 早期生态的扩大有三方“主要势力”支持。

一是 Apache 软件基金会,为 Hadoop 社区发展做了很好的信任背书。2006 年 4 月,第一个 Apache Hadoop 发布。之后,围绕 Hadoop,Apache 软件基金会吸纳了众多相关项目,慢慢建成 Hadoop 生态系统。

二是 Cutting 当时的东家 Yahoo。起初,Yahoo 为了自己的搜索引擎,看上 Nutch 项目,便在 2006 年将 Cutting 招入麾下。同年 Cutting 的 Hadoop 项目面世之后,Yahoo 看到了 Hadoop 在大数据运算上的价值,便投入人力,支持 Hadoop 的研发,同时在内部开始应用 Hadoop。

2008 年,Yahoo 建了一个当时全球最大规模的 Hadoop 集群,使用 4 千多台服务器,超过 3 万个处理器核心,索引超过 16PB 的网页数据。Yahoo 实践的成功也是对当时 Hadoop 实力的最好证明。

三是 Hadoop 的灵感来源商——Google,当时,Google 也参与了 Hadoop 的开发,并将其作为云计算的教材,在全世界范围内推广。当然,Goggle 当年最重要的贡献还是在论文上,2006 年 11 月,Google 发表了 Bigtable 论文,这最终激发了 Hadoop 生态中的重要角色 HBase 的创建。

在上述“三驾马车”驱进的同时,Hadoop 正风靡全球。Facebook、Twitter 和 LinkedIn 等公司,在 Hadoop 之上也很快开发了相关开源项目——Apache Pig、Apache Hive、Apache HBase 等等,这些项目成为日后 Hadoop 生态中的重要一环。在中国,2007 年,百度开始使用 Hadoop 做离线处理,中国移动开始在“大云”研究中使用 Hadoop 技术。2008 年,淘宝开始投入研究基于 Hadoop 的系统“云梯”,并将其用于处理电子商务相关数据。

“Hadoop 彻底改变了整个行业的格局。开发人员可以更快、更轻松地构建更好的广告方式、拼写检查、页面布局等等。”Cutting 这样形容当时的变化。

除了 IT 厂商外,当时也有投资人、学术界认可 Hadoop。

2008 年,第一家围绕 Hadoop 而建的开源原生商业公司 Cloudera 成立,明确自身的使命是将 Hadoop 技术引入传统企业。

2009 年,Cutting 意识到这对 Hadoop 来说是一种巨大的可能,“如果可以让世界 500 强企业采用 Hadoop,那很与可能改变他们的业务模式,随着公司逐渐采用更多技术,从网站和呼叫中心、到现金出纳机和条码扫描器,他们的手指尖将会传递越来越多企业的数据。如果企业能够采集和使用更多数据,那么将可以更好地了解和改善他们的业务。传统的基于关系数据库管理系统(RDBMS)的技术存在以下弱点:在支持可变、混乱的数据和快速实验方面太过死板;无法轻易扩展到支撑 PB 级数据;并且成本非常昂贵。与此相比,即使是很小的 Hadoop 集群也可以允许公司提出和回答比以前更复杂的问题,并且可以不断地学习和提高。”看到 Hadoop 的前景之后,Cutting 本人也加入了 Cloudera 公司,成为首席架构师。

与此同时,2009 年 MapR 成立,2011 Hortonworks 成立,早期“Hadoop 三巨头”出现。2014 年,Hortonworks 成功上市;Cloudera Intel 7.5 亿美元的投资,总估值曾达到41亿美元,成为当时未上市的大数据公司里面最为闪耀的一个;MapR 也先后融资也近 3 亿美元。

这些围绕 Hadoop 而生的商业公司让人们更加看到 Hadoop 的前景,加之它们早期融资非常顺利,一时间 Hadoop 风光无二。

中年危机

投资人对 Hadoop 的押注是 Hadoop 繁荣的一大标志。然而,当市场趋于冷静后,随之而来的便是对 Hadoop 的唱衰。

历经 2014 年的高光时刻之后,Hadoop 相关公司在资本市场上表现走低,2019 年开始渡劫,三大发行商相继衰落。

2019 年 5 月,MapR 宣布,即将裁员上百人,并关闭公司硅谷总部,如果找不到买家或新的资金来源,将会永久彻底地关闭公司。两个多月后,MapR表示找到了买家——惠普企业HPE。2019 年 6 月 6 日,Cloudera 在下调收入预测并宣布其首席执行官将离开公司后,股价下跌 43%,这家在 2014 年的估值为 41 亿美元的公司,到了 2019 年,仅剩 14 亿美元。11 月,不堪重负的 Hortonworks 完成了与 Cloudera 的 52 亿美元全股票合并。

这三家公司成败皆是基于 Hadoop。MapR 在裁员之前,业务模式是做私有化产品的售卖,核心资产是其文件系统,相较 Hadoop 的开源版本 HDFS 性能要高,但同时也意味这成本,即销售困难。而 Hortonworks 和 Cloudera 两家公司在宣布合并之后,只要业务也从 Hadoop 相关产品转向“从边缘到 AI 的企业数据云”产品。由此可见,仅仅从市场来说,Hadoop 并非一个可以轻松为投资人带来收益的工具,也因此传来了唱衰的声音。

为什么 Hadoop 不能挣钱?大概是因为 Hadoop 生态刚成型没多久,就出现了一个更强的生态——以 Spark 为代表的云原生大数据项目。

早期,Spark 被认为是 Hadoop 的补充。一位雅虎投资 Hadoop 的早期倡导者在 2015 年有一个观点,认为 Spark 和 Hadoop 会和谐相处,Spark 可以作为 Hadoop 顶层的内存处理方案,eBay 和雅虎 —— 都在 Hadoop 集群中运行着 Spark,Spark 对于 Hadoop 来说不是挑战,也不是来取代 Hadoop 的。相反,Hadoop 是 Spark 成长发展的基础。

甚至是对于 2019 的情况,Alluxio 的创始人兼 CTO Haoyuan Li 认为,这最多证明 Hadoop 分布式文件系统(HDFS)形式的 Hadoop 存储已死,但 Spark 形式的 Hadoop 计算仍然强大。

但是,这种 Spark 可以让 Hadoop 变得更强的观点近两年已经慢慢消失,Spark 对于 Hadoop 来说已经不再是一个没有威胁的辅助角色。以“闪电般的运行速度”而闻名的 Spark 自称比 Hadoop 快一百倍,虽然实际倍数有待考量,但拼速度,Hadoop 显然已经不行了。

更进一步说,云的流程更是衬得 Hadoop 的优点不复。Hadoop 最初风靡的最大原因就是让数据的存储变得廉价,但是云计算可以提供更加优惠的存储。此外,云计算厂商也学会了打造自身的生态,在云上提供多个组件来取代原有的 Hadoop 生态组件,如 AWS 的 S3 替代了 HDFS,K8S 替代了 YARN 等等。

早在 2018 年,Twitter 宣布迁移到 Google Cloud,以提高生产力并满足其不断增长的需求。此外,他们还表示,他们的 Hadoop 文件系统存储了超过 300 PB 的数据,并且他们正在将 Hadoop 计算系统迁移到 Google Cloud。

面对云的冲击,Hadoop 生态圈也在尝试拥抱新变化。2018 年,Google 收购 Cask 以强化云端 Hadoop 的应用生态。Cask 的主要产品 CDAP 是一个开源的应用平台,它整合了 Hadoop 生态,提供数据以及应用的抽象层,使得开发者能以快速且简单的方式开发应用。而合作 Google Cloud,便是希望能够做更具规模和效率的服务。

但根据 The Next Platform 在 2021 年发布的最新报告,财富 500 强企业正在对 Hadoop 失去兴趣。主要原因有二:首先是性能,其次是成本。

Next Pathway 的战略负责人 Vinay Mathur 解释,性能方面,大公司发现,使用结构化和非结构化的数据分析需求越来越复杂,在基于 Hadoop 的 Hive 和 Impala 技术之上,大规模的查询、转换数据变得缓慢,使用 Snowflake 或 Google BigQuery 能大幅缩短时间,“随着数据量和分析需求复杂性增加,Hadoop 根本不再适用。

其次,维护在线的 Hadoop 处理环境,并且为计算和存储付费是一项持续的投入,继续使用 Hadoop 并不会节约成本,反而是从 Hadoop 转向更加混合的基础架构和分析模型,并不会造成所有数据丢失,因此,越来越多的公司在更换 Hadoop。

挑战与机会

当下,Hadoop 的处境可谓是冰火两重天。

2021 年 4 月起,Apache 软件基金会在几个月内宣布 13 个大数据相关的项目退役(Attic)了,其中 10 个属于 Hadoop 生态,包括 Apex、Chukwa、Crunch、Eagle、Falcon、Hama、Lens、Sentry、Tajo、Twill。

这一动作让“Hadoop 将被替代”的声音再次响起。

Apache 软件基金会官方对此的回应是属于常规的项目集中报废。Apache 软件基金会的营销和公关副总裁 Sally Khudairi 称:“Apache 项目的活动在其整个生命周期中有起有落,这取决于社区的参与情况。从项目管理委员会(PMC)到董事会,对于 Apache 的几个项目的审查和评估工作取得进展,我们投票决定,将这些项目束之高阁(Attic)。”

虽然 Apache 声称是常规的项目清理,但有观点认为:单看个别项目的退役可能微不足道,但作为一个整体事件,这已经形成了一个分水岭——帮助从业者和行业观察这了解大数据领域开源力量重组的影响,Hadoop 在开源分析技术的霸主地位已让给了 Spark。

另一方面,最新的联合市场研究报告显示,到 2027 年,全球 Hadoop 市场预计将达到 3403.5 亿美元,相较于 2019 年为 267.4 亿美元,2020-2027 年的复合年增长率为 37.5%。未来几年,企业可能会通过混合云方式进行数据存储和分析,那么,Hadoop 便还有机会在现有市场的基础上壮大。

最后,引用撰稿人 Andrew Brust 对技术圈的一句评价:几乎所有技术类别的炒作都得会得到周期性地教训:社区变得兴奋,开源技术激增,生态系统建立起来——但这些生态系统并非永垂不朽,几乎任何新平台都存在固有风险,无论是商业平台还是开源平台。

任何一个软件都有自己的生命周期,迈入“中年”的 Hadoop 是能顺势而变接住挑战,还是在新事物的冲击下慢慢走下舞台?现在,似乎还没有答案。

 

 

展开阅读全文
  • 0
    感动
  • 0
    路过
  • 0
    高兴
  • 0
    难过
  • 0
    搞笑
  • 0
    无聊
  • 0
    愤怒
  • 0
    同情
热度排行
友情链接