谷歌大数据的三驾马车资料下载

互联网企业的技术人员通常有两个大的方向,一个是做大规模高并发的线上服务,另外一个是做大数据分析,本文介绍大数据分析的鼻祖型论文“谷歌三驾马车”。这包括处理分布式数据的mapreduce、存储大量数据的gfs以及列式存储bigtable,当前流行的大数据技术都是在谷歌发表了这三大论文以后,不断的发展起来的,典型的就是Apache开源的hadoop和hbase,其中hadoop的mapreduce和hdfs的思想来源于谷歌mapreduce和gfs论文,而hbase来源于谷歌的bigtable论文。

由于谷歌的论文是英文的,如果大家读英文有些困难,也可以在网上找相应的中文书籍,如果没有中文的,大家读的过程中遇到难懂的英文表述,大家通过博客或者微信截图留言给博主,博主会帮大家翻译。

资料下载


1 mapreduce-osdi04.pdf

介绍:MapReduce是一个处理大数据集的编程模型。它通过map函数把基于行的输入转化成不同的键值对,再通过reduce函数把这些键值对针对相同的键进行聚合,并在聚合的过程中进行相应的计算。

其中的重点是:

  1. 如何分割基于行的源文件。
  2. 在map阶段如何把行数据映射成键值对。
  3. 对大数据集如何进行partition。
  4. 在reduce阶段如何进行响应的逻辑计算并输出结果。

其中,一个最典型的用例是给出一篇文章,计算每个单词出现的个数,起逻辑流程为:

  1. 把文章按照行来切分。
  2. 在map阶段,对每一行的每个单词构建一个键值对,键是单词本身,值是固定值"1"。
  3. 对map的结果进行分区,使用默认策略,通过哈希进行分区。
  4. 在reduce阶段,统计聚合在同一个key的值的数量,得出每个单词出现的次数。

下载链接 密码:olwp

2 gfs-sosp2003.pdf

介绍:GFS是一个分布式文件系统,用来存储大量的较大文件,它可以在廉价的硬件上实现存储文件,并做到容错性,并且针对多个客户同时访问提供比较有竞争力的性能。

其中的重点是:

  1. 把一个较大的文件切分成不同的单元块。
  2. 把每一个单元块存储在ChunkServer上,并且每一块都会复制在多个ChunkServer服务器上。
  3. 每一个文件包含多少块和哪些块这些元数据存储在GFS Master服务器上。

这是一个低成本的分布式存储系统,用来数据量非常大的存储场景,通常为mapreduce的大数据处理模型提供输入和输出的存储系统。

下载链接 密码:c2p4

3 bigtable-osdi06.pdf

介绍:Bigtable是一个可以管理结构化数据的分布式存储系统,它本身支持水平的横向扩展,通过使用成千上万的连接服务器,来支持PB量级的数据处理。

其中的重点是:

  1. Chubby服务器存储SSTable根的数据信息。
  2. Tablet server的水平扩展以及分裂。
  3. SSTable的存储结构。
  4. 列式存储结构,RowKey以及列簇的设计。
  5. LSM Tree的数据结构以及特点。

在谷歌,网页索引,谷歌帝企鹅,谷歌财经等的数据都存储在Bigtable集群里。

4 MapReduce_NextGen_Architecture.pdf

介绍:在第一代mapdure的实现中,资源分配和任务监控都耦合在Master节点上,在Worker节点数增加到一定的数量级,Master节点出现了性能瓶颈,下一代MapReduce框架Yarn把资源管理器和任务管理器分离,解决了这个性能瓶颈。

下载链接 密码:kb1n

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java一日一条

Java 性能优化的五大技巧

要对你的 java 代码进行优化,需要理解 java 不同要素之间的相互作用,以及它是如何与其运行时的操作系统进行交互的。使用下面这五个技巧和资源,开始学习如何...

723
来自专栏二进制文集

思维导图学 Maven

922
来自专栏贾老师の博客

游戏中的网络同步

2114
来自专栏大数据

UC Berkeley提出新型分布式执行框架Ray:有望取代Spark

译者|马卓奇 编辑|Natalie AI 前线导读:下一代人工智能应用程序需要不断地与环境交互,并从这些交互中学习。这对系统的性能和灵活性提出了新的要求,而现有...

2958
来自专栏数据的力量

google的搜索技巧

1458
来自专栏程序员互动联盟

【专业技术第一讲】进程的一生

学习编程,进程跳不过去,好多初学者可以向背教科书一样说出进程和线程的区别,但是很少能真正的理解进程整个运行过程。搞清楚进程的运行机制,进程运行的各个阶段也并不是...

3566
来自专栏数据派THU

独家 | 一文读懂Hadoop(三):Mapreduce

随着全球经济的不断发展,大数据时代早已悄悄到来,而Hadoop又是大数据环境的基础,想入门大数据行业首先需要了解Hadoop的知识。2017年年初apache发...

2248
来自专栏WeTest质量开放平台团队的专栏

UPA性能分析工具使用详解

自从WeTest宣布与Unity官方共同推出Unity性能分析工具UPA(Unity Performance Analysis)以来(Hi,我们和Unity合作...

772
来自专栏ATYUN订阅号

【学术】厉害了我的哥,国外技术大咖仿造了谷歌的Arts &Culture,找到古代的“你”

当我激动的室友第一次向我展示肖像搜索功能时,我对结果感到很惊讶(也觉得有点受侮辱)。对于那些不熟悉它的人来说,谷歌Arts & Culture的这一功能让你可以...

3374
来自专栏Python数据科学

你知道Jupyter notebook还可以用来做 “视频聊天室” 吗?

Ipywidgets在Jupyter生态系统中扮演着重要角色,它带来了用户和数据之间的互动。小工具组件是多种的Python对象,通常在Jupyter Noteb...

711

扫码关注云+社区