03Linux与Hadoop操作实验

cd命令:切换目录

(1)切换到目录 /usr/local

  cd  /usr/local

 

(2)去到目前的上层目录

  cd ..

  

(3)回到自己的主文件夹

  cd ~

  

 

ls命令:查看文件与目录

(4)查看目录/usr下所有的文件

  ls /usr

  

 

mkdir命令:新建新目录

(5)进入/tmp目录,创建一个名为a的目录,并查看有多少目录存在

  cd /tmp

  mkdir a

  ls /tmp

  

(6)创建目录a1/a2/a3/a4

  

 

 

 

rmdir命令:删除空的目录

(7)将上例创建的目录a(/tmp下面)删除

  rmdir a

  

(8)删除目录a1/a2/a3/a4,查看有多少目录存在

  rm -rf a1

  

 

 

 

cp命令:复制文件或目录

(9)将主文件夹下的.bashrc复制到/usr下,命名为bashrc1

  sudo cp .bashrc /usr/bashrc1

  

(10)在/tmp下新建目录test,再复制这个目录内容到/usr

  mkdir /tmp/test

  

  sudo cp -r test /usr/

  

 

 

 

mv命令:移动文件与目录,或更名

(11)将上例文件bashrc1移动到目录/usr/test

  sudo mv /usr/bashrc1 /usr/test/

  

 

(12)将上例test目录重命名为test2

  sudo mv  /usr/test  /usr/test2

  

 

 

rm命令:移除文件或目录

(13)将上例复制的bashrc1文件删除

  sudo rm   -f  /usr/test2/bashrc1

  

(14)将上例的test2目录删除

  sudo  rm  -r /usr/test2

  

 

 

cat命令:查看文件内容

(15)查看主文件夹下的.bashrc文件内容

  cat  ~/.bashrc

  

 

 

 

 

 

tac命令:反向列示

(16)反向查看主文件夹下.bashrc文件内容

  tac ~/.bashrc

  

 

 

 

more命令:一页一页翻动查看

(17)翻页查看主文件夹下.bashrc文件内容

  more ~/.bashrc

  

 

 

 

head命令:取出前面几行

(18)查看主文件夹下.bashrc文件内容前20行

  head  -n  20  ~/.bashrc

  

 

 

 

(19)查看主文件夹下.bashrc文件内容,后面50行不显示,只显示前面几行

  hrad -n -50 ~/.bashrc

  

 

 

 

tail命令:取出后面几行

(20)查看主文件夹下.bashrc文件内容最后20行

  tail -n 20 ~/.bashrc

  

 

 

 

(21)查看主文件夹下.bashrc文件内容,只列出50行以后的数据

  tail -n +50 ~/.bashrc

  

 

 

 

chown命令:修改文件所有者权限

(22)将hello文件所有者改为root帐号,并查看属性

  sudo chown root /tmp/hello

  

 

 

 

Vim/gedit/文本编辑器:新建文件

(23)在主文件夹下创建文本文件my.txt,输入文本保存退出。

  vim  ~/my.txt

  按下i

  编辑完成后按ESC,输入:wq

  回车

  完成

  

  

 

 

 

 

tar命令:压缩命令

(24)将my.txt打包成test.tar.gz

  sudo  tar  -zcvf  test.tar.gz  my.txt

  

(25)解压缩到~/tmp目录

  sudo  tar -zxvf  test.tar.gz  -C /tmp

  

 

 

 

(26)显示库:show databases;

  show databases;

  

 

 

 

(27)进入到库:use 库名;

  use mysql;

  

 

 

 

 

 

 

(28)展示库里表格:show tables;

  show tables;

  

(29)显示某一个表格属性:desc 表格名;

  desc plugin;

  

 

 

 

(30)显示某一个表格内的具体内容:select *form 表格名;

  select * from  plugin;

  

 

 

 

(31)创建一个数据库:create databases sc;

  create database sc;

  

 

 

 

(32)在sc中创建一个表格:create table if not exists student( );

  use sc;  
  
  DROP TABLE IF EXISTS `student`;
  
CREATE TABLE `student` (
  `id` int(4) NOT NULL AUTO_INCREMENT,
  `stu_name` varchar(32) NOT NULL,
  `stu_num` varchar(30) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;
  

 

 

(33)向表格student中插入具体内容:insert into 表格名(名)values(value);

  插入记录包含自己的学号姓名。

  insert  into `student`(`id`,`stu_name`,`stu_num`) values (1,'Mike','123456'),(2,'董家熙','123456'),(3,'Jack','123456'),(4,'Lucy','123456'),(5,'杰克','123456'),(6,'迈克','123456'),(7,'孙童','123456'),(8,'马梓                      桓','123456'),(9,'黄瀚华','123456'),(10,'蔡艾钦','123456'),(11,'文颂仪','123456'),(12,'苏福全','12345678');
  

 

 

(33)显示表的内容。

  select * from student;

   

 

 

1.用图文与自己的话,简要描述Hadoop起源与发展阶段。

Hadoop之父
Doug Cutting在这里插入图片描述

  1. Hadoop最早起源于lucene下的Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题——如何解决数十亿网页的存储和索引问题。
  2. 2003年、2004年谷歌发表的三篇论文为该问题提供了可行的解决方案。
    ——分布式文件系统(GFS),可用于处理海量网页的存储
    ——分布式计算框架MAPREDUCE,可用于处理海量网页的索引计算问题。
    ——分布式的结构化数据存储系统Bigtable,用来处理海量结构化数据。
  3. Doug Cutting基于这三篇论文完成了相应的开源实现HDFS和MAPREDUCE,并从Nutch中剥离成为独立项目HADOOP,到2008年1月,HADOOP成为Apache顶级项目(同年,cloudera公司成立),迎来了它的快速发展期。

为什么叫Hadoop? Logo为什么是黄色的大象?

狭义上来说,Hadoop就是单独指代Hadoop这个软件(HDFS+MAPREDUCE)
广义上来说,Hadoop指代大数据的一个生态圈(Hadoop生态圈),包括很多其他的软件。
在这里插入图片描述

Hadoop的历史版本介绍

0.x系列版本:Hadoop当中最早的一个开源版本,在此基础上演变而来的1.x以及2.x的版本
1.x版本系列:Hadoop版本当中的第二代开源版本,主要修复0.x版本的一些bug等
2.x版本系列:架构产生重大变化,引入了yarn平台等许多新特性
在这里插入图片描述

Hadoop的模块组成

1、HDFS:一个高可靠、高吞吐量的分布式文件系统。
(海量数据的存储)
HDFS集群包括,NameNode和DataNode以及Secondary Namenode。

2.对比操作三个文件系统:分别用命令行与窗口方式查看windows,Linux和Hadoop的文件系统的用户主目录。

 

 

 

 hdfs dfs -ls

 

3.一个操作案例:

启动hdfs

cd /usr/local/hadoop

./sbin/start-dfs.sh

jps

 

查看与创建hadoop用户目录。

./bin/hdfs dfs  -ls /


在用户目录下创建与查看input目录。

./bin/hdfs dfs  -ls input/

将hadoop的配置文件上传到hdfs上的input目录下。

./bin/hdfs dfs -put ./etc/hadoop/*.xml input

运行MapReduce示例作业,输出结果放在output目录下。

ls ./share/hadoop/mapreduce/ 

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar grep input output 'dfs[a-z]+'

查看output目录下的文件。

 ./bin/hdfs dfs -ls ./output/

查看输出结果

 ./bin/hdfs dfs -cat output/*

将输出结果文件下载到本地。

./bin/hdfs dfs -get output ./output

查看下载的本地文件。

ls -al ./output/*

停止hdfs

 ./sbin/stop-dfs.sh

jps

 

posted @ 2021-09-25 22:16  少郎  阅读(112)  评论(0)    收藏  举报