Thinking in Big Data

Thinking in Big Data

六月 17, 2025

断更许久,本想找个时间专门写一篇,正好今天写了些最近阅读的大牛文章的读后感,索性就更上来,随心一点,供大家共赏。

简单介绍下,博客的作者 Jordan Tigani 是 2008 年的时候加入的 Google, 是 Big Query 的创始研发成员,他在数据领域有很多切身的体会,也直面了很多客户。

Big Data is Dead

作者的观点

  • Google 的 3 篇关于论文(GFS, MapReduce, 及后来 2006 年的 BigTable),诞生于 2003 年,那时可用的 AWS 云服务器普遍也才 1C2G 的规格,想要进行大数据量的计算,它们有了 MPP 的解决方案。
  • 在他的这篇文章中,认为在当下 2023 年,也就是 20 年后,硬件技术有了本质上的变化,原先无法在单机运行的数据计算任务,当下已经可以胜任。
  • 很多系统实际上产生的数据量,并没有预想中的那么大,一般也就是TB级别,并没有达到PB。而且,保存到数据系统中的那些数据,绝大部分并没有被使用到;战略层一般只会使用近期产生的数据。在作者看来,它们更像是数据收藏家。它们把大量的数据留下来,只是为了所谓的以备未来的数据价值,但根本原因是在于不知道哪些数据是应该被清理的。
  • 作者说的“大数据已死”,并不是说大数据场景不存在了,而是说真实项目中的数据量并没有那么庞大,也不需要使用那么复杂的技术框架来解决,直接利用单机就是最高效的方案。

我的观点

  • 我一直认为很多时候是什么数据都想存下来,也就是作者说的数据收藏家的比喻。大部分历史数据根本不会发挥任何价值。但没有真实的依据,作者在前沿的数据证实了我的这种看法。

The Simple Joys of Scaling Up

作者的观点

  • 作者援引了关于 Big Query 相关的观点(即现在的硬件有了质的飞跃),Scale Up 比因为受 Google 的 3 篇论文而风行起来的 MPP 即 Scale Out,反而具备更多优势。
    • 没有一致性问题(Consistency, Consensus)
    • 没有网络延迟问题
  • 存算分离的出现,使得真正需要高可靠性的数据部分得到了新的保障
  • Scale Up 的成本不在像当初 03 年的时候那样畸高,实际上在当下是一种近乎于常量的价格增长,比如(我尝试在阿里云上检索了一遍 cpu:memory 为 1:2 的计算型节点的服务器价格,也是符合作者的观点的):
    • 4c8g cost 1 unit
    • 8c16g cost <2 units
    • 16c32g cost <4 units
  • 分布式系统在 tail latency (比如 P99)上,几乎总是比不上单机的性能指标

我的观点

  • 在此之前,我认为 scale out 给人以更实用的感觉,而这种感觉仅仅来自于:
    • 我可以用更便宜的价格买到一台机器
    • 因此,我可以拥有很多的低规格的机器
    • 因此,我可以部署那些以scale out思路设计的各种软件
    • 因此,我可以随时扩缩容我可用的机器数量
  • 但是……我并没有意识到作者Jordan Tigani提到的那些问题:
    • 当我需要为 scale up 的硬件增长而付费时,它们的差价并没有那么大
    • 当我需要给一个按MPP设计的系统扩容时,我需要采购新的机器,调整对应的配置,并监控整个系统的运行状况
  • 也许,真的陷入了技术陷阱吧

接下来

  • 我需要了解作者是否有在研究、或者已经有他所推崇的设计思路
  • 我需要了解现在有哪些(大数据相关的)技术是按照直接利用高配置服务器的思路去设计的,及真实的案例