基于Hadoop与Spark的大数据开发实战(txt+pdf+epub+mobi电子书下载)


发布时间:2020-06-08 19:02:17

点击下载

作者:肖睿 丁科 吴刚山

出版社:人民邮电出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

基于Hadoop与Spark的大数据开发实战

基于Hadoop与Spark的大数据开发实战试读:

前言

本书以Hadoop和Spark为核心,阐述了基于这两种通用大数据处理平台的应用开发技术。

在Hadoop生态圈中,从HDFS初识分布式存储系统;以Map Reduce详解分步式计算的步骤;利用HBase分析适合非结构化数据存储的分布式数据库;利用Hive分析将SQL查询转化为分布式计算的过程;并结合项目案例“音乐排行榜”练习Hadoop核心技能点的运用;同时,介绍了几种离线处理系统中常用的辅助工具。

在Spark生态圈中,从Scala开始介绍多范式编程;并从Spark Core、Spark SQL、Spark Streaming三个方面来分析对比Hadoop生态圈中的分布式计算、Hive、流式计算的可替换方案和它们各自的优势。

技能训练

掌握Hadoop运行环境的部署。

掌握大数据文件在HDFS中的存储。

掌握Map Reduce编程模型以及Map Reduce应用开发方法。

掌握YARN的运行原理。

掌握HBase数据库的操作方法。

掌握Hive数据仓库的操作方法。

掌握常用离线处理辅助系统Sqoop和Azkaban的用法。

掌握Scala基本编程方法。

掌握Spark RDD创建与操作。

掌握Data Frame编程方法。

掌握Spark Streaming对Socket、HDFS数据进行流式处理的方法。

了解Spark Streaming与Flume、Kafka的整合。

设计思路

本书共12章,内容包括Hadoop初体验、Hadoop分布式文件系统、Hadoop分布式计算框架、Hadoop新特性、Hadoop分布式数据库、Hadoop综合实战——音乐排行榜、数据仓库Hive、大数据离线处理辅助系统、Spark基础、Spark Core、Spark SQL和Spark Streaming。具体内容安排如下。

第1章是对Hadoop的总体概述,介绍大数据基本概念、Hadoop生态圈、Hadoop与大数据的关系以及Hadoop安装部署的详细步骤。

第2章是对HDFS的介绍,主要包括HDFS的体系结构、Shell操作以及通过Java API实现访问。

第3章是对Map Reduce分布式计算框架的讲解,包括Map Reduce的编程模型、编写和运行Map Reduce程序。

第4章是对Hadoop新的资源调度框架YARN及Hadoop新特性的讲解,以及如何实现Hadoop高可用集群。

第5章是对HBase数据库的讲解,介绍HBase的安装及其使用方法。

第6章通过案例“音乐排行榜”的实现,对前面各章的技能点做一个阶段回顾与总结,介绍如何通过HDFS、Map Reduce与HBase的结合使用完成Hadoop离线批处理应用开发。

第7章是对Hive的讲解,介绍如何使用类似于SQL查询的方式来执行Map Reduce计算。

第8章介绍Sqoop、Azkaban这两种在开发离线处理系统时常用的辅助工具。

第9章是对Spark的基本介绍,包括Spark的安装与运行、Spark的开发语言Scala。

第10章是对Spark的核心RDD的详解,介绍Spark Core的编程模型以及Spark应用程序的开发。

第11章是对Spark SQL的详解,包括常用的SQL on Hadoop框架、Spark SQL的编程方法以及Spark SQL对多种外部数据源的操作。

第12章是对Spark Streaming的详解,包括Spark Streaming核心概念、常用的流处理系统,以及使用Spark Streaming进行流处理应用的开发。

章节导读

技能目标:本章要达成的学习目标,可以作为检验学习效果的标准。

本章任务:本章要完成的学习内容及要求,通过任务描述引导读者思考,进而引导读者全面了解章节内容。

案例代码:通过代码让读者掌握如何应用本章讲解的技能点。

本章总结:本章内容的概括和总结。

本章练习:针对本章学习内容的补充性练习,用于加强对本章知识的理解和运用。

本书由课工场大数据开发教研团队编写,参与编写的还有丁科、吴刚山、鄢长青、张琪等院校老师。由于编者水平有限,书中不妥或错误之处在所难免,殷切希望广大读者批评指正!编者2017年12月关于引用作品的版权声明

为了方便读者学习,促进知识传播,本书选用了一些知名网站的相关内容作为学习案例。为了尊重这些内容所有者的权利,特此声明,凡在书中涉及的版权、著作权、商标权等权益均属于原作品版权人、著作权人、商标权人。

为了维护原作品相关权益人的权益,现对本书选用的主要作品的出处给予说明(排名不分先后)。

以上列表并未全部列出本书所选用的作品。在此,本书创作团队衷心感谢所有原作品的相关版权权益人及所属公司对职业教育的大力支持!第1章Hadoop初体验技能目标

了解大数据和Hadoop是什么

掌握Hadoop的核心构成

了解Hadoop生态圈

掌握虚拟机、CentOS和Hadoop的安装本章任务

学习本章,需要完成以下3个工作任务。记录学习过程中遇到的问题,通过自己的努力或访问kgc.cn解决。

任务1:初识大数据

了解大数据的基本概念和基本特征,以及大数据带给企业的挑战有哪些。

任务2:初识Hadoop

了解Hadoop是什么,掌握Hadoop的核心构成,了解Hadoop生态圈中各个组件的功能。

任务3:安装Hadoop平台

掌握虚拟机、CentOS、Hadoop的安装。任务1 初识大数据

关键步骤如下。

了解大数据是什么。

了解大数据的特征。

了解大数据带给企业哪些方面的挑战。1.1.1 大数据基本概念

1.大数据概述

相信大家经常会在各种场合听到“大数据”这个词,被誉为数据仓库之父的Bill Inmon早在20世纪90年代就将大数据挂在嘴边了。那么到底什么是大数据呢?这是我们在本章要了解的。

我们现在生活的时代是一个数据时代,近年来随着互联网的高速发展,每分每秒都在产生数据,那么产生的这些数据如何进行存储和相应的分析处理呢?各大公司纷纷研发和采用一批新技术来应对日益庞大的数据处理需求,主要包括分布式文件系统、分布式计算框架等,这些都是我们需要学习和掌握的。《互联网周刊》对大数据的定义为:“大数据”的概念远不止大量的数据(TB)和处理大量数据的技术,或者所谓的“4个V”之类的简单概念,而是涵盖了人们在大规模数据的基础上可以做的事情,这些事情在小规模数据的基础上是无法实现的。换句话说,大数据让我们以一种前所未有的方式,通过对海量数据进行分析,来获得有巨大价值的产品和服务,或深刻的洞见,最终形成变革之力。

2.大数据特征(1)数据量大(Volume)

随着网络技术的发展和普及,每时每刻都会产生大量的数据。在我们的日常生活中,比如说在电商网站购物、在直播平台看直播、在线阅读新闻等,都会产生很多的日志,汇在一起每分每秒产生的数据量将是非常巨大的。(2)类型繁多(Variety)

大数据中最常见的类型是日志,除了日志之外常见的还有音频、视频、图片等。由于不同类型的数据没有明显的模式,呈现出多样性的特点,这对于数据的处理要求也会更高。(3)价值密度低(Value)

现阶段每时每刻产生的数据量已经很大了,如何从大量的日志中提取出我们需要的、对我们有价值的信息才是最重要的。数据量越来越大,里面必然会存在着大量与我们所需不相干的信息,如何更迅速地完成数据的价值提炼,是大数据时代有待解决的问题。(4)处理速度快(Velocity)

传统的离线处理的时效性不高,换句话说时延是非常高的。随着时代的发展,对时效性的要求越来越高,需要实时对产生的数据进行分析处理,而不是采用原来的批处理方式。1.1.2 大数据带来的挑战

1.对现有数据库的挑战

随着互联网时代的到来,现在产生的数据如果想存储在传统数据库里是不太现实的,即便传统的数据库有集群的概念,仍然不能处理TB量级的数据。而且现阶段产生的数据类型很多,有些类型的数据是没办法使用结构化数据查询语言(SQL)来处理的。

2.实时性的技术挑战

我们知道数据产生的价值会随着时间的流逝而大大降低,所以当数据产生后我们要尽可能快地进行处理。最典型的就是电商网站的推荐系统,早些年的推荐系统都是基于批处理来进行的,比如每隔半天或者一天进行计算然后再进行推荐,这样就会有很大的延时,对于订单的转换而言虽然有效果但不是很好。如果能做到实时推荐,那么肯定能大大提高公司的营业收入。

传统的离线批处理对处理时间的要求并不高。而实时处理的要求是区别大数据应用和传统数据库技术或者离线技术的关键差别之一。

3.对数据中心、运维团队的挑战

如今每天产生的数据量正呈爆炸式增长,那么如此多的数据该怎样进行高效的收集、存储、计算都是数据中心要面临的一个非常棘手的问题。而处理快速增长的数据量所需要的机器也日益增多,那么对于运维团队来说压力也会增加。任务2 初识Hadoop

关键步骤如下。

认知Hadoop是什么。

了解Hadoop的发展史。

掌握Hadoop中的核心组件及功能。

了解Hadoop常用的发行版本。

了解Hadoop生态圈中常用的处理框架。

了解大数据在企业中的应用案例。

初识Hadoop1.2.1 Hadoop概述

1.什么是Hadoop

Hadoop是Apache基金会旗下的一个分布式系统基础架构。主要包括分布式文件系统HDFS(Hadoop Distributed File System)、分布式计算系统Map Reduce和分布式资源管理系统YARN。Hadoop使用户可以在不了解分布式系统底层细节的情况下,开发分布式程序并充分利用集群的分布式能力进行运算和存储。以Apache Hadoop为生态圈的框架是目前分析海量数据的首选。

针对任务1中描述的大数据,我们该如何对这些数据进行分析或者提取出我们需要的有价值的信息呢?我们可以采用Hadoop及其生态圈提供的分布式存储和分布式计算的功能来完成。

2.Hadoop发展史(1)2002年,Doug Cutting团队开发了网络搜索引擎Nutch,这就是Hadoop的前身。(2)2003——2004年,随着Google两篇论文的发表诞生了GFS和Map Reduce。(3)2006年,为致力于Hadoop技术的进一步发展,Doug Cutting加入Yahoo!。(4)2008年1月,Hadoop成为Apache顶级项目,并在同年7月打破最快排序1TB数据的世界纪录。(5)2008年9月,Hive成为Hadoop子项目。(6)2009年3月,Cloudera推出CDH。(7)2011年12月,发布1.0.0版本,标志着Hadoop已经初具生产规模。(8)2013年10月,发布2.2.0版本,Hadoop正式进入2.x时代。(9)2014年,先后发布Hadoop2.3.0、Hadoop2.4.0、Hadoop2.5.0和Hadoop2.6.0。(10)2015年,发布Hadoop2.7.0。(11)2016年,发布Hadoop3.0-alpha版本,预示着Hadoop进入3.x时代。

3.Hadoop核心构成

Hadoop框架主要包括三大部分:分布式文件系统、分布式计算系统、资源管理系统。(1)分布式文件系统HDFS

源自Google发表于2003年10月的GFS论文,HDFS是GFS的克隆版。

Hadoop分布式文件系统(HDFS)适用于大数据场景的数据存储,因为HDFS提供了高可靠性(主要通过多副本来实现)、高扩展性(通过添加机器来达到线性扩展)和高吞吐率的数据存储服务。按照官方的说法,HDFS被设计成能够运行在通用硬件上的分布式文件系统,所以我们的Hadoop集群可以部署在普通的机器上,而不需要部署在价格昂贵的小型机或者其他机器上,能够大大减少公司的运营成本。

HDFS的基本原理是将数据文件以指定的块大小拆分成数据块,并将数据块以副本的方式存储到多台机器上,即使某个节点出现故障,该节点上存储的数据块副本丢失,但是在其他节点上还有对应的数据副本,所以在HDFS中即使某个节点出现问题也不会造成数据的丢失(前提是你的Hadoop集群的副本系数大于1)。HDFS将数据文件的切分、容错、负载均衡等功能透明化(用户是感知不到整个过程的,只知道上传了一个文件到HDFS上,有关数据切分、存储在哪些机器上是感知不到的,非常易用)。我们可将HDFS看成一个容量巨大、具有高容错性的磁盘,在使用的时候完全可以当作普通的本地磁盘使用。所以说HDFS是适合于海量数据的可靠性存储。(2)分布式计算系统Map Reduce

Map Reduce是一个编程模型,用以进行大数据量的计算。Map Reduce的名字源于这个模型中的两项核心操作:Map(映射)和Reduce(归纳)。Map Reduce是一种简化应用程序开发的编程模型,能让没有多少并行应用开发经验的开发人员也可以快速地学会并行应用的开发,而不需要去关注并行计算中的一些底层问题,只要按照Map Reduce API的编程模型实现相应业务逻辑的开发即可。

一个Map Reduce作业通常会把输入的数据集切分为若干独立的数据块,由map任务以并行的方式处理它们,对map的输出先进行排序,然后再把结果输入reduce任务,由reduce任务来完成最终的统一处理。通常Map Reduce作业的输入和输出都是使用Hadoop分布式文件系统(HDFS)进行存储,换句话说,就是Map Reduce框架处理数据的输入源和输出目的地的大部分场景都是存储在HDFS上的。

在部署Hadoop集群时,通常是将计算节点和存储节点部署在相同的节点之上,这样做的好处是允许计算框架在进行任务调度时,可以将作业优先调度到那些已经存有数据的节点上进行数据的计算,使整个集群的网络带宽被非常高效地利用,这就是大数据中非常有名的一句话“移动计算而不是移动数据”。(3)资源管理系统YARN

YARN的基本思想是将Hadoop1.x中Map Reduce架构中的Job Tracker的资源管理和作业调度监控功能进行分离,解决了在Hadoop1.x中只能运行Map Reduce框架的限制。

YARN是随着Hadoop的不断发展而催生的新框架,全称是Yet Another Resource Negotiator,是一个通用资源管理系统,可为运行在YARN之上的分布式应用程序提供统一的资源管理和调度。YARN的引入为Hadoop集群在利用率、资源统一管理和数据共享等方面带来了很大好处,而且在YARN之上还可运行各种不同类型的作业,比如:Map Reduce、Spark、Tez等不同的计算框架。

4.为什么很多公司选择Hadoop作为大数据平台的解决方案(1)Hadoop源代码开放。(2)社区活跃、参与者众多(这是我们选择某一项框架的很重要的原因,试想如果社区都不活跃,那么当我们在工作中遇到各种问题时,如何去解决)。(3)涉及大数据分布式存储和计算的各个场景。(4)发展了十余年,已得到企业界的验证。

5.Hadoop发行版本

Hadoop的发行版除了由社区维护的 Apache Hadoop之外,Cloudera、Hortonworks、Map R等都提供了自己的商业版。商业版主要是提供对各项服务的支持(高级功能要收取一定的费用),这对一些研发能力不是太强的企业来说是非常有利的,公司只要出一定的费用就能使用到一些高级功能。每个发行版都有自己的一些特点,这里对使用最多的CDH和HDP发行版的特点做简单介绍。(1)Cloudera CDH

Cloudera CDH版本的Hadoop是现在国内公司使用最多的。

优点:Cloudera Manager(简称CM)采取“小白”式安装,配置简单、升级方便,资源分配设置方便,非常利于整合Impala,而且文档写得很好,与Spark的整合力度也非常好。在CM的基础之上,我们通过页面就能完成对Hadoop生态圈各种环境的安装、配置和升级。

缺点:CM不开源,Hadoop的功能和社区版有些出入。(2)Hortonworks HDP

优点:原装Hadoop、纯开源,版本和社区版一致,支持Tez,集成开源监控方案Ganglia和Nagios。

缺点:安装、升级、添加、删除节点比较麻烦。1.2.2 Hadoop生态圈

1.概述

当下Hadoop已经成长为一个庞大的体系,只要和海量数据相关的,没有哪个领域能缺少Hadoop的身影。

狭义的Hadoop:是一个适合大数据分布式存储和分布式计算的平台,包括HDFS、Map Reduce和YARN。

广义的Hadoop:指以Hadoop为基础的生态圈,是一个很庞大的体系,Hadoop只是其中最重要、最基础的一部分;生态圈中的每个子系统只负责解决某一个特定的问题域(甚至可能更窄),它并不是一个全能系统,而是多个小而精的系统。Hadoop生态圈的主要构成如图1.1所示。图1.1 Hadoop生态圈

2.HDFS

Hadoop生态圈的基本组成部分是Hadoop分布式文件系统(HDFS)。大数据处理框架如Map Reduce或者Spark等要处理的数据源大部分都是存储在HDFS之上,Hive或者HBase等框架的数据通常情况下也是存储在HDFS之上。简而言之,HDFS为大数据的存储提供了保障。

3.Map Reduce

Map Reduce是一个分布式、并行处理的编程模型。开发人员只需编写Hadoop的Map Reduce作业就能使用存储在HDFS中的数据来完成相应的数据处理功能。

4.YARN

YARN是Hadoop2.x之后对Hadoop1.x之前Job Tracker和Task Tracker模型进行优化而诞生的,主要负责整个系统的资源管理和调度,而且在YARN之上能运行各种不同类型(Map Reduce、Tez、Spark)的执行框架。

5.HBase

HBase是一个建立在HDFS之上的面向列的数据库,用于快速读/写大量数据。HBase使用Zoo Keeper进行管理,以确保所有组件都能正常运行。HBase保障查询速度的一个关键因素就是其Row Key设计得是否合理,这点需要重点关注。

6.Zoo Keeper

Zoo Keeper是分布式协调服务的框架。Hadoop的许多组件都依赖于Zoo Keeper,比如HDFS Name Node HA的自动切换、HBase的高可用,以及Spark Standalone模式Master的HA机制都是通过Zoo Keeper来实现的。

7.Hive

Hive让不熟悉Map Reduce的开发人员能编写数据查询语句(SQL语句)来对大数据进行统计分析操作。Hive的执行原理就是将SQL语句翻译为Map Reduce作业,并提交到Hadoop集群上运行。Hive框架一诞生就受到了很多熟悉SQL人员的追捧,因为只需要写SQL语句,而不需要面向Map Reduce编程API进行相应代码的开发,大大降低了学习的门槛,同时也提升了开发的效率。

8.Pig

Pig是一个用于并行计算的高级数据流语言和执行框架,有一套和SQL类似的执行语句,处理的对象是HDFS上的文件。Pig的数据处理语言采取数据流方式,一步一步地进行处理(该框架简单了解即可,近些年在生产上使用得并不是太多)。

9.Sqoop

Sqoop是一个用于在关系数据库、数据仓库(Hive)和Hadoop之间转移数据的框架。可以借助Sqoop完成关系型数据库到HDFS、Hive、HBase等Hadoop生态圈中框架的数据导入导出操作,其底层也是通过Map Reduce作业来实现的。

10.Flume

Flume是由Cloudera提供的一个分布式、高可靠、高可用的服务,是用于分布式的海量日志的高效收集、聚合、移动/传输系统的框架;Flume是一个基于流式数据的非常简单的(只需要一个配置文件)、灵活的、健壮的、容错的架构。

11.Oozie

Oozie是一个工作流调度引擎,在Oozie上可以执行Map Reduce、Hive、Spark等不同类型的单一或者具有依赖性(后一个作业的执行依赖于前一个或者多个作业的成功执行)的作业。可以使用Cloudera Manager中的HUE子项目在页面上对Oozie进行配置和管理。类似的在大数据中使用的工作流调度引擎还有Azkaban,后续章节会详细介绍。

12.Mahout

Mahout是一个机器学习和数据挖掘库,它提供的Map Reduce包含很多实现,包括聚类算法、回归测试、统计建模。1.2.3 Hadoop应用案例

1.大数据在华数传媒的应用

当下大数据之热使得技术界有关Hadoop的话题讨论得热火朝天。但在日常工作中,企业往往还是遵循既有模式,对于Hadoop到底能否真正有益于企业的应用依然心存顾虑。Hadoop是不是很年轻?这个开源的事物能否符合公司业务级的严谨要求?有没有企业真的应用过?一系列问题萦绕在人们心头。这完全可以理解,毕竟任何一个新生事物出来人们都要有一个接受过程。

对于Hadoop,其实这些都不是问题。专业人士都知道,Hadoop已发展了十余年,这对于一个实用技术的稳定发展已足够长。事实上,虽然“大数据”一词才出来两三年,但它实际所指的海量的、多类型的数据现象早已有了,不但在互联网领域,更在工业、商业、通信、金融、传媒等领域存在久远。比如,生产线上巨量传感器数据的接收与分析、通信系统全程全网的实时日志文件采集与分析、医疗系统密集数据采集与分析等,所有这些都需要新型的数据处理技术来支撑。Hadoop在这些领域突显了强大的竞争力,并在国内外的相关实践中获得广泛应用。

2013年,华数传媒的大数据系统完成了从无到有的基础建设,实现了基本应用。然而,系统仍面临很多挑战:数据量增加带来的服务性能压力、数据分析无法满足高时效性要求、业务支撑功能无法满足复杂的商用需求、对网络和服务器质量等数据分析仍为空白等。为此,华数传媒亟需解决如下问题。(1)数据采集、存储和转发。通过大数据技术满足海量、多来源、多样性数据的存储、管理要求,支持平台硬件的线性扩展,提供快速实时的数据分析结果,并迅速作用于业务。(2)个性化用户推荐。不仅限于数据本身的分析和决策价值,通过构建在大数据平台之上的整合业务能力,还能为用户提供融合、个性化的内容服务。(3)从内容传输到内容制造。使用大数据挖掘技术可先于观众知道他们的需求,预知将受到追捧的电视节目。另外,通过观众对演员、情节、基调、类型等元数据的标签化,来了解受众偏好,从而进行分析观测,为后续影视制作的内容开发等做好准备。(4)使用大数据平台提供基于全量数据的实时榜单。从时间(小时/天/周)、用户等维度,对点播节目、直播节目、节目类别、搜索关键词等进行排名分析、同比环比分析、趋势分析等。地区风向标主要从城市和时间等维度分析点播排行、剧集排行、分类排行、热搜排行及用户数量的变化。另外,从时间、频道、影片类型、剧集等维度,根据在看数量、新增数量、结束观看数量、完整看完数量等指标分析用户走向。(5)新媒体指数分析。通过对用户行为进行分析获取很多的隐性指标,从侧面反映用户对业务的认可度、用户的使用行为习惯等。在此基础之上,大数据分析可帮助华数传媒构建规范的指标分析和衡量体系,为业务运营提供更加强有力的指导。(6)智能推荐。运用星环科技大数据基础架构,通过对用户行为数据的采集分析,进行精准画像;使用智能推荐引擎,实现信息的个性化推荐(TV屏、手机、PC)和个性化营销(个性化广告、丰富产品组合、市场分析)。

基于可持续扩展和优化的智能推荐算法,以及大数据带来的实时数据交互能力,为每一个用户量身定制的推荐节目极大地提高了产品的到达率,增强了用户的忠诚度。

2.大数据在全球最大超市沃尔玛的应用

沃尔玛应用大数据技术分析顾客的商品搜索行为,找出超越竞争对手的商机。

全球最大连锁超市沃尔玛虽然十年前就投入了在线电子商务,但在线销售的营业收入远远落后于亚马逊。后来,沃尔玛采用Hadoop来分析顾客搜索商品的行为,以及用户通过搜索引擎找到沃尔玛网站的关键词,再利用这些关键词的分析结果发掘顾客需求,以规划下一季商品的促销策略,沃尔玛还打算分析顾客在Facebook、Twitter等社交网站上对商品的讨论,甚至沃尔玛能比父亲更快知道女儿怀孕的消息,并且主动寄送相关商品的促销邮件,期望能比竞争对手提前一步发现顾客需求。

3.大数据在全球最大拍卖网站eBay的应用

eBay用Hadoop拆解非结构性巨量数据,降低数据仓储负载。eBay用Hadoop来分析买卖双方在网站上的行为。eBay拥有全世界最大的数据仓储系统,每天增加的数据量有50TB,光是存储就是一大挑战,更何况要分析这些数据。

eBay是全球最大的拍卖网站,8千万名用户每天产生的50TB数据量,相当于5天就增加了1座美国国会图书馆的数据量。

eBay分析平台高级总监Oliver Ratzesberger也坦言,大数据分析面临的最大挑战就是要同时处理结构化以及非结构化的数据。eBay正是利用Hadoop来解决了这一难题。

eBay在5年多前就另外设置了一个软硬件整合的平台Singularity,并搭配压缩技术来解决结构化数据和半结构化数据分析问题,3年前更在这个平台上整合了Hadoop来处理非结构化数据,以及进行数据预处理,将大块结构化和非结构化数据拆解成小型数据,再放入数据仓储系统的数据模型中进行分析,以加快分析速度,也减轻数据仓储系统的分析负载。任务3 安装Hadoop平台

关键步骤如下。

虚拟机安装。

CentOS安装。

Hadoop伪分布式环境搭建。1.3.1 安装虚拟机

1.虚拟机概述

虚拟机软件使你可以在一台机器上同时运行两个或更多个Windows、Linux系统。它可以模拟一个标准的PC环境,这个环境和真实的计算机一样,也有芯片组、CPU、内存、显卡、声卡、网卡、软驱、硬盘、光驱、串口、并口、USB控制器等。

常用的虚拟机软件:(1)VMware Workstation(本书采用该软件,版本可以任意选择,区别不大)。(2)Virtual Box。

2.VMware安装(1)点击安装文件后启动界面,欢迎界面如图1.2所示。图1.2 安装VMware——欢迎界面(2)点击“下一步”按钮,界面如图1.3所示。图1.3 安装VMware——接受安装许可(3)选择“我接受许可协议中的条款”后点击“下一步”按钮,点击“自定义”按钮,如图1.4所示。图1.4 安装VMware——自定义安装(4)更改安装位置和选择安装功能后如图1.5所示。图1.5 安装VMware——选择安装目录(5)点击“下一步”按钮后如图1.6所示。(6)勾选“桌面”和“开始菜单程序文件夹”复选框后点击“下一步”按钮,如图1.7所示。(7)点击“继续”按钮,界面如图1.8所示。(8)“安装向导完成”界面如图1.9所示。图1.6 安装VMware——安装组件图1.7 安装VMware——选择创建快捷方式图1.8 安装VMware——继续安装图1.9 安装VMware——安装完成1.3.2 安装Linux系统

1.Linux概述

Linux是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的免费使用和自由传播的类UNIX操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议,它支持32位和64位硬件。Linux继承了UNIX以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux操作系统诞生于1991年10月5日(这是其第一次正式对外公布的时间)。Linux可安装在手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机等各种设备中。

严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核并且使用GNU 工程各种工具和数据库的操作系统。

Linux是一种自由和开放源码的系统,并有GPL授权,全世界的任何人都可以对其源代码进行修改然后发布使用,所以存在着许多不同的Linux版本,但它们都使用了Linux内核。所以Linux存在很多的变种以及版本。(1)Ubuntu:2004年9月发布,最为流行的桌面Linux发行版;个人应用比较多,社区力量很庞大。(2)Red Hat:使用最广,性能稳定;商业版。(3)CentOS:2003年底推出,RHEL的重新编译版,免费;服务器发行版;本书将采用该版本。

为什么选择CentOS?(1)主流:目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是Red Hat或者CentOS。(2)免费:Red Hat和CentOS差别不大。CentOS是一个基于Red Hat Linux提供的可自由使用源代码的企业级Linux发行版。(3)更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像Red Hat那样需要花钱购买支持服务。

2.CentOS安装(1)首先安装VMware Workstation,安装过程参见VMware安装。(2)点击【文件】/【新建虚拟机】或直接点击【创建新的虚拟机】图标,如图1.10所示。图1.10 安装CentOS——新建虚拟机(3)在图1.11中选择“典型(推荐)”,点击“下一步”按钮。图1.11 安装CentOS——选择典型方式安装(4)在图1.12中选择“稍后安装操作系统”。图1.12 安装CentOS——选择稍后安装操作系统(5)在图1.13中选择操作系统和版本。图1.13 安装CentOS——选择Linux以及64位系统(6)在图1.14中输入虚拟机名称和安装路径。图1.14 安装CentOS——虚拟机名称和安装路径(7)在图1.15中设置磁盘大小。图1.15 安装CentOS——选择磁盘占用空间(8)在图1.16中自定义硬件。图1.16 安装CentOS——自定义硬件(9)在图1.17中选择CentOS安装镜像文件。图1.17 安装CentOS——选择CentOS的镜像文件(10)在图1.18中点击“完成”按钮。图1.18 安装CentOS——完成(11)在图1.19中启动虚拟机。图1.19 安装CentOS——启动(12)在图1.20中选择第一项,安装全新操作系统或升级现有操作系统。图1.20 安装CentOS——选择安装或者更新系统(13)在图1.21中按Tab键选择Skip,退出检测。图1.21 安装CentOS——选择Skip(14)在图1.22中点击Next按钮。图1.22 安装CentOS——下一步(15)在图1.23中选择语言,这里选择的是中文(简体)。图1.23 安装CentOS——选择语言(16)在图1.24中选择键盘样式。图1.24 安装CentOS——选择键盘样式(17)在图1.25中选择存储设备。图1.25 安装CentOS——选择存储设备

如果以前安装过虚拟机,会出现图1.26所示的警告,选择“是,忽略所有数据”。图1.26 安装CentOS——忽略所有数据继续下一步(18)在图1.27中输入主机名。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载