原力注入

极客时间《大数据经典论文解读》:建立你的大数据知识网络

    大数据领域的知识地图涵盖了分布式系统、单节点存储引擎和计算引擎。分布式系统需满足可靠性、可扩展性和可维护性,涉及主从架构、复制策略和分片策略等。单节点存储引擎关注事务、数据写入和存储方式,以及数据的序列化问题。计算引擎的发展经历了多个阶段,包括MapReduce、Spark、S4/Storm、Lambda架构、Spark Streaming、Kafka和Dataflow模型。这些技术相互关联,需要综合考虑组成原理、算法和数据结构、数据库原理等知识。学习大数据论文的关键挑战在于精读和交叉阅读,以及制定明确的学习目标。通过从第一性原理出发、多做交叉阅读和扩展阅读,以及给自己制定明确的学习目标,读者能够更好地理解大数据知识。推荐阅读包括《Big Data》、《Designing Data-Intensive Applications》、流式处理相关书籍和MIT的Distributed System)课程。读者应该根据自身目标选择合适的学习方法,深入理解论文中提出的问题和解决方案,构建起自己的大数据摩天大楼。

从 GFS 到 Dataflow,12 年大数据生态演化图

Image

原文地址:https://time.geekbang.org/column/article/418480

经典论文

Image

名称论文来源发表年份
GFSThe Google File System2003
MapReduceMapReduce: Simplified data processing on large cluster2004
BigtableBigtable: A distributed storage system for structured data2006
ChubbyThe Chubby lock service for loosely-coupled distributed system2006
ThriftThrift: Scalable cross-language services implementation2009
HiveHive: a warehousing solution over a map-reduce framework2009
DremelDremel: interactive analysis of web-scale datasets2010
SparkSpark: Cluster computing with working sets2010
MegastoreMegastore: Providing scalable, highly available storage for interactive services2011
SpannerSpanner: Google's globally distributed database2012
S4S4: Distributed stream computing platform2010
StormStorm@Twitter2014
KafkaKafka: A distributed messaging system for log processing2011
DataflowThe dataflow model: a practical approach to balancing correctness, latency, and cost in massive-scale, unbounded, out-of-order data processing2015
RaftIn search of an understandable consensus algorithm2014
BorgLarge-scale cluster management at Google with Borg2015
KubernetesBorg, Omega, and Kubernetes2016

大数据领域的知识地图

原文:https://time.geekbang.org/column/article/420448


Image

分布式系统

所有的大数据系统都是分布式系统。我们需要大数据系统,就是因为普通的单机已经无法满足我们期望的性能了。那么作为一个分布式的数据系统,它就需要满足三个特性,也就是可靠性、可扩展性和可维护性。

Image

单节点的存储引擎

然而,即使是上万台的分布式集群,最终还是要落到每一台单个服务器上完成数据的读写。那么在存储引擎上,关键的技术点主要包括三个部分。

Image

计算引擎

这个维度实际上也是大数据领域本身进化和迭代最快的一部分。

Image

调度系统和综合应用

总结来说,分布式系统、存储引擎和计算引擎就共同构成了大数据的核心技术。更进一步,随着多种分布式系统的混排,又产生了 Kubernetes 这样的资源管理和调度系统。而所有的这些技术之间,都不是各自独立,而是相互关联的。

作者推荐的参考文献

  • • 首先是 Storm 的作者南森·马茨(Nathan Marz)的“Big Data”,现在也有中译本叫做《大数据系统构建》。对于人为错误的容错问题的思考,为我们带来了著名的 Lambda 架构。在我看来,即使到今天 Lambda 架构也并不过时。

  • • 其次是俗称 DDIA 的这本《》,这本书梳理了整个大数据领域的核心技术脉络,是一本非常合适的架构入门书。

  • • 第三本是专注于流式处理的《Streaming System》,不过目前还没有中译本上市。

  • • 如果你更喜欢通过视频课程学习,那么去看一看来自 MIT 的课程 6.824 的 Distributed System 绝对错不了。我在这里放上了Youtube和B 站的视频链接(https://www.bilibili.com/video/BV1x7411M7Sf)。

  • • 最后是一份很容易被人忽视的资料,就是 2009 年 Jeff Dean 在 Cornell 大学的一个讲座“Designs, Lessons and Advice from Building Large Distributed Systems”的 PPT(https://www.cs.cornell.edu/projects/ladis2009/talks/dean-keynote-ladis2009.pdf),我也推荐你去看一看,对于理解大数据系统的真实应用场景很有帮助。

  • 课程推荐

  • Image