基本信息

编辑推荐
基于Hadoop 2.7.1版本,全面描述HDFS 2.X的核心技术与解决方案。对于HDFS中比较特殊的几个场景过程进行细粒度分析,包括源码分析,融入了作者多年的开发经验。
本书作者是一名Hadoop社区的活跃贡献者,研究并贡献了很多代码。他把工作实践中遇到的许多经验写入了书中,介绍了HDFS未来比较棒的一些功能特性,以及Hadoop社区目前在做的一些事情。在这本书中,你会看到许多与社区相关的JIRA,告诉你如何从社区上找到问题的解决办法。
本书适合具有一定Java语言基础的读者。
内容简介
计算机书籍
本书基于Hadoop 2.7.1版本进行分析,全面描述了HDFS 2.X的核心技术与解决方案,书中描述了HDFS内存存储、异构存储等几大核心设计,包括源码细节层面的分析,对于HDFS中比较特殊的几个场景过程也做了细粒度的分析。还分享了作者在实际应用中的解决方案及扩展思路。阅读本书可以帮助读者从架构设计与功能实现角度了解HDFS 2.X,同时还能学习HDFS 2.X框架中优秀的设计思想、设计模式、Java语言技巧等。这些对于读者全面提高自己分布式技术水平有很大的帮助。本书分为三大部分:核心设计篇、细节实现篇、解决方案篇,“核心设计篇”包括HDFS的数据存储原理、HDFS的数据管理与策略选择机制、HDFS的新颖功能特性;“细节实现篇”包括HDFS的块处理、流量处理等细节,以及部分结构分析;“解决方案篇”包括HDFS的数据管理、HDFS的数据读写、HDFS的异常场景等。本书适合于云计算相关领域研发人员、云计算相关运维工程师、高年级研究生或本科、热衷于分布式计算研究的人。
作译者
目录
第一部分 核心设计篇
第1章 HDFS的数据存储 2
1.1 HDFS内存存储 2
1.1.1 HDFS内存存储原理 2
1.1.2 Linux 虚拟内存盘 4
1.1.3 HDFS的内存存储流程分析 4
1.1.4 LAZY_PERSIST内存存储的使用 14
1.2 HDFS异构存储 15
1.2.1 异构存储类型 16
1.2.2 异构存储原理 17
1.2.3 块存储类型选择策略 22
1.2.4 块存储策略集合 24
1.2.5 块存储策略的调用 27
1.2.6 HDFS异构存储策略的不足之处 28
1.2.7 HDFS存储策略的使用 30
1.3 小结 31
第2章 HDFS的数据管理与策略选择 32
2.1 HDFS缓存与缓存块 32
2.1.1 HDFS物理层面缓存块 33
前言
本书不会是纯源码分析的书籍。首先,我把工作实践中遇到的许多经验写入了书中,第7章便属于纯实践型的经验总结。其次,本书会是一个比较“新”的书,这里的“新”并不是指所分析的代码版本新,而是包含了HDFS未来的一些比较棒的功能特性,以及Hadoop社区目前在做的一些事情。在这本书中,你会看到许多与社区相关的JIRA,了解如何从社区上找到问题的解决办法。期待本书能给你带来更多的启发。
本书适合具有一定Java语言基础的同学,尤其适合以下读者朋友:
大数据架构师、开发者、运维工程师。
高年级本科生或研究生。
热衷于分布式存储技术的爱好者。
本书分为三大部分,“核心设计篇”介绍HDFS的基本原理、数据管理与策略等,“细节实现篇”介绍HDFS的块处理、流量处理、结构分析等,“解决方案篇”介绍数据管理技术与方案、数据读写技术、异常处理等。
第一部分“核心设计篇”包括内容如下:
第1章介绍HDFS现有的数据存储方式,主要介绍其中的内存存储和异构存储两个方面。
第2章介绍HDFS目前内部几种主要的功能机制,包括缓存管理、快照管理等。
第3章介绍HDFS比较新颖的一些功能,以及目前较少被人用到的功能特性。
第二部分“细节实现篇”包括内容如下:
第4章介绍HDFS的块处理相关操作,主要处理场景包括块如何组织、上报处理的过程以及多余块的清除。
第5章介绍HDFS的流量处理过程,包括HDFS目前流量处理的场景以及Balancer工具的数据平衡原理和优化。
第6章介绍HDFS一些特殊的结构对象类,包括这些类的作用、原理以及运用场景。
第三部分“解决方案篇”包括内容如下:
第7章介绍与HDFS相关的多套运维管理的操作方案,包括数据迁移、数据监控等方面。
第8章介绍HDFS写磁盘时的一些优化策略和改造方案。
第9章介绍HDFS的一些异常场景,并给出了相应的解决方案。
由于笔者水平有限,本书难免会有出错或者介绍不明确的地方,恳请读者批评指正,可以发送关于本书的意见和建议到我的个人邮箱:yqtin@apache.org。本书所涉及的源码,大家可以从Hadoop的Git地址上进行下载:https://github.com/apache/hadoop,其中,不同的分支对应不同版本的代码。相关Git地址和CSDN博客地址如下: