书籍详情
大数据技术入门(第2版)
作者:杨正洪 著
出版社:清华大学出版社
出版时间:2020-02-01
ISBN:9787302547969
定价:¥79.00
购买这本书可以去
内容简介
目前国内大数据市场继续保持高速的发展态势,作者在与地方政府、证券金融公司的项目合作中发现,他们对大数据技术很感兴趣,并希望从大数据技术、采集、存储、访问、安全、分析与开发等方面得到指导和帮助。因此编写了这本大数据技术的入门书。 本书共12章,以Hadoop和Spark框架为线索,比较全面地介绍了Hadoop技术、Spark技术、大数据存储、大数据访问、大数据采集、大数据管理、大数据分析、大数据开发、大数据环境自动化部署(Docker和K8s)等内容。 本书适合大数据技术初学者,政府、金融机构的大数据应用决策和技术人员、IT经理、CTO、CIO等快速学习大数据技术。本书也可以作为高等院校和培训学校相关专业的培训教材。
作者简介
杨正洪,毕业于美国State University of New York at Stony Brook,在美国硅谷从事AI和大数据相关研发工作 10 多年,华中科技大学和中国地质大学客座教授,湖北省 2013 年海外引进人才,拥有多项国家专利。参与了大数据和人工智能的国家标准的制定,在 2016 年参与了公安部主导的“信息安全技术:大数据平台安全管理产品安全技术要求”的国家标准制定。作者还是中关村海外智库专家顾问和住建部中规院专家顾问,担任了在美上市公司 CTO、北京某国企 CIO 和上海某国企高级副总裁等职。多年从事人工智能与大数据技术的工作,出版了《智慧城市》等多本书籍。
目录
目 录
第1章 大数据时代 1
1.1 什么是大数据 1
1.1.1 四大特征 2
1.1.2 数据监管(Data Governance) 3
1.1.3 数据质量 4
1.1.4 大数据分析 4
1.1.5 大数据平台架构 5
1.2 大数据与云计算的关系 6
1.2.1 云计算产品概述 6
1.2.2 虚拟服务器 7
1.2.3 云存储 11
1.3 Hadoop和云平台的应用实例 12
1.3.1 云平台层面配置 12
1.3.2 大数据平台层面配置 14
1.4 数据湖(Data Lake) 16
1.5 企业如何走向大数据 17
1.5.1 业务价值维度 18
1.5.2 数据维度 18
1.5.3 现有IT环境和成本维度 19
1.5.4 数据治理维度 20
第2章 大数据软件框架 21
2.1 Hadoop框架 21
2.1.1 HDFS(分布式文件系统) 22
2.1.2 MapReduce(分布式计算框架) 23
2.1.3 YARN(集群资源管理器) 28
2.2 Spark(内存计算框架) 30
2.2.1 Spark SQL 31
2.2.2 Spark Streaming 32
2.3 实时流处理框架 34
2.4 云端消息队列 34
2.5 框架的选择 35
2.6 Hadoop发行版 36
2.7 Mac上安装Hadoop 37
2.7.1 在Mac上安装Hadoop 37
2.7.2 安装MySQL和Hive 41
2.8 Linux上安装Hadoop 44
2.8.1 配置Java环境 45
2.8.2 安装ntp和Python 47
2.8.3 安装和配置openssl 47
2.8.4 配置SSH无密码访问 47
2.8.5 安装Ambari和HDP 48
2.8.6 启动和停止服务 52
2.9 AWS云平台上安装Hadoop 54
第3章 大数据集群 57
3.1 集群实例分析 57
3.2 YARN 67
3.2.1 架构组成 68
3.2.2 YARN执行流程 71
3.3 资源的调度器 75
3.3.1 Capacity Scheduler 76
3.3.2 Fair Scheduler 78
3.3.3 资源调度实例分析 81
3.3.4 内存和CPU资源调度 84
3.4 深入研究Resource Manager 88
3.5 集群配置文件总览 91
3.5.1 yarn-site.xml 91
3.5.2 mapred-site.xml 94
3.6 自动伸缩(Auto Scaling)集群 97
3.7 迁移Hadoop集群 97
3.8 增加Instance 99
第4章 大数据存储:文件系统和云存储 100
4.1 HDFS shell命令 100
4.2 配置HDFS 102
4.2.1 配置文件 102
4.2.2 多节点配置 103
4.3 HDFS API编程 104
4.3.1 读取HDFS文件内容 105
4.3.2 写HDFS文件内容 108
4.3.3 WebHDFS 108
4.4 HDFS API总结 110
4.4.1 Configuration类 110
4.4.2 FileSystem抽象类 111
4.4.3 Path类 111
4.4.4 FSDataInputStream类 111
4.4.5 FSDataOutputStream类 112
4.4.6 IOUtils类 112
4.4.7 FileStatus类 112
4.4.8 FsShell类 112
4.4.9 ChecksumFileSystem抽象类 112
4.4.10 其他的HDFS API实例 113
4.4.11 综合实例 115
4.5 HDFS文件格式 118
4.5.1 SequenceFile 118
4.5.2 TextFile(文本格式) 118
4.5.3 RCFile 118
4.5.4 Avro 120
4.6 云存储S3 120
4.6.1 S3基本概念 121
4.6.2 S3管理控制台 122
4.6.3 S3 CLI 126
4.6.4 S3 SDK 127
4.6.5 分区 129
4.6.6 与EBS的比较 129
4.6.7 与Glacier的比较 129
第5章 大数据存储:数据库 130
5.1 NoSQL 130
5.2 HBase概述 131
5.2.1 HBase表结构 132
5.2.2 HBase系统架构 135
5.2.3 启动并操作HBase数据库 136
5.2.4 HBase Shell工具 139
5.3 HBase编程 142
5.3.1 增删改查API 142
5.3.2 过滤器 146
5.3.3 计数器 149
5.3.4 原子操作 149
5.3.5 管理API 149
5.4 其他NoSQL数据库 151
5.4.1 Cassandra 151
5.4.2 Impala 151
5.4.3 DynamoDB 151
5.4.4 Redshift 151
5.5 云数据库 152
5.5.1 什么是RDS 152
5.5.2 创建云数据库 152
5.5.3 查看云数据库信息 156
5.5.4 何时使用云端数据库 159
第6章 大数据访问:SQL引擎层 160
6.1 Phoenix 161
6.1.1 安装和配置Phoenix 161
6.1.2 在Eclipse上开发Phoenix程序 165
6.1.3 Phoenix SQL工具 169
6.1.4 Phoenix SQL语法 170
6.2 Hive 171
6.2.1 Hive架构 172
6.2.2 安装Hive 173
6.2.3 Hive CLI 175
6.2.4 Hive数据类型 175
6.2.5 Hive文件格式 177
6.2.6 Hive表定义 179
6.2.7 Hive加载数据 183
6.2.8 Hive查询数据 184
6.2.9 Hive UDF 186
6.2.10 Hive视图 188
6.2.11 HiveServer2 189
6.2.12 hive-site.xml需要的配置 195
6.2.13 HBase集成 200
6.2.14 XML和JSON数据 200
6.2.15 使用TEZ 201
6.2.16 Hive MetaStore 203
6.2.17 综合示例 204
6.3 Pig 206
6.3.1 Pig语法 207
6.3.2 Pig和Hive的使用场景之比较 210
6.4 ElasticSearch(全文搜索引擎) 211
6.4.1 全文索引的基础知识 211
6.4.2 安装和配置ElasticSearch 213
6.4.3 ElasticSearch API 215
6.5 Presto 217
第7章 大数据采集和导入 218
7.1 Flume 220
7.1.1 Flume架构 220
7.1.2 Flume事件 221
7.1.3 Flume源 221
7.1.4 Flume拦截器(Interceptor) 222
7.1.5 Flume通道选择器(Channel Selector) 223
7.1.6 Flume通道 224
7.1.7 Flume接收器 225
7.1.8 负载均衡和单点失败 226
7.1.9 Flume监控管理 227
7.1.10 Flume实例 227
7.2 Kafka 229
7.2.1 Kafka架构 229
7.2.2 Kafka与JMS的异同 230
7.2.3 Kafka性能考虑 231
7.2.4 消息传送机制 231
7.2.5 Kafka和Flume的比较 232
7.3 Sqoop 232
7.3.1 从数据库导入HDFS 233
7.3.2 增量导入 235
7.3.3 将数据从Oracle导入Hive 235
7.3.4 将数据从Oracle导入HBase 235
7.3.5 导入所有表 236
7.3.6 从HDFS导出数据 236
7.3.7 数据验证 237
7.3.8 其他Sqoop功能 237
7.4 Storm 238
7.4.1 Storm基本概念 238
7.4.2 Spout 240
7.4.3 Bolt 241
7.4.4 拓扑结构 243
7.4.5 Storm总结 244
7.5 Amazon Kinesis 245
7.6 其他工具 246
7.6.1 Embulk 246
7.6.2 Fluentd 247
第8章 大数据安全管控 250
8.1 数据主权和合规性 250
8.2 云端安全 251
8.2.1 身份验证和访问权限 251
8.2.2 角色 253
8.2.3 虚拟网络 254
8.2.4 安全组 255
8.3 云端监控 256
8.3.1 跟踪和审计 256
8.3.2 监控 257
8.3.3 基于Datadog的监控 259
8.4 云端备份和恢复 262
8.5 大数据安全 262
8.5.1 Kerberos 263
8.5.2 Apache Ranger 263
8.5.3 应用端安全 267
第1章 大数据时代 1
1.1 什么是大数据 1
1.1.1 四大特征 2
1.1.2 数据监管(Data Governance) 3
1.1.3 数据质量 4
1.1.4 大数据分析 4
1.1.5 大数据平台架构 5
1.2 大数据与云计算的关系 6
1.2.1 云计算产品概述 6
1.2.2 虚拟服务器 7
1.2.3 云存储 11
1.3 Hadoop和云平台的应用实例 12
1.3.1 云平台层面配置 12
1.3.2 大数据平台层面配置 14
1.4 数据湖(Data Lake) 16
1.5 企业如何走向大数据 17
1.5.1 业务价值维度 18
1.5.2 数据维度 18
1.5.3 现有IT环境和成本维度 19
1.5.4 数据治理维度 20
第2章 大数据软件框架 21
2.1 Hadoop框架 21
2.1.1 HDFS(分布式文件系统) 22
2.1.2 MapReduce(分布式计算框架) 23
2.1.3 YARN(集群资源管理器) 28
2.2 Spark(内存计算框架) 30
2.2.1 Spark SQL 31
2.2.2 Spark Streaming 32
2.3 实时流处理框架 34
2.4 云端消息队列 34
2.5 框架的选择 35
2.6 Hadoop发行版 36
2.7 Mac上安装Hadoop 37
2.7.1 在Mac上安装Hadoop 37
2.7.2 安装MySQL和Hive 41
2.8 Linux上安装Hadoop 44
2.8.1 配置Java环境 45
2.8.2 安装ntp和Python 47
2.8.3 安装和配置openssl 47
2.8.4 配置SSH无密码访问 47
2.8.5 安装Ambari和HDP 48
2.8.6 启动和停止服务 52
2.9 AWS云平台上安装Hadoop 54
第3章 大数据集群 57
3.1 集群实例分析 57
3.2 YARN 67
3.2.1 架构组成 68
3.2.2 YARN执行流程 71
3.3 资源的调度器 75
3.3.1 Capacity Scheduler 76
3.3.2 Fair Scheduler 78
3.3.3 资源调度实例分析 81
3.3.4 内存和CPU资源调度 84
3.4 深入研究Resource Manager 88
3.5 集群配置文件总览 91
3.5.1 yarn-site.xml 91
3.5.2 mapred-site.xml 94
3.6 自动伸缩(Auto Scaling)集群 97
3.7 迁移Hadoop集群 97
3.8 增加Instance 99
第4章 大数据存储:文件系统和云存储 100
4.1 HDFS shell命令 100
4.2 配置HDFS 102
4.2.1 配置文件 102
4.2.2 多节点配置 103
4.3 HDFS API编程 104
4.3.1 读取HDFS文件内容 105
4.3.2 写HDFS文件内容 108
4.3.3 WebHDFS 108
4.4 HDFS API总结 110
4.4.1 Configuration类 110
4.4.2 FileSystem抽象类 111
4.4.3 Path类 111
4.4.4 FSDataInputStream类 111
4.4.5 FSDataOutputStream类 112
4.4.6 IOUtils类 112
4.4.7 FileStatus类 112
4.4.8 FsShell类 112
4.4.9 ChecksumFileSystem抽象类 112
4.4.10 其他的HDFS API实例 113
4.4.11 综合实例 115
4.5 HDFS文件格式 118
4.5.1 SequenceFile 118
4.5.2 TextFile(文本格式) 118
4.5.3 RCFile 118
4.5.4 Avro 120
4.6 云存储S3 120
4.6.1 S3基本概念 121
4.6.2 S3管理控制台 122
4.6.3 S3 CLI 126
4.6.4 S3 SDK 127
4.6.5 分区 129
4.6.6 与EBS的比较 129
4.6.7 与Glacier的比较 129
第5章 大数据存储:数据库 130
5.1 NoSQL 130
5.2 HBase概述 131
5.2.1 HBase表结构 132
5.2.2 HBase系统架构 135
5.2.3 启动并操作HBase数据库 136
5.2.4 HBase Shell工具 139
5.3 HBase编程 142
5.3.1 增删改查API 142
5.3.2 过滤器 146
5.3.3 计数器 149
5.3.4 原子操作 149
5.3.5 管理API 149
5.4 其他NoSQL数据库 151
5.4.1 Cassandra 151
5.4.2 Impala 151
5.4.3 DynamoDB 151
5.4.4 Redshift 151
5.5 云数据库 152
5.5.1 什么是RDS 152
5.5.2 创建云数据库 152
5.5.3 查看云数据库信息 156
5.5.4 何时使用云端数据库 159
第6章 大数据访问:SQL引擎层 160
6.1 Phoenix 161
6.1.1 安装和配置Phoenix 161
6.1.2 在Eclipse上开发Phoenix程序 165
6.1.3 Phoenix SQL工具 169
6.1.4 Phoenix SQL语法 170
6.2 Hive 171
6.2.1 Hive架构 172
6.2.2 安装Hive 173
6.2.3 Hive CLI 175
6.2.4 Hive数据类型 175
6.2.5 Hive文件格式 177
6.2.6 Hive表定义 179
6.2.7 Hive加载数据 183
6.2.8 Hive查询数据 184
6.2.9 Hive UDF 186
6.2.10 Hive视图 188
6.2.11 HiveServer2 189
6.2.12 hive-site.xml需要的配置 195
6.2.13 HBase集成 200
6.2.14 XML和JSON数据 200
6.2.15 使用TEZ 201
6.2.16 Hive MetaStore 203
6.2.17 综合示例 204
6.3 Pig 206
6.3.1 Pig语法 207
6.3.2 Pig和Hive的使用场景之比较 210
6.4 ElasticSearch(全文搜索引擎) 211
6.4.1 全文索引的基础知识 211
6.4.2 安装和配置ElasticSearch 213
6.4.3 ElasticSearch API 215
6.5 Presto 217
第7章 大数据采集和导入 218
7.1 Flume 220
7.1.1 Flume架构 220
7.1.2 Flume事件 221
7.1.3 Flume源 221
7.1.4 Flume拦截器(Interceptor) 222
7.1.5 Flume通道选择器(Channel Selector) 223
7.1.6 Flume通道 224
7.1.7 Flume接收器 225
7.1.8 负载均衡和单点失败 226
7.1.9 Flume监控管理 227
7.1.10 Flume实例 227
7.2 Kafka 229
7.2.1 Kafka架构 229
7.2.2 Kafka与JMS的异同 230
7.2.3 Kafka性能考虑 231
7.2.4 消息传送机制 231
7.2.5 Kafka和Flume的比较 232
7.3 Sqoop 232
7.3.1 从数据库导入HDFS 233
7.3.2 增量导入 235
7.3.3 将数据从Oracle导入Hive 235
7.3.4 将数据从Oracle导入HBase 235
7.3.5 导入所有表 236
7.3.6 从HDFS导出数据 236
7.3.7 数据验证 237
7.3.8 其他Sqoop功能 237
7.4 Storm 238
7.4.1 Storm基本概念 238
7.4.2 Spout 240
7.4.3 Bolt 241
7.4.4 拓扑结构 243
7.4.5 Storm总结 244
7.5 Amazon Kinesis 245
7.6 其他工具 246
7.6.1 Embulk 246
7.6.2 Fluentd 247
第8章 大数据安全管控 250
8.1 数据主权和合规性 250
8.2 云端安全 251
8.2.1 身份验证和访问权限 251
8.2.2 角色 253
8.2.3 虚拟网络 254
8.2.4 安全组 255
8.3 云端监控 256
8.3.1 跟踪和审计 256
8.3.2 监控 257
8.3.3 基于Datadog的监控 259
8.4 云端备份和恢复 262
8.5 大数据安全 262
8.5.1 Kerberos 263
8.5.2 Apache Ranger 263
8.5.3 应用端安全 267
猜您喜欢