本书从大数据架构的角度解析大数据技术及算法,探讨大数据的发展和趋势。不仅对大数据相关技术及算法做了系统性的分析和描述,梳理了大数据的技术分类,如基础架构支持、大数据采集、大数据存储、大数据处理、大数据展示及交互,还融合了大数据行业的技术进展和大型互联网公司的大数据架构实践,努力为读者提供一个大数据的全景画卷。
本书从大数据架构的角度解析大数据技术及算法,探讨大数据的发展和趋势,介绍大数据的相关技术、算法和应用场景,帮助读者培养大数据的技术选型和系统架构能力。
赵勇,清华苏研院大数据处理中心副主任,聚云浩海(苏州)信息科技有限公司技术总监,现任中国计算机学会大数据专家委员会委员,是大数据专委会首批委员。 美国芝加哥大学博士,师从世界网格之父Ian Foster教授,其间在美国IBM研发中心、美国Argonne国家实验室实习。出版畅销书
第1章大数据技术概述
1.1大数据的概念
1.2大数据的行业价值
1.3大数据问题的爆发
1.4大数据处理流程
1.5大数据技术
1.5.1基础架构支持
1.5.2数据采集
1.5.3数据存储
1.5.4数据计算
1.5.5展现与交互
1.6练习题
参考文献
第2章大数据基础支撑--数据中心及云计算
2.1数据中心概述
2.1.1云计算时代数据中心面临的问题
2.1.2新一代数据中心关键技术
2.1.3业界发展动态
2.1.4小结
2.2云计算简介
2.2.1云计算定义
2.2.2云计算主要特征
2.2.3Web服务、网格和云计算
2.2.4云计算应用分类
2.2.5小结
2.3大数据与云计算的关系
2.3.1大数据是信息技术发展的必然阶段
2.3.2云计算等新兴信息技术正在真正地落地和实施
2.3.3云计算等新兴技术是解决大数据问题的核心关键
2.4云资源调度与管理
2.4.1云资源管理
2.4.2云资源调度策略
2.4.3云计算数据中心负载均衡调度
2.5开源云管理平台OpenStack
2.5.1OpenStack的构成
2.5.2OpenStack各组件之间的关系
2.5.3OpenStack的逻辑架构
2.5.4小结
2.6软件定义网络
2.6.1起源与发展
2.6.2OpenFlow标准和规范
2.6.3OpenFlow的应用
2.7虚拟机与容器
2.7.1VM虚拟化与Container虚拟化
2.7.2Docker
2.8练习题
参考文献
第3章云计算先行者--Google的三驾马车
3.1Google的三驾马车
3.1.1GFS--一个可扩展的分布式文件系统
3.1.2MapReduce--一种并行计算的编程模型
3.1.3BigTable--一个分布式数据存储系统
3.2Google新"三驾马车"
3.2.1Caffeine--基于Percolator的搜索索引系统
3.2.2Pregel--高效的分布式图计算的计算框架
3.2.3Dremel--大规模数据的交互式数据分析系统
3.3练习题
参考文献
第4章云存储系统
4.1云存储的基本概念
4.1.1云存储结构模型
4.1.2云存储与传统存储系统的区别
4.2云存储关键技术
4.2.1存储虚拟化技术
4.2.2分布式存储技术
4.3云存储系统分类
4.3.1分布式文件存储
4.3.2分布式块存储
4.3.3分布式对象存储
4.3.4统一存储
4.4其他相关技术
4.5练习题
参考文献
第5章数据采集系统
5.1Flume
5.1.1Flume架构
5.1.2Flume核心组件
5.1.3Flume环境搭建与部署
5.2Scribe
5.2.1Scribe架构
5.2.2Scribe中的Store
5.2.3Scribe环境搭建与部署
5.3Chukwa
5.3.1Chukwa的设计目标
5.3.2Chukwa架构
5.3.3Chukwa环境搭建与部署
5.4Kafka
5.4.1Kafka架构
5.4.2Kafka存储
5.4.3Kafka的特点
5.4.4Kafka环境搭建与部署
5.5练习题
参考文献
第6章Hadoop与MapReduce
6.1Hadoop平台
6.1.1Hadoop概述
6.1.2Hadoop的发展简史
6.1.3Hadoop的功能和作用
6.1.4HDFS
6.1.5HBase
6.2MapReduce
6.2.1及时代MapReduce(MRv1)
6.2.2MapReduce2.0--Yarn
6.3Hadoop相关生态系统
6.3.1交互式数据查询分析
6.3.2数据收集、转换工具
6.3.3机器学习工具
6.3.4集群管理与监控
6.3.5其他工具
6.4Hadoop应用案例
6.5练习题
参考文献
第7章Spark--大数据统一计算平台
7.1Spark简介
7.1.1Spark
7.1.2BDAS
7.2RDD
7.2.1RDD基本概念
7.2.2RDD示例
7.2.3RDD与分布式共享内存
7.3SparkSQL
7.4MLlib
7.5GraphX
7.6SparkStreaming
7.6.1基本概念
7.6.2编程模型
7.7Spark的安装
7.7.1单机运行Spark
7.7.2使用SparkShell与Spark交互
7.8Shark、Impala、Hive对比
7.9练习题
参考文献
第8章Storm流计算系统
8.1流计算系统
8.1.1流计算系统的特点
8.1.2流计算处理基本流程
8.2Storm流计算框架
8.2.1Storm简介
8.2.2Storm关键术语
8.2.3Storm架构设计
8.3Storm编程实例
8.4Storm应用
8.4.1Storm应用场景
8.4.2Storm应用实例
8.5其他流计算框架
8.6练习题
参考文献
第9章SQL、NoSQL与NewSQL
9.1传统SQL数据库
9.1.1关系模型
9.1.2关系型数据库的优点
9.1.3关系型数据库面临的问题
9.2NoSQL
9.2.1NoSQL与大数据
9.2.2NoSQL理论基础
9.2.3分布式模型
9.2.4NoSQL数据库分类
9.3NewSQL
9.3.1系统分类
9.3.2GoogleSpanner
9.3.3MemSQL
9.3.4VoltDB
9.4练习题
参考文献
第10章大数据与数据挖掘
10.1数据挖掘的主要功能和常用算法
10.1.1数据挖掘的主要功能
10.1.2常用算法
10.2大数据时代的数据挖掘
10.2.1传统数据挖掘解决方案
10.2.2分布式数据挖掘解决方案
10.3数据挖掘相关工具
10.3.1Mahout
10.3.2语言工具--Python
10.4数据挖掘与R语言
10.4.1R语言简介
10.4.2R语言在数据挖掘上的应用
10.5练习题
参考文献
第11章深度学习
11.1深度学习介绍
11.1.1深度学习的概念
11.1.2深度学习的结构
11.1.3从机器学习到深度学习
11.2深度学习基本方法
11.2.1自动编码器
11.2.2稀疏编码
11.3深度学习模型
11.3.1深度置信网络
11.3.2卷积神经网络
11.4深度学习的训练加速
11.4.1GPU加速
11.4.2数据并行
11.4.3模型并行
11.4.4计算集群
11.5深度学习应用
11.5.1Google
11.5.2百度
11.5.3腾讯Mariana
11.6练习题
参考文献
第12章电子商务与社会化网络大数据分析
12.1推荐系统简介
12.1.1推荐系统的评判标准
12.1.2推荐系统的分类
12.1.3在线推荐系统常用算法介绍
12.1.4相关算法知识
12.2计算广告
12.2.1计算广告简介
12.2.2计算广告发展阶段
12.2.3计算广告相关算法
12.2.4计算广告与大数据
12.2.5大数据在计算广告中的应用案例
……
第13章大数据展示与交互技术
第14章大数据安全与隐私
第15章大数据技术发展趋势
第16章知名企业大数据架构简介
参考文献