出版日期:2014-11-1
ISBN:9787111483529
作者:(印) Vignesh Prajapati
页数:180页
作者简介
本书全面而系统地讲解了如何将R语言与Hadoop技术结合并应用于大数据分析,不仅系统且深入地阐释了R与Hadoop集成技术的工具、方法、原则和最佳实践,而且通过大量实践案例深入剖析各种常见问题,能为用户高效利用R语言与Hadoop技术进行大数据处理提供翔实指导。
全书分为四部分,共7章:第一部分(第1~2章)是基础知识,主要讲解R语言以及Hadoop的安装过程、计算原理和基本概念;第二部分(第3~4章)是初级应用,主要讲解RHIPE、RHadoop和streaming三种实现方案;第三部分(第5~6章)是高级实例,主要以RHadoop为技术背景,讲解多个实际应用案例;第四部分(第7章)介绍数据库连接,主要讲解在RHadoop下如何与各类数据库进行连接。
书籍目录
目 录
译者序
前言
审校者简介
致谢
第1章 R和Hadoop入门
1
1.1 安装R
2
1.2 安装RStudio
3
1.3 R语言的功能特征
3
1.3.1 使用R程序包
3
1.3.2 执行数据操作
3
1.3.3 日渐增多的社区支持
4
1.3.4 R语言数据建模
4
1.4 Hadoop的安装
5
1.4.1 不同的Hadoop模式
6
1.4.2 Hadoop的安装步骤
6
1.5 Hadoop的特点
12
1.5.1 HDFS简介
13
1.5.2 MapReduce简介
13
1.6 HDFS和MapReduce架构
14
1.6.1 HDFS架构
14
1.6.2 MapReduce架构
15
1.6.3 通过图示了解HDFS和MapReduce架构
15
1.7 Hadoop的子项目
16
1.8 小结
19
第2章 编写Hadoop MapReduce程序
20
2.1 MapReduce基础概念
20
2.2 Hadoop MapReduce技术简介
22
2.2.1 MapReduce中包含的实体
22
2.2.2 MapReduce中的主要执行进程
23
2.2.3 MapReduce的局限
25
2.2.4 MapReduce 可以解决的问题
26
2.2.5 使用Hadoop编程时用到不同的Java概念
26
2.3 Hadoop MapReduce原理
27
2.3.1 MapReduce对象
27
2.3.2 MapReduce中实现Map阶段的执行单元数目
28
2.3.3 MapReduce中实现Reduce阶段的执行单元数目
28
2.3.4 MapReduce的数据流
28
2.3.5 深入理解HadoopMapReduce
30
2.4 编写Hadoop MapReduce示例程序
32
2.4.1 MapReduce job运行的步骤
33
2.4.2 MapReduce可解决的商业问题
38
2.5 在R环境中编写Hadoop MapReduce程序的方式
39
2.5.1 RHadoop
39
2.5.2 RHIPE
40
2.5.3 Hadoop streaming
40
2.6 小结
40
第3章 集成R和Hadoop
41
3.1 RHIPE
42
3.1.1 安装RHIPE
42
3.1.2 RHIPE架构
44
3.1.3 RHIPE实例
45
3.1.4 RHIPE参考函数
48
3.2 RHadoop
51
3.2.1 RHadoop架构
51
3.2.2 安装RHadoop
52
3.2.3 RHadoop案例
53
3.2.4 RHadoop参考函数
56
3.3 小结
58
第4章 Hadoop Streaming中使用R
59
4.1 Hadoop Streaming基础概念
59
4.2 使用R运行Hadoop streaming
62
4.2.1 MapReduce应用程序基础
63
4.2.2 如何编写MapReduce应用程序
65
4.2.3 如何运行MapReduce应用程序
67
4.2.4 如何浏览MapRecuce应用程序的输出
69
4.2.5 Hadoop MapReduce脚本的基础R函数
70
4.2.6 管理Hadoop MapReduce任务
71
4.3 R语言扩展包HadoopStreaming介绍
72
4.3.1 hsTableReader函数
73
4.3.2 hsKeyValReader函数
75
4.3.3 hasLineReader函数
75
4.3.4 运行Hadoop streaming任务
78
4.3.5 执行Hadoop Streaming任务
79
4.4 小结
79
第5章 利用R和Hadoop学习数据分析
80
5.1 数据分析项目生命周期
80
5.1.1 问题定义
81
5.1.2 设计数据需求
81
5.1.3 数据预处理
81
5.1.4 数据分析
82
5.1.5 数据可视化
82
5.2 数据分析问题
83
5.2.1 展示网页分类
83
5.2.2 计算股市变动频率
92
5.2.3 案例研究:预测推土机售价
98
5.3 小结
107
第6章 应用机器学习做大数据分析
108
6.1 机器学习介绍
108
6.2 有监督机器学习算法
109
6.2.1 线性回归
109
6.2.2 logistic回归
115
6.3 无监督机器学习算法
118
6.4 推荐算法
123
6.4.1 在R中产生推荐商品的步骤
125
6.4.2 使用R和Hadoop产生推荐商品
128
6.5 小结
131
第7章 从各种数据库中导入与导出数据
132
7.1 文件型数据库
134
7.1.1 不同类型的文件
134
7.1.2 安装R包
134
7.1.3 将数据导入R
134
7.1.4 从R导出数据
135
7.2 MySQL
135
7.2.1 安装MySQL
135
7.2.2 安装RMySQL
136
7.2.3 列出数据表及其结构
136
7.2.4 导入数据进R
136
7.2.5 数据操纵
137
7.3 Excel
137
7.3.1 安装Excel
138
7.3.2 导入数据进R
138
7.3.3 R和Excel的数据操纵
138
7.3.4 导出数据到Excel
138
7.4 MongoDB
138
7.4.1 安装MongoDB
139
7.4.2 安装rmongodb
141
7.4.3 导入数据进R
141
7.4.4 数据操纵
142
7.5 SQLite
143
7.5.1 SQLite的特性
143
7.5.2 安装SQLite
144
7.5.3 安装RSQLite
144
7.5.4 将数据导师入R
144
7.5.5 数据操纵
145
7.6 PostgreSQL
145
7.6.1 PostgreSQL的特性
145
7.6.2 安装PostgreSQL
145
7.6.3 安装RPostgreSQL
146
7.6.4 从R导出数据
146
7.7 Hive
147
7.7.1 Hive的特性
147
7.7.2 安装Hive
147
7.7.3 安装RHive
149
7.7.4 RHive操作
149
7.8 HBase
150
7.8.1 HBase的特性
150
7.8.2 安装HBase
151
7.8.3 安装Thrift
152
7.8.4 安装RHBase
153
7.8.5 导入数据进R
153
7.8.6 数据操纵
153
7.9 小结
154
附录 参考资源
155
内容概要
Vignesh Prajapati 资深大数据分析师,现为Pingax公司顾问、Enjay公司软件工程师,精通R、Hadoop、Mahout、Pig、Hive等技术,在机器学习和大数据技术方面拥有丰富经验。目前他专注于利用大数据和云技术为客户提供有价值产品。
译者简介
李明
毕业于沈阳理工大学信息工程学院电子科技与技术系,曾就职于凡客诚品、居然之家等大型电子商务公司,目前就职于优酷土豆网。他的研究兴趣是用R语言进行互联网数据分析/挖掘,撰写过大量有关R语言基础和高级应用的文章,对互联网数据统计系统的R语言实践有较深研究,撰写了《R语言与网站分析》一书。他的个人博客为www.bassary.com。
王威扬
2008年毕业于清华大学航天航空学院,同年获得清华大学经济学双学位,2010年获得芝加哥大学统计学硕士学位。毕业后曾先后任职于芝加哥大学计算机系、文思海辉技术有限公司、京东世纪贸易集团有限公司及互联网初创企业,在科研、证券、银行、电商、O2O行业负责数据仓库建设及数据分析、挖掘工作,同时对高性能计算与开源分布式技术架构有浓厚兴趣。
孙思栋
中南财经政法大学经济学、信息与计算科学双学士,现为清华大学中国应急管理研究基地助理研究员,参与了国家清史编撰委员会文献等3个省部级科研项目,对非结构化大数据处理有深入理解。