03Linux与Hadoop操作实验
1.实验目的
• 为后续上机实验做准备,熟悉常用的Linux操作和Hadoop操作。
2.实验平台
操作系统:Linux
Hadoop版本:2.7.1
3.实验内容和要求
(一)熟悉常用的Linux操作
请按要求上机实践如下linux基本命令。
cd命令:切换目录
(1) 切换到目录 /usr/local
cd usr/local
(2)去到目前的上层目录
cd ..
(3)回到自己的主文件夹
Cd ~
ls命令:查看文件与目录
ls
(4)查看目录/usr下所有的文件
ls -al
mkdir命令:新建新目录
(5)进入/tmp目录,创建一个名为a的目录,并查看有多少目录存在
cd /tmp
mkdir a
ls -al
(6)创建目录a1/a2/a3/a4
mkdir -p a1/a2/a3/a4
ls -a
rmdir命令:删除空的目录
(7)将上例创建的目录a(/tmp下面)删除
rmdir a
(8)删除目录a1/a2/a3/a4,查看有多少目录存在
cp命令:复制文件或目录
(9)将主文件夹下的.bashrc复制到/usr下,命名为bashrc1
(10)在/tmp下新建目录test,再复制这个目录内容到/usr
mv命令:移动文件与目录,或更名
(11)将上例文件bashrc1移动到目录/usr/test
(12)将上例test目录重命名为test2
rm命令:移除文件或目录
(13)将上例复制的bashrc1文件删除
(14)将上例的test2目录删除
cat命令:查看文件内容
(15)查看主文件夹下的.bashrc文件内容
tac命令:反向列示
(16)反向查看主文件夹下.bashrc文件内容
more命令:一页一页翻动查看
(17)翻页查看主文件夹下.bashrc文件内容
head命令:取出前面几行
(18)查看主文件夹下.bashrc文件内容前20行
(19)查看主文件夹下.bashrc文件内容,后面50行不显示,只显示前面几行
tail命令:取出后面几行
(20)查看主文件夹下.bashrc文件内容最后20行
(21)查看主文件夹下.bashrc文件内容,只列出50行以后的数据
chown命令:修改文件所有者权限
(22)将hello文件所有者改为root帐号,并查看属性
Vim/gedit/文本编辑器:新建文件
(23)在主文件夹下创建文本文件my.txt,输入文本保存退出。
tar命令:压缩命令
(24)将my.txt打包成test.tar.gz
(25)解压缩到~/tmp目录
(二)熟悉使用MySQL shell操作
(26)显示库:show databases;
(27)进入到库:use 库名;
(28)展示库里表格:show tables;
(29)显示某一个表格属性:desc 表格名;
(30)显示某一个表格内的具体内容:select *form 表格名;
(31)创建一个数据库:create databases sc;
(32)在sc中创建一个表格:create table if not exists student( );
(33)向表格student中插入具体内容:insert into 表格名(名)values(value);
插入记录包含自己的学号姓名。
(34)显示表的内容。
三、熟悉hadoop及其操作
1.用图文与自己的话,简要描述Hadoop起源与发展阶段
Hadoop的起源
Hadoop由 Apache Software Foundation 公司于 2005 年秋天作为Lucene的子项目Nutch的一部分正式引入。它的关键技术和核心思想来源于 Google Lab 开发的 Map/Reduce 和 Google File System(GFS) 的启发。
Google的几个核心思想:
大量使用廉价的普通PC服务器替代价格昂贵的超级计算机;
不使用存储(阿里的去IOE,去掉IBM的小型机、Oracle数据库、EMC存储设备);
提供冗余的高可靠集群服务;
TIPS:Google使用集装箱来搭建数据中心,每个集装箱中的服务器多达上千台,为了降低能源损耗每一个数据中心还可自带发电厂,想在哪里建立数据中心就将集装箱移动到哪里。
此外 Google 还有两个对网页检索与排序具有非常重要指导意义的算法:
倒排索引法----如何通过关键词检索出网页;
Page-Rank----如何给网页的价值评分,用于网页检索结果排序,是Google“在垃圾中找黄金”的关键算法;
Hadoop 1.0 VS 2.0
下图展示了Hadoop 1.0和2.0两个版本在架构设计上面的不同之处
在Hadoop 1.0时代,Map-Reduce是分布式计算框架唯一的选择。
到了Hadoop 2.0时代,由于YARN资源管理系统的出现,使得在Hadoop集群上可以同时运行多种计算框架,Map-Reduce,Spark,Strom,Tez等。
hadoop的发展
Hadoop是道格·卡丁(Doug Cutting)创建的,Hadoop起源于开源网络搜索引擎Apache Nutch,后者本身也是Lucene项目的一部分。Nutch项目面世后,面对数据量巨大的网页显示出了架构的灵活性不够。当时正好借鉴了谷歌分布式文件系统,做出了自己的开源系统NDFS分布式文件系统。第二年谷歌又发表了论文介绍了MapReduce系统,Nutch开发人员也开发出了MapReduce系统。随后NDFS和MapReduce命名为Hadoop,成为了Apache顶级项目。
从Hadoop的发展历程来看,它的思想来自于google的三篇论文。
GFS:Google File System 分布式处理系统 ------》解决存储问题
Mapreduce:分布式计算模型 ------》对数据进行计算处理
BigTable:解决查询分布式存储文件慢的问题,把所有的数据存入一张表中,通过牺牲空间换取时间
四.hadoop操作
1、window系统
2.Linux系统
3.hdfs
三、一个操作实例
1.启动hdfs
2.查看与创建hadoop用户目录
3.在用户目录下创建与查看input目录。
4.将hadoop的配置文件上传到hdfs上的input目录下
5.运行MapReduce示例作业,输出结果放在output目录下。
6.查看output目录下的文件。
7.将输出结果文件下载到本地
8.查看下载的本地文件
9.停止hdfs
10.设置Hadoop环境变量
11.在本地用户主目录下启动hdfs
12.查看hdfs用户主目录
13.停止hdfs