The History of Big Data
数据洪流悄然重塑世界的进程中,大数据的历史是技术迭代与需求驱动的交响。从 2003 年分布式系统雏形初现,到 Hadoop 掀起开源浪潮,再到 Spark、容器化技术与深度学习的接力革新,以及 Hadoop 生态的兴衰起落,大数据发展史如同一部技术进化史诗。本文将循着 2003 至 2023 年的时间脉络,解码这场数据革命的前世今生,窥探技术浪潮下的未来图景。
主要参考,翻译整理自这篇文章:
https://towardsdatascience.com/2003-2023-a-brief-history-of-big-data-25712351a6bc
2003–2006: The Beginning

当时谷歌在爬取全世界网页时的两个主要问题:
How to store hundreds of terabytes of data, on thousands of disks, across more than a thousand machines, with no downtime, data loss, or even data unavailability ?
How to parallelize computation in an efficient and resilient way to handle all this data across all these machines ?
于是乎谷歌发表了改变 big data 的三篇论文
The Google File System
MapReduce: Simplified Data Processing on Large Clusters
Bigtable: A Distributed Storage System for Structured Data
这里还有一篇文章,The Friendship That Made Google Huge 介绍了 Jeff Dean and Sanjay Ghemawat 的故事
那会 Doug Cutting 正在做跟谷歌类似的事情,分布式爬虫,需要计算和存储
Apache Lucene
Apache Solr、 ElasticSearch 使用了前者
于是创建了 Apache Nutch,同时参考了谷歌的论文,创建了 Hadoop,包括
HDFS 文件系统
MapReduce
谷歌仍然是保持封闭,最初开源的贡献者是 Yahoo,随后很多公司都跟进了
2007–2008: Hadoop’s early adopters and contributors

MapReduce 很强大,但是写起来并不容易,于是 Yahoo 就推出了 Apache Pig 将高层语言解析为 map-reduce
这段时间还有几个重量级开源项目
facebook 推出了 Apache Hive
还是 facebook 的 Apache Cassandra
Powerset 推出了 Apache HBase,后被微软收购并开启了新项目 Bing
AWS 推出了 Elastic MapReduce,可以免运维的方式开发 MapReduce
2008–2012: Rise of the Hadoop vendors

Hadoop 集群大了之后就很难安装、维护,于是出现了很多供应商
Cloudera,以及他们的 CDH
Hortonworks
MapR
Cassandra 也找到了供应商 Datastax
在这段时间,人们发现 Hive 挺好用的,但是 Hive 太慢了而谷歌又发表了后三驾马车的论文
Dremel: Interactive Analysis of Web-Scale Datasets
Pregel,这个是图数据库
Caffeine,网络搜索引擎
Dremel 的两个创新
如何在海量数据中快速查询
新的存储格式
三大 Hadoop 供应商基于 Dremel 的启发,又发布了各自的产品
Cloudera 推出了 Apache Impala
MapR 推出了 Apache Drill
Hortonworks 推出了 Apache Tez
Tez 是对 MapReduce 的改良,上层的 Hive 还是不动这种方案的原因是 Hortonworks 本身人力不够,因为他们的客户都是基于 Hive 的,想提升 Hive 速度而不是迁移到另一个引擎
收到 Dremel 文件格式的启发
Cloudera and Twitter 联合推出了 Apache Parquet
Hortonworks and Facebook 联合推出了 Apache ORC
2010–2014 : Hadoop 2.0 and the Spark revolution

新的 Hadoop 调度框架 Yarn 出现之后就是 Spark 的崛起,对整个行业有巨大的推动基于 Sarpk 创建了 Databricks,他们是基于云的,而不是搞发型版本
之后也证明了 Databricks 的选择是正确的这段时间也出现了几个实时处理的项目
LinkedIn 推出的 Apache Kafka
Twitter 推出的 Apache Storm
而 Netflix 的成功也证明了云计算的强大之后 微软 Azue 在 2010 年入局,谷歌 在 2011 年入局
2014–2016 Reaching the Apex

出现了几个试图统一底层流批的框架目前还活跃的是 Apache Beam,谷歌搞的目前是将底层的 Apache Spark, Apache Flink or Google’s DataFlow 做统一
然后就是调度系统,这个其实也挺复杂的,几个开源产品
Yahoo!’s Apache Oozie
Linkedin’s Azkaban
Airbnb 的 Apache Airflow
Spotify 的 Luigi
Apache Airflow 还推出了 谷歌云、AWS 的产品
SQL 层面,还有 Presto
Amazon 的 Athena 基于它重塑了品牌
Presto 创始团队新搞的 Trino
还有几个基于 云的产品
Google 的 BigQuery 2011
Amazon’s Redshift 2012
Snowflake, founded in 2012
The Hadoop Ecosystem Table
2016–2020 The rise of containerisation and deep learning, and the downfall of Hadoop

这段时间的几个大趋势
HDFS 替换,迁移到云环境,Amazon S3, Google Storage or Azure Blob Storage
Docker,K8S 容器化出现,Hadoop 在 3.0 才支持 Docker
全托管的海量并行 SQL 数据仓库,也叫做:Modern Data Stack
深度学习的出现
深度学习需要 GPU,以及 Tensorflow or Keras 的多个版本同时运行这些 Hadoop 都么有,当时只能用 VM 启动多个 GPU 跑任务 于是 Cloudera 在 2017 年 IPO 之后就基于容器化推出了他们的 Data Science Workbench
Hadoop 供应商的大事件
2018 年 Cloudera 跟 Hortonworks 合并,前者保留品牌
MapR 被 Hewlett Packard Entreprise (HPE) 收购
CD&R 以低于发行价 收购了 Cloudera
但这些并不代表 Hadoop 死了,它还在运行之后又出现一些开放表格的技术
Uber 2016 年推出的 Apache Hudi
Netflix 2017 年推出的 Apache Iceberg
Databricks 2019 年推出的 Delta Lake
这三个项目其实都是为了解决一个问题,从 Hadoop 迁移到云后,HDFS 的那些功能和性能都无法保证了需要用新的方案来兼容云存储环境,实现事务
Apache Iceberg Reduced Our Amazon S3 Cost by 90%
2020–2023 The modern era

Hadoop 云化依然是大趋势,而且每年都在增加当然企业内部还是有不少部署 私有化 Hadoop 的新一代启动都是基于 Modern Data Stack 来开发他们的 SQL 分析数据仓库产品如:BigQuery, Databricks-SQL, Athena or Snowflake 目标是低代码、零代码
几个元数据管理产品
Apache Atlas, started by Hortonworks in 2015
Amundsen, open-source by Lyft in 2019
DataHub, open-sourced by Linkedin in 2020
新的调度框架
Prefect
Dagster
Flyte
开始调整 Airflow 的地位
lakehouse 开始出现,结合了数据湖、数据仓库的优点最初是 Databricks 提出的,这个平台也方便了数据科学、BI 用户共享数据因此 数据治理、安全、知识分享也更简单
之后 Snowflake 跟进推出了 Snowpark 然后是 Azure SynapseGoogle with BigLake
开源方面,Dremio provides a lakehouse architecture since 2017
Modern Data Stack: Which Place for Spark ?
2023 - Who can tell what the future will be like?

对未来的一些猜想
主要的数据平台玩家:Databricks, Snowflake, BigQuery, Azure Synapse 会继续发力,缩小彼此差距,增加更多的功能和连接更多的组件
新项目会越来越少,主要不是缺乏 ideas,而是资金
公司更多是缺乏熟练的劳动力,他们更愿意花钱迁移到新方案而不是优化,可能因为低效的数据管理,使的企业会寻找更好的方案,类似 Hadoop 的新周期又诞生
云厂商 Google, Amazon, Microsoft 才是真正的赢家,找到风向标然后拷贝整合到自己的环境中
往期推荐
评论