华章计算机 + 关注
手机版

《Hadoop与大数据挖掘》一导读

  1. 云栖社区>
  2. 华章计算机>
  3. 博客>
  4. 正文

《Hadoop与大数据挖掘》一导读

华章计算机 2017-06-26 11:08:00 浏览2004 评论0

摘要: 最早提出“大数据”时代到来的是全球知名咨询公司麦肯锡,麦肯锡称:“数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来。”


image

前  言

为什么要写这本书
最早提出“大数据”时代到来的是全球知名咨询公司麦肯锡,麦肯锡称:“数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来。”
早在2012年,大数据(big data)一词已经被广泛提起,人们用它来描述和定义信息爆炸时代产生的海量数据,并命名与之相关的技术发展与创新。那时就有人预计,从2013年至2020年,全球数据规模将增长10倍,每年产生的数据量将由当时的4.4万亿GB,增长至44万亿GB,每两年翻一番。
既然“大数据”浪潮已经来临,那么与之对应的大数据人才呢?在国外,大数据技术发展正如火如荼,各种方便大家学习的资料、教程应有尽有。但是,在国内,这种资料却是有“门槛”的。其一,这类资料是英文的,对于部分人员来说,阅读是有难度的;其二,这些资料对于初学者或在校生来说,在理论理解上也有一些难度,没有充分的动手实践来协助理解大数据相关技术的原理、架构等;其三,在如何应用大数据技术来解决企业实实在在遇到的大数据相关问题方面,没有很好的资料;其四,对于企业用户来说,如何将大数据技术和数据挖掘技术相结合,对企业大量数据进行挖掘,以挖掘出有价值的信息,也是难点。
作为大数据相关技术,Hadoop无疑应用很广泛。Hadoop具有以下优势:高可靠性、高扩展性、高效性、高容错性、低成本、生态系统完善。
一般来说,使用Hadoop相关技术可以解决企业相关大数据应用,特别是结合诸如Mahout、Spark MLlib等技术,不仅可以对企业相关大数据进行基础分析,还能构建挖掘模型,挖掘企业大数据中有价值的信息。
对于学习大数据相关技术的高校师生来说,本书不仅提供了大数据相关技术的基础讲解及原理、架构分析,还针对这些原理,配备有对应的动手实践章节,帮助读者加深对原理、架构的认识。同时,在每个模块结束后,书中会有一个相对独立的企业应用案例,帮助读者巩固学到的大数据技术相关知识。
对于企业用户或大数据挖掘开发者来说,特别是对想要了解如何将大数据技术应用到企业大数据项目中的企业用户或者开发者来说,本书也是一份优秀的参考资料。
本书特色
本书提供了大数据相关技术的简介、原理、实践、企业应用等,针对大数据相关技术,如Hadoop、HBase、Hive、Spark等,都有专业章节进行介绍,并且针对每一模块都有相应的动手实践,能有效加深读者对大数据相关技术原理、技术实践的理解。书中的挖掘实践篇涉及企业在大数据应用中的所有环节,如数据采集、数据预处理、数据挖掘等,通过案例对整个系统的架构进行了详细分析,对读者有一定实践指导作用。
读者可以从“泰迪杯”全国大学生数据挖掘挑战赛网站(http://www.tipdm.org/tj/865.jhtml)免费下载本书配套的全部数据文件及源程序。另外,为方便教师授课,本书还特意提供了建模阶段的过程数据文件、PPT课件,有需要的教师可通过热线电话(40068-40020)、企业QQ(40068-40020)或以下微信公众号咨询获取。
本书适用对象
开设大数据、大数据挖掘相关课程的高校教师和学生
目前国内不少高校将大数据、大数据挖掘引入本科教学中,在计算机、数学、自动化、电子信息、金融等专业开设了大数据技术相关的课程,但目前针对这一课程的相关教材没有统一,或者使用的教材不利于课堂教学。本书提供了大数据相关技术的简介、原理、实践、企业应用等,能有效帮助高校教师教学;帮助学生学习大数据相关技术原理,进行技术实践,为以后工作打下良好基础。
大数据开发人员
书中针对大数据相关技术,如Hadoop、HBase、Hive、Spark等,都有专业章节进行介绍,并且针对每一模块有相应的动手实践,对初级开发人员有较强指导作用。
大数据架构师
挖掘实践篇涉及企业在大数据应用中的所有环节,包括数据采集、数据预处理、数据挖掘等方面,通过案例对整个系统的架构进行了详细分析,对大数据架构师有一定的实践指导作用。
关注大数据挖掘技术的人员
本书不仅包括大数据相关技术的简介及原理分析,还包括大数据相关技术和大数据挖掘相结合的案例分析。对于大数据挖掘技术人员来说,如何应用大数据技术来对大数据进行挖掘是重点和难点,通过学习本书中案例的分析方法,可以将其融入自己的实际工作中。
如何阅读本书
本书主要分为两篇:基础篇和挖掘实战篇。基础篇介绍了大数据相关技术:Hadoop、Hive、HBase、Pig、Spark、Oozie等。针对每个技术都有相应模块与之对应,首先对该技术的概念、内部原理等进行介绍,使读者对该技术有一个由浅入深的理解;其次在对原理的介绍中会配合相应的动手实践,加深对原理的理解。在每个模块的最后,会有1~2个企业案例,主要讲解使用当前模块的技术来解决其中的1~2个问题,这样读者不仅对技术的原理、架构有了较深入的了解,同时,对于如何应用该技术也有了一定认识,从而为以后的工作、学习打下良好基础。挖掘实战篇通过对一个大型的企业应用案例的介绍,充分应用基础篇讲解的大数据技术来解决企业应用中遇到的各种问题。本书配套提供了程序代码及数据,读者可通过上机实验,快速掌握书中所介绍的大数据相关技术,获得使用大数据相关技术进行数据挖掘的基本能力。
第一篇是基础篇(第1~7章)。第1章主要介绍了大数据相关概念,以及大数据相关技术。第2章对Hadoop进行了介绍,包括概念、原理、架构等,通过动手实践案例帮助读者加深对原理的理解。第3章对Hive进行了介绍,重点分析了Hive的架构及如何与Hadoop相结合,同时,引入一个企业案例来分析Hive在企业应用中的地位。第4章对HBase进行了介绍,分析了HDFS与HBase的异同点、HBase架构原理、HBase如何做到支持随机读写等。第5章介绍了Pig,详细分析了Pig的实现原理及应用场景,介绍了Pig Latin,并且通过一个Pig Latin的动手实践案例,加深读者对该脚本的理解。第6章介绍了Spark的基本原理、RDD实现等,并且对Scala进行了简单介绍,使用Scala创建Wordcount程序,在模块的最后使用Spark MLlib完成引入的企业案例中的模型建立环节。第7章介绍了Hadoop工作流Oozie,通过动手实际建立Hadoop MR、Spark、Hive、Pig的工作流,方便理解企业工作流应用。
第二篇是挖掘实战篇(第8章),详细介绍了一个企业级大数据应用项目—法律服务大数据智能推荐系统。通过分析应用背景、构建系统,使读者了解针对系统的每一层应使用什么大数据技术来解决问题。涉及的流程有数据采集、数据预处理、模型构建等,在每一个流程中会进行大数据相关技术实践,运用实际数据来进行分析,使读者切身感受到大数据技术解决大数据企业应用的魅力。
勘误和支持
除封面署名外,参加本书编写工作的还有周龙、焦正升、许国杰、杨坦、肖刚、刘晓勇等。由于作者的水平有限,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。本书内容的更新将及时在“泰迪杯”全国数据挖掘挑战赛网站(www.tipdm.com)上发布。读者可通过作者微信公众号TipDM(微信号:TipDataMining)、TipDM官网(www.tipdm.com)反馈有关问题。也可通过热线电话(40068-40020)或企业QQ(40068-40020)进行在线咨询。
如果你有更多宝贵意见,欢迎发送邮件至邮箱13560356095@qq.com,期待能够得到你的真挚反馈。
致谢
本书编写过程中得到了广大企事业单位科研人员的大力支持,在此谨向中国电力科学研究院、广东电力科学研究院、广西电力科学研究院、华南师范大学、广东工业大学、广东技术师范学院、南京中医药大学、华南理工大学、湖南师范大学、韩山师范学院、中山大学、广州泰迪智能科技有限公司等单位给予支持的专家及师生致以深深的谢意。
在本书的编辑和出版过程中还得到了参与“泰迪杯”全国数据挖掘建模竞赛的众多师生及机械工业出版社杨福川老师、李艺编辑的大力帮助与支持,在此一并表示感谢。

目 录

第一篇 基础篇
第1章  浅谈大数据
1.1  大数据概述
1.2  大数据平台
1.3  本章小结
第2章
2.1  Hadoop概述
2.1.2  Hadoop存储—HDFS
2.1.3  Hadoop计算—MapReduce
2.1.4  Hadoop资源管理—YARN
2.1.5  Hadoop生态系统
2.2  Hadoop配置及IDE配置
2.2.2  环境配置
2.2.3  集群启动关闭与监控
2.2.4  动手实践:一键式Hadoop集群启动关闭
2.2.5  动手实践:Hadoop IDE配置
2.3  Hadoop集群命令
2.3.1  HDFS常用命令hdfs dfs
2.3.2  动手实践:hdfs dfs命令实战
2.3.3  MapReduce常用命令mapred job
2.3.4  YARN常用命令yarn jar
2.3.5  动手实践:运行MapReduce任务
2.4  Hadoop编程开发
2.4.1  HDFS Java API操作
2.4.2  MapReduce原理
2.4.3  动手实践:编写Word Count程序并打包运行
2.4.4  MapReduce组件分析与编程实践
2.5  K-Means算法原理及Hadoop MapReduce实现
2.5.2  动手实践:K-Means算法实现
2.5.3  Hadoop K-Means算法实现思路
2.5.4  Hadoop K-Means编程实现
2.6  TF-IDF算法原理及Hadoop MapReduce实现
2.6.2  Hadoop TF-IDF编程思路
2.6.3  Hadoop TF-IDF编程实现
2.7  [本章小结](https://yq.aliyun.com/articles/110295
第3章 大数据查询—Hive
3.1 Hive概述
3.1.1 Hive体系架构
3.1.2 Hive数据类型
3.1.3 Hive安装
3.1.4 动手实践:Hive安装配置
3.1.5 动手实践:HiveQL基础—SQL
3.2 HiveQL语句
3.2.1 数据库操作
3.2.2 Hive表定义
3.2.3 数据导入
3.2.4 数据导出
3.2.5 HiveQL查询
3.3 动手实践:基于Hive的学生信息查询
3.4 基于Hive的航空公司客户价值数据预处理及分析
3.4.1 背景与挖掘目标
3.4.2 分析方法与过程
3.5 本章小结
第4章 大数据快速读写—HBase
4.1 HBase概述
4.2 配置HBase集群
4.2.1 Zookeeper简介及配置
4.2.2 配置HBase
4.2.3 动手实践:HBase安装及运行
4.2.4 动手实践:ZooKeeper获取HBase状态
4.3 HBase原理与架构组件
4.3.1 HBase架构与组件
4.3.2 HBase数据模型
4.3.3 读取/写入HBase数据
4.3.4 RowKey设计原则
4.3.5 动手实践:HBase数据模型验证
4.4 HBase Shell操作
4.4.1 HBase常用Shell命令
4.4.2 动手实践:HBase Shell操作
4.5 Java API &MapReduce与HBase交互
4.5.1 搭建HBase开发环境
4.5.2 使用Java API操作HBase表
4.5.3 动手实践:HBase Java API使用
4.5.4 MapReduce与HBase交互
4.5.5 动手实践:HBase表导入导出
4.6 基于HBase的冠字号查询系统
4.6.1 案例背景
4.6.2 功能指标
4.6.3 系统设计
4.6.4 动手实践:构建基于HBase的冠字号查询系统
4.7 本章小结
第5章 大数据处理—Pig
5.1 Pig概述
5.1.1 Pig Latin简介
5.1.2 Pig数据类型
5.1.3 Pig与Hive比较
5.2 配置运行Pig
5.2.1 Pig配置
5.2.2 Pig运行模式
5.3 常用Pig Latin操作
5.3.1 数据加载
5.3.2 数据存储
5.3.3 Pig参数替换
5.3.4 数据转换
5.4 综合实践
5.4.1 动手实践:访问统计信息数据处理
5.4.2 动手实践:股票交易数据处理
5.5 本章小结
第6章 大数据快速运算与挖掘—Spark
6.1 Spark概述
6.2 Spark安装集群
6.2.1 3种运行模式
6.2.2 动手实践:配置Spark独立集群
6.2.3 3种运行模式实例
6.2.4 动手实践:Spark Streaming实时日志统计
6.2.5 动手实践:Spark开发环境—Intellij IDEA配置
6.3 Spark架构与核心原理
6.3.1 Spark架构
6.3.2 RDD原理
6.3.3 深入理解Spark核心原理
6.4 Spark编程技巧
6.4.1 Scala基础
6.4.2 Spark基础编程
6.5 如何学习Spark MLlib
6.5.1 确定应用
6.5.2 ALS算法直观描述
6.5.3 编程实现
6.5.4 问题解决及模型调优
6.6 动手实践:基于Spark ALS电影推荐系统
6.6.1 动手实践:生成算法包
6.6.2 动手实践:完善推荐系统
6.7 本章小结
第7章 大数据工作流—Oozie
7.1 Oozie简介
7.2 编译配置并运行Oozie
7.2.1 动手实践:编译Oozie
7.2.2 动手实践:Oozie Server/client配置
7.3 Oozie WorkFlow实践
7.3.1 定义及提交工作流
7.3.2 动手实践:MapReduce Work-Flow定义及调度
7.3.3 动手实践:Pig WorkFlow定义及调度
7.3.4 动手实践:Hive WorkFlow定义及调度
7.3.5 动手实践:Spark WorkFlow定义及调度
7.3.6 动手实践:Spark On Yarn定义及调度
7.4 Oozie Coordinator实践
7.4.1 动手实践:基于时间调度
7.4.2 动手实践:基于数据有效性调度
7.5 本章小结
第二篇 挖掘实战篇
第8章 法律服务大数据智能推荐
8.1 背景
8.2 目标
8.3 系统架构及流程
8.4 分析过程及实现
8.4.1 数据传输
8.4.2 数据传输:动手实践
8.4.3 数据探索分析
8.4.4 数据预处理
8.4.5 模型构建
8.5 构建法律服务大数据智能推荐系统
8.5.1 动手实践:构建推荐系统JavaEE
8.5.2 动手实践:Oozie工作流任务
8.6 本章小结

【云栖快讯】阿里巴巴小程序繁星计划,20亿补贴第一弹云应用免费申请,限量从速!  详情请点击

网友评论