快捷键

CTRL+alt+T ==打开终端

ctrl+shift+esc ==打开任务后台

~ ==/home/用户名

Linux简单命令

clear 清屏

ls 查看

cd ..

cd ./当前目录

cd /根目录

mkdir创建目录

mkdir 目录名

mkdir -p 目录名 //创建多级目录

rm删除文件目录

rm -r 目录名 //删除目录及目录下的内容

rm 文件名 //删除文件

rm g*

rm *

cat把文件内容回显到终端

cat ./文件名

cp 复制文件

tar解压缩

chown给权限

Hadoop安装与配置:

创建Hadoop用户:

1.sudo useradd -m 名称 -s /bin/bash

2.sudo passwd 名称 设置密码

3.sudo adduser 名称 sudo 为新用户添加权限

更新apt:

sudo apt-get update

更新vim:

Sudo apt-get install vim

vim使用方法:

vim ./名称 打开/创建文件/文档

i:编辑插入内容

esc:退出插入状态

:wq:保存并退出

安装SSH:

1.sudo apt-get install openssh-server 安装SSH

2.ssh localhost 登入

设置SSH免密码:(再次登入不需要密码)

1.exit 退出登录

2.cd ~/.ssh/ 进入目录

3.ssh-keygen -t rsa 生成免密码密钥

4.cat ./id_rsa.pub >> ./authorized_keys 将密钥加载入对应的文件夹中/加入授权

安装JAVA

1.cd/usr/lib #进入目录

sudo mkdir jvm #创建jvm文件夹

2.cd ~ #进入主目录

cd 下载 #进入下载目录

sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm #把JDK文件解压到新建的jvm文件中

3.cd ~ #回到家目录

vim ~/.bashrc #修改配置文件

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

#将以上字符复制粘贴进去(JAVA版本可以改)

4. source ~/.bashrc #使配置文件起作用

5.java -version #查看Java是否安装好

单机配置

sudo tar -zxvf ./下载/hadoop文件名 -C /usr/local #解压文件

cd /usr/local #进入文件夹

ls #查看文件夹文件

sudo mv ./hadoop文件名/ ./hadoop #将Hadoop文件名改成hadoop

sudo chown -R 用户名 ./Hadoop #给用户授权

cd /usr/local/hadoop #进入文件夹

./bin/hadoop version #查看Hadoop版本

mkdir ./input #创建input目录,将大数据输入内容都放在这个文件下

Input

(创建目录)

hadoop jia

Output(会被覆盖)

cp ./etc/hadoop/*.xml ./input #将配置文件作为输入文件

cd .. #回到上一层目录

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep ./input ./output ‘dfs[a-z.]+’ #用grep匹配input和output中的内容

cat ./output/* #查看运行结果

rm -r ./output #Hadoop 默认不会覆盖结果文件,因此再次运行上面实例会提示出错,需要先将 ./output 删除

伪分布式配置

冗余数据:重复的数据数量

vim ./etc/hadoop/core-site.xml #编辑配置文件1

vim ./etc/hadoop/hdfs-site.xml #编辑配置文件2

./bin/hdfs namenode -format #格式化NameNode

./sbin/start-dfs.sh #启动hadoop

jps #查看是否启动Hadoop

HDFS shell命令

火狐浏览器 localhost:9870

目录

./bin/hdfs dfs -mkdir 目录名称 #/user/当前用户/目录名称

hdfs dfs -mkdir /目录名称#/目录名称

hdfs dfs -ls 目录名称#查看当前目录中目录名称的内容

hdfs dfs -tm -t 目录名称#删除目录

hdfs dfs -rm -r 目录名称 #删除目录和目录下的所有内容

hdfs dfs -rm 文件名

hdfs dfs -rmdir 目录名 #删除单纯一个目录

文件操作

上传 hdfs dfs -put 本地文件目录 上传到的位置

查看 hdfs dfs -cat

下载 hdfs dfs -get 要下载的文件 要下载的位置

追加 hdfs dfs -appendToFile 源文件 目的文件

cat 要追加的文件 >> 被追加的文件 #在文件后追加内容

覆盖 hdfs dfs -copyFromLocal -f 要覆盖的文件 被覆盖的文件

hdfs dfs -copyFromLocal #同-put

移动 hdfs dfs -mv 源文件位置 目的位置

课后第八题:1.先将被追加的文件下载到本地 2.用追加将内容追加进文件 3.用本地文件覆盖原文件

JAVA API运行与HDFS进行交互

Eclipse打开

cd /usr/local/eclipse #打开eclipse所在文件位置

./eclipse #打开eclipse

Hbase使用

启动HBase:

ssh localhost

start-dfs.sh

start-hbase.sh

停止顺序:

stop-hbase.sh

stop-dfs.sh

hbase命令 总结

hbase shell #打开hbase命令行

create ‘表名’,’列簇’(列族不止一个) //创建一个普通的表

put ‘表名’,’行键’,’列族:列限定符’,’值’

list—-scan—-describe ‘表名’

list:查看有几个表几个行键

describe:获取表细节的描述

get ‘表名’,’行键’ #查看行内容

create ‘表名’,{NAME=> ‘列族名’,VERSIONS=版本数} //创建表某个列族可以存储版本数个版本

alter修改表

alter ‘表名’,’列族名’ #增加一个列族

alter ‘表名’,{NAME=>’列族名’,METHOD=>’delete’} #删除列族

alter ‘表名’,NAME=>’列族名’,VERSIONS=>n #修改列族版本数

或alter ‘表名’,NAME=>’列族名:列’,VERSIONS=>n

alter ‘表名’,max_filesize=>’n’ #修改表region的大小

删除表

Disable ‘表名’ //使表不可用

Drop ‘表名’ //删除表

hive用法

打开mysql

sudo service mysql start

打开hive

hive

创建表

create database name1; //创建数据库

use name1; //使用数据库

create table name2( //创建表

a int,

b string,

edata string,

place string)

row format delimited fields terminated by ‘,’; //用逗号分隔一行

读取数据进表

load data local inpath ‘/usr/local/hadoop/examples/stu.txt’ overwrite into table name2;

//将数据读取进表中,不加overwrite,就接着写,不加local,读的是hdfs中的内容

查询表中内容

select * from name2; //查询表中所有内容

select a,b from name2; //查询a,b列的内容

select a,b from name2 where place=‘数据’; //查询名为数据那一行的内容

select * from name2 where b>100; //查询b中大于100的数据内容

select * from name2 order by b; //查询所有的内容并按照b排序

select * from name2 order by b limit 2; //查询所有的内容并按照b排序后查询前2个

select b from name2 where a=2; //查询当a=3时数据的b的内容

select a

插入内容

insert into table name2 values(要插入的内容,分割); //插入内容

将表中内容插入到新表中

insert overwrite table name3

select a,b from name2;

数据的导出,导出到本地

insert overwrite local directory ‘想要导入的目录’

row format delimited fields terminated by ‘/t’ //增加格式化

select * from name2;

在终端用cat查看文件内容

hdfs dfs -get 文件所在地址 目标地址(需要创建)

//文件所在地址可以从浏览器localhost:9870中Utilities中看到