The History of Big data
主要参考,翻译整理自这篇文章:
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
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
新的调度框架
开始调整 Airflow的地位
lakehouse 开始出现,结合了数据湖、数据仓库的优点
最初是 Databricks 提出的,这个平台也方便了数据科学、BI 用户共享数据
因此 数据治理、安全、知识分享页更简单
之后 Snowflake 跟进推出了 Snowpark
然后是 Azure Synapse
Google 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才是真正的赢家,找到风向标然后拷贝整合到自己的环境中