《Cloudera Hadoop大数据平台实战指南》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:宋立桓,陈建平著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2019
  • ISBN:9787302517535
  • 页数:240 页
图书介绍:本书共分为18章,详细讲解Cloudera大数据平台及相关组件的各种技术,包括hive、storm、hbase、kafka、spark等技术。配套有上机实践操作,让读者更好地学习掌握大数据关键技术。还有大数据企业应用实际真实案例分享,包括源代码文件,对读者有极大的参考价值。

第1章 大数据概述 1

1.1大数据时代的数据特点 1

1.2大数据时代的发展趋势——数据将成为资产 2

1.3大数据时代处理数据理念的改变 3

1.3.1要全体不要抽样 3

1.3.2要效率不要绝对精确 3

1.3.3要相关不要因果 4

1.4大数据时代的关键技术 5

1.5大数据时代的典型应用案例 5

1.5.1塔吉特超市精准营销案例 5

1.5.2谷歌流感趋势案例 6

1.5.3证券行业案例 6

1.5.4某运营商大数据平台案例 7

1.6 Hadoop概述和介绍 7

1.6.1 Hadoop发展历史和应用现状 7

1.6.2 Hadoop的特点 8

1.6.3 Hadoop的生态系统 8

第2章 Cloudera大数据平台介绍 10

2.1 Cloudera简介 10

2.2 Cloudera的Hadoop发行版CDH简介 11

2.2.1 CDH概述 11

2.2.2 CDH和Apache Hadoop对比 12

2.3 Cloudera Manager大数据管理平台介绍 12

2.3.1 Cloudera Manager概述和整体架构 12

2.3.2 Cloudera Manager的基本核心功能 14

2.3.3 Cloudera Manager的高级功能 18

2.4 Cloudera平台参考部署架构 19

2.4.1 Cloudera的软件体系结构 19

2.4.2群集硬件规划配置 19

2.4.3 Hadoop集群角色分配 21

2.4.4网络拓扑 23

第3章 Cloudera Manager及CDH离线安装部署 25

3.1安装前的准备工作 25

3.2 Cloudera Manager及CDH安装 30

3.3添加其他大数据组件 35

第4章 分布式文件系统HDFS 37

4.1 HDFS简介 37

4.2 HDFS体系结构 38

4.2.1 HDFS架构概述 38

4.2.2 HDFS命名空间管理 38

4.2.3 NameNode 39

4.2.4 SecondaryNameNode 39

4.3 HDFS 2.0新特性 41

4.3.1 HDFS HA 41

4.3.2 HDFS Federation 42

4.4 HDFS操作常用shell命令 43

4.4.1 HDFS目录操作和文件处理命令 43

4.4.2 HDFS的Web管理界面 44

4.4.3 dfsadmin管理维护命令 45

4.4.4 namenode命令 47

4.5 Java编程操作HDFS实践 47

4.6 HDFS的参数配置和规划 49

4.7使用Cloudera Manager启用HDFS HA 51

4.7.1 HDFS HA高可用配置 51

4.7.2 HDFS HA高可用功能测试 54

第5章 分布式计算框架MapReduce 57

5.1 MapReduce概述 57

5.2 MapReduce原理介绍 58

5.2.1工作流程概述 58

5.2.2 MapReduce框架的优势 58

5.2.3 MapReduce执行过程 59

5.3 MapReduce编程——单词示例解析 59

5.4 MapReduce应用开发 60

5.4.1配置MapReduce开发环境 60

5.4.2编写和运行MapReduce程序 61

第6章 资源管理调度框架YARN 65

6.1 YARN产生背景 65

6.2 YARN框架介绍 66

6.3 YARN工作原理 67

6.4 YARN框架和MapReduce 1.0框架对比 69

6.5 CDH集群的YARN参数调整 69

第7章 数据仓库Hive 72

7.1 Hive简介 72

7.2 Hive体系架构和应用场景 73

7.2.1 Hive体系架构 73

7.2.2 Hive应用场景 74

7.3 Hive的数据模型 75

7.3.1内部表 75

7.3.2外部表 75

7.3.3分区表 75

7.3.4桶 75

7.4 Hive实战操作 76

7.4.1 Hive内部表操作 77

7.4.2 Hive外部表操作 77

7.4.3 Hive分区表操作 79

7.4.4桶表 80

7.4.5 Hive应用实例WordCount 82

7.4.6 UDF 84

7.5基于Hive的应用案例 86

第8章 数据迁移工具Sqoop 88

8.1 Sqoop概述 88

8.2 Sqoop工作原理 89

8.3 Sqoop版本和架构 91

8.4 Sqoop实战操作 93

第9章 分布式数据库HBase 100

9.1 HBase概述 100

9.2 HBase数据模型 101

9.3 HBase生态地位和系统架构 101

9.3.1 HBase的生态地位解析 101

9.3.2 HBase系统架构 102

9.4 HBase运行机制 103

9.4.1 Region 103

9.4.2 Region Server工作原理 103

9.4.3 Store工作原理 104

9.5 HBase操作实战 104

9.5.1 HBase常用shell命令 104

9.5.2 HBase编程实践 107

9.5.3 HBase参数调优的案例分享 109

第10章 分布式协调服务ZooKeeper 111

10.1 ZooKeeper的特点 111

10.2 ZooKeeper的工作原理 112

10.2.1基本架构 112

10.2.2 ZooKeeper实现分布式Leader节点选举 112

10.2.3 ZooKeeper配置文件重点参数详解 112

10.3 ZooKeeper典型应用场景 115

10.3.1 ZooKeeper实现HDFS的NameNode高可用HA 115

10.3.2 ZooKeeper实现HBase的HMaster高可用 116

10.3.3 ZooKeeper在Storm集群中的协调者作用 116

第11章 准实时分析系统Impala 118

11.1 Impala概述 118

11.2 Impala组件构成 119

11.3 Impala系统架构 119

11.4 Impala的查询处理流程 120

11.5 Impala和Hive的关系和对比 121

11.6 Impala安装 122

11.7 Impala入门实战操作 124

第12章 日志采集工具Flume 128

12.1 Flume概述 128

12.2 Flume体系结构 129

12.2.1 Flume外部结构 129

12.2.2 Flume的Event事件概念 130

12.2.3 Flume的Agent 130

12.3 Flume安装和集成 131

12.3.1搭建Flume环境 131

12.3.2 Kafka与Flume集成 132

12.4 Flume操作实例介绍 132

12.4.1例子概述 132

12.4.2第一步:配置数据流向 132

12.4.3第二步:启动服务 133

12.4.4第三步:新建空数据文件 133

12.4.5第四步:运行flume-ng命令 133

12.4.6第五步:运行命令脚本 134

12.4.7最后一步:测试结果 134

第13章 分布式消息系统Kafka 135

13.1 Kafka架构设计 135

13.1.1基本架构 135

13.1.2基本概念 136

13.1.3 Kafka主要特点 136

13.2 Kafka原理解析 137

13.2.1主要的设计理念 137

13.2.2 ZooKeeper在Kafka的作用 137

13.2.3 Kafka在ZooKeeper的执行流程 137

13.3 Kafka安装和部署 138

13.3.1 CDH5完美集成Kafka 138

13.3.2 Kafka部署模式和配置 139

13.4 Java操作Kafka消息处理实例 141

13.4.1例子概述 141

13.4.2第一步:新建工程 141

13.4.3第二步:编写代码 141

13.4.4第三步:运行发送数据程序 142

13.4.5最后一步:运行接收数据程序 143

13.5 Kafka与HDFS的集成 143

13.5.1与HDFS集成介绍 143

13.5.2与HDFS集成实例 144

13.5.3第一步:编写代码——发送数据 144

13.5.4第二步:编写代码——接收数据 145

13.5.5第三步:导出文件 146

13.5.6第四步:上传文件 146

13.5.7第五步:运行程序——发送数据 146

13.5.8第六步:运行程序——接收数据 147

13.5.9最后一步:查看执行结果 147

第14章 大数据ETL工具Kettle 148

14.1 ETL原理 148

14.1.1 ETL简介 148

14.1.2 ETL在数据仓库中的作用 149

14.2 Kettle简介 149

14.3 Kettle完整案例实战 150

14.3.1案例介绍 150

14.3.2最终效果 150

14.3.3表说明 150

14.3.4第一步:准备数据库数据 151

14.3.5第二步:新建转换 152

14.3.6第三步:新建数据库连接 153

14.3.7第四步:拖动表输入组件 153

14.3.8第五步:设置属性——order表 154

14.3.9第六步:设置属性orser表 155

14.3.10第七步:拖动流查询并设置属性——流查询 155

14.3.11第八步:设置属性——product表 156

14.3.12第九步:连接组件 156

14.3.13第十步:设置属性——文本输出 156

14.3.14最后一步:运行程序并查看结果 157

14.4 Kettle调度和命令 158

14.4.1通过页面调度 158

14.4.2通过脚本调度 159

14.5 Kettle使用原则 161

第15章 大规模数据处理计算引擎Spark 162

15.1 Spark简介 162

15.1.1使用背景 162

15.1.2 Spark特点 163

15.2 Spark架构设计 163

15.2.1 Spark整体架构 163

15.2.2关键运算组件 164

15.2.3 RDD介绍 164

15.2.4 RDD操作 165

15.2.5 RDD依赖关系 166

15.2.6 RDD源码详解 167

15.2.7 Scheduler 168

15.2.8 Storage 168

15.2.9 Shuffle 169

15.3 Spark编程实例 170

15.3.1实例概述 170

15.3.2第一步:编辑数据文件 170

15.3.3第二步:编写程序 171

15.3.4第三步:上传JAR文件 171

15.3.5第四步:远程执行程序 172

15.3.6最后一步:查看结果 172

15.4 Spark SQL实战 173

15.4.1例子概述 173

15.4.2第一步:编辑数据文件 173

15.4.3第二步:编写代码 174

15.4.4第三步:上传文件到服务器 174

15.4.5第四步:远程执行程序 174

15.4.6最后一步:查看结果 175

15.5 Spark Streaming实战 175

15.5.1例子概述 175

15.5.2第一步:编写代码 175

15.5.3第二步:上传文件到服务器 176

15.5.4第三步:远程执行程序 177

15.5.5第四步:上传数据 177

15.5.6最后一步:查看结果 177

15.6 Spark MLlib实战 178

15.6.1例子步骤 178

15.6.2第一步:编写代码 178

15.6.3第二步:上传文件到服务器 179

15.6.4第三步:远程执行程序 179

15.6.5第四步:上传数据 180

15.6.6最后一步:查看结果 180

第16章 大数据全栈式开发语言Python 182

16.1 Python简介 182

16.2 Python安装和配置 183

16.2.1 Anaconda介绍 183

16.2.2 Anaconda下载 183

16.2.3 Anaconda安装 184

16.2.4 Anaconda包管理 185

16.2.5 PyCharm下载 185

16.2.6 PyCharm安装 185

16.2.7 PyCharm使用 187

16.3 Python入门 190

16.3.1例子概述 190

16.3.2第一步:新建 Python文件 190

16.3.3第二步:设置字体大小 191

16.3.4第三步:编写代码 191

16.3.5第四步:执行程序 192

16.3.6最后一步:改变输入 192

16.4 Python数据科学库pandas入门 193

16.4.1例子概述 193

16.4.2 pandas包介绍 194

16.4.3第一步:打开Jupyter Notebook 194

16.4.4第二步:导入包 194

16.4.5第三步:定义数据集 195

16.4.6第四步:过滤数据 195

16.4.7最后一步:获取数据 196

16.5 Python绘图库matplotlib入门 197

16.5.1例子概述 197

16.5.2第一步:新建一个Python文件 197

16.5.3第二步:引入画图包 197

16.5.4第三步:组织数据 198

16.5.5第四步:画图 198

16.5.6最后一步:查看结果 199

第17章 大数据实战案例:实时数据流处理项目 200

17.1项目背景介绍 200

17.2业务需求分析 200

17.3项目技术架构 201

17.4项目技术组成 202

17.5项目实施步骤 202

17.5.1第一步:运用Kafka产生数据 202

17.5.2第二步:运用Spark接收数据 208

17.5.3第三步:安装Redis软件 211

17.5.4第四步:准备程序运行环境 214

17.5.5第五步:远程执行Spark程序 216

17.5.6第六步:编写Python实现可视化 218

17.5.7最后一步:执行Python程序 221

17.6项目总结 222

第18章 大数据实战案例:用户日志综合分析项目 223

18.1项目背景介绍 223

18.2项目设计目的 223

18.3项目技术架构和组成 224

18.4项目实施步骤 225

18.4.1第一步:本地数据FTP到Linux环境 225

18.4.2第二步:Linux数据上传到HDFS 225

18.4.3第三步:使用Hive访问HDFS数据 226

18.4.4第四步:使用Kettle把数据导入HBase 228

18.4.5第五步:使用Sqoop把数据导入MySQL 234

18.4.6第六步:编写Python程序实现可视化 236

18.4.7最后一步:执行Python程序 238