Hadoop常用命令及范例
hadoop中的zookeeper,hdfs,以及hive,hbase都是hadoop的组件,要学会熟练掌握相关的命令及其使用规则,下面就是一些常用命令及对hbase和hive的操作语句,同时也列出了一些范例。
start-dfs.sh
NameNode 进程启动:hadoop-daemon.sh start namenode
DataNode 进程启动:hadoop-daemon.sh start datanode
HA 高可用环境中需要启动的进程:
zookeeper:
zkServer.sh start 启动
zkServer.sh stop 停止
zkServer.sh status 查看状态 leader follwer
journalnode 集群命令
hadoop-daemon.sh start journalnode 启动
hadoop-daemon.sh stop journalnode 停止
ZKFC
启动 zkfc 进程: hadoop-daemon.sh start zkfc
停止 zkfc 进程: hadoop-daemon.sh stop zkfc
1. shell命令 管 理和 HDFS 的文件管 理。
(1)启动 Zookeeper
zkServer.sh start
(2)启动 HDFS 的命令
start-dfs.sh
(3)启动 Yarn 的命令
start-yarn.sh
(4)显示 HDFS 中/data/test 目录信息
hadoop fs -mkdir /data/test
hadoop fs -lsr /data/test
(5)将本地文件/tmp/log.txt 文件上传到/data/test 目录中
hadoop fs -put /tmp/log.txt /data/test
(6)设置文件/data/test/log.txt 的副本数为 3
hadoop fs -setrep -w 3 /data/test/log.txt
(7)显示/data/test/log.txt 文件内容
hadoop fs -cat /data/test/log.txt
(8)将/data/test/log.txt 文件移动到集群/user/hadoop 目录下
hadoop fs -mkdir /user/hadoop
hadoop fs -mv /data/test/log.txt /user/hadoop
(9)将/data/test/log.txt 文件下载到/home/hadoop 目录下
hadoop fs -copyToLocal /data/test/log.txt /home/hadoop/
(10)关闭 HDFS 命令
stop-dfs.sh
(11)停止 Zookeeper
zkServer.sh stop
2.将学生数据存储到 Hive 数据仓库中,信息包括(学号,姓名,性别,年龄,联系方式,
邮箱),创建表语法如下:
启动 hive 前切记要先启动 mysql 数据库
create table student(sno string ,name string ,sex string ,age int ,phone string, email string) row
format delimited fields terminated by ',' ;(1)将本地数据“/tmp/student.dat”加载到 student 表,写出操作语句
load data local inpath '/tmp/student.dat' overwrite into table student;
(2)写 HQL 语句查询全部学生信息
select * from student;
(3)写 HQL 语句查询各个年龄及对应学生数量
(4) select age,count(*) from student group by age;
(5)写 HQL 语句查询全部学生的姓名和性别
select name,sex from student;
(6)写 HQL 语句查询年龄为 18 的学生姓名和联系方式
select name,phone from student where age=18;
(7)写 HQL 语句查看 student 表结构
describe student;
(8)写 HQL 语句删除 student 表
drop table student;
(9)导出 生 地/home/hadoop/out 目录 ,写出 语
from student insert overwrite local directory '/home/hadoop/out' select *;
3.员工表 employee 包含两个列族 basic 和 info,使用 shell 命令完成以下操作。
(1)启动 HBase 集群
注意:在启动 hbase 集群前,需要将 zookeeper,hdfs,yarn 及历史服务器启动
zkServer.sh start
start-dfs.sh
start-yarn.sh
mr-jobhistory-daemon.sh start historyserver
启动 hbase 集群
start-hbase.sh
hbase shell
(2)在 HBase 中创建 employee 表
create 'employee','basic','info'
(3)一个员工行键为“19006”,basic 列族有 sex 列,值为“男”,添加该值
put 'employee','19006','basic:sex','nan'
(4)获取行键为“19002”的员工的性别信息
get 'employee','19006','basic:sex'
(5)获取行键为“19002”的员工的 info 列族所有数据
get 'employee','19006','info'
(6)查询所有员工的数据
scan 'employee'
(7)统计 employee 表的行数
count 'employee'
(8)关闭 HBase 集群
stop-hbase.sh
********
(9)单独启动和关闭 hadoop 服务(10) 启动名称节点
(11) hadoop-daemon.sh start namenode
(12) 启动数据节点
(13)hadoop-daemons.sh start datanode slave
(14)开启 resourcemanager
(15)yarn-daemon.sh start resourcemanager
(16)停止一个数据节点
(17)hadoop-daemon.sh stop datanode
(18)重新开启
(19)hadoop-daemon.sh start datanode
HBase基本语法及示例: (1)建数据表,包含两个列族,第一个列族保留版本为 2,第二个列族保留版本为 1;
create 'stu',{NAME=>'info',VERSIONS=>2},{NAME=>'grade'}
(2) put 添加 , 一 一 识 message;
put 'stu','zhangsan','info:message','16jiruangongyiban'
put 'stu','zhangsan','grade:c++','90'
(3)使用 get 和 scan 查询数据。
get 'stu' ,'zhangsan', 'info'
get 'stu', 'zhangsan',{COLUMNS=>'info:message',VERSIONS=>2}
scan 'stu'
Hbase 语法总结:
注意,在向 hbase 的表中添加数据的时候只能一列一列的添加
添加数据:
put '行键' ,'列族名:列名','数值'
获取数据:
get '表名','行键'
get '表名','行键','列族名'
get '表名','行键','列族名:列名'
get '表名','行键',{COLUMNS=>'列族名:列名',VERSIONS=>版本}
扫描数据:
scan '表名'
scan '表名' {COLUMNS=>'列族名'}
scan '表名' {COLUMNS=>'列族名:列名'}
scan '表名' {COLUMNS=>'列族名:列名',VERSIONS=>版本}
修改数据表:
alter '表名',{NAME=>'已经存在的列族名',VERSIONS=>版本}
清除数据表:
truncate '表名'
disable '表名' drop '表名'
Hive 示例: 使用 DDL 完成数据定义
按照下面学生信息创建学生表和标准身高体重表并加载数据,分别创建内部表、外部表、分区表和桶表,其中分区依据是专业名称,桶表分为 3 个桶。学生信息实例:
学号 姓名 性别 爱好 年龄 学习成绩 通讯地址
实验内容 140010101 张三 男 足球,篮球,长跑等 19 C 程序:90,Java:85,DB:88 河南,郑州,大
学 路 60 号,450001
内部表:
create table stu(sno int,sname string,sex string,hobby array,age int,grade
map,address struct)row format
delimited fields terminated by ' ' collection items terminated by ',' map keys terminated by':';
加载数据:无锡妇科医院哪家好 http://mobile.xasgyy.net/
load data local inpath 'kk.txt' overwrite into table stu;
分区表:
create table stupartition(sno int,sname string,sex string,hobby array,age int,grade
map,address struct)partitioned
by (major string)row format delimited fields terminated by ' ' collection items terminated by ','
map keys terminated by':';
加载数据:
load data local inpath 'kk.txt' overwrite into table stupartition partition(major='jsj');
桶表:
create table stubucket(sno int,sname string,sex string,hobby array,age int,grade
map,address struct)clustered by
(age) into 3 buckets row format delimited fields terminated by ' ' collection items terminated by
',' map keys terminated by':';
设置使用分桶属性:set hive.enforce.bucketing=true;
加载数据:
load data local inpath 'kk.txt' overwrite into table stubucket;
查看数据存储位置可以看到桶表中的数据
hadoop fs -ls /user/hive/warehouse
外部表:
create external table stuexternal(sno int,sname string,sex string,hobby array,age
int,grade map,address
struct)row format delimited fields
terminated by ' ' collection items terminated by ',' map keys terminated by':' location
'/user/hive/external/stuexternal';
加载数据:
load data local inpath 'kk.txt' overwrite into table stuexternal;
标准身高体重实例: 年龄 身高范围 体重范围
19 160-170 60-65
身高体重内部表:
create table shengao(age int,highth struct,weighth struct)row
format delimited fields terminated by ' ' collection items terminated by '-';'
加载数据:
load data local inpath 'shengao.txt' overwrite into table shengao;
3.使用 DML 完成数据查询
查询指定学生的第一爱好和通讯邮编;查询指定学生姓名、性别和身高范围;查询有对应身高范围和体重范围的学生信息;查询软件工程专业学生总人数;查询各专业学生的
平均年龄。
查询指定学生的第一爱好和通讯邮编;
select hobby[0],address.postid from stu where sname='aa';
查询指定学生姓名、性别和身高范围;
select sex,highth from stu left outer join shengao on stu.age=shengao.age where stu.sname='aa';
查询有对应身高范围和体重范围的学生信息;
select * from stu left outer join shengao on stu.age=shengao.age where highth.up=170 and
highth.down=160 and weighth.max=65 and weighth.min=60;
查询软件工程专业学生总人数;
select count(*) from stupartition where major='rjgc';
查询各专业学生的平均年龄。
select avg(age) major from stupartition group by(major);
Hadoop常用命令及范例的更多相关文章
- 【Hadoop篇】--Hadoop常用命令总结
一.前述 分享一篇hadoop的常用命令的总结,将常用的Hadoop命令总结如下. 二.具体 1.启动hadoop所有进程start-all.sh等价于start-dfs.sh + start-yar ...
- Hadoop常用命令总结
一.前述 分享一篇hadoop的常用命令的总结,将常用的Hadoop命令总结如下. 二.具体 1.启动hadoop所有进程start-all.sh等价于start-dfs.sh + start-yar ...
- 大数据之路week06--day07(Hadoop常用命令)
一.前述 分享一篇hadoop的常用命令的总结,将常用的Hadoop命令总结如下. 二.具体 1.启动hadoop所有进程start-all.sh等价于start-dfs.sh + start-yar ...
- Hadoop常用命令及基本概念
HADOOP 是什么? 分布式计算开源框架,其核心组件为:HDFS.MAPREDUCE.YARN Hadoop各个功能模块的理解 1. HDFS模块 HDFS负责大数据的存储,通过将大文件分块后进行分 ...
- Hadoop常用命令介绍
本文主要介绍 Hadoop 常用的命令. test命令 用于检测文件或目录是否存在,判断文件或目录大小. -test -[defsz] <path> : Answer various qu ...
- 5.hadoop常用命令
1. 单独启动和关闭hadoop服务 启动名称节点 #hadoop-daemon.sh start namenode 启动数据节点 #hadoop-daemons.sh start datanode ...
- Hbase&Hadoop常用命令
Hbase中根据Rowkey的前缀Prefix查询数据: scan 'test_xiaomifeng_monitoring_log',{FILTER => "(PrefixFilter ...
- Hadoop常用命令汇总
启动Hadoop 进入HADOOP_HOME目录. 执行sh bin/start-all.sh 关闭Hadoop 进入HADOOP_HOME目录. 执行sh bin/stop-all.sh 1.查看指 ...
- hadoop常用命令详细解释
hadoop命令分为2级,在linux命令行中输入hadoop,会提示输入规则 Usage: hadoop [--config confdir] COMMAND where COMMAND is on ...
随机推荐
- LeetCode 7. 反转整数(Reverse Integer)
题目描述 给定一个 32 位有符号整数,将整数中的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 ...
- 检测是否安装或者开启flash
function flashChecker() { var hasFlash = 0; //是否安装了flash var flashVersion = 0; //flash版本 if(document ...
- 前端js 爬取 获取网页
1.存在问题 same origin policy(同源策略) 页面中的Javascript只能读取,访问同域的网页.这里需要注意的是,Javascript自身的域定义和它所在的网站没有任何关系,只和 ...
- hdu5387 钟表指针之间夹角(分数计算,模拟)
题意: 给你一个24格式的数字时间,(字符串),问你这个时刻时针与分针 时针与秒针 分针与秒针 之间的夹角, 我们发现 秒针每秒转6度,分针每秒转1/10度,每分转6度,时针每小时转30度,每分转1/ ...
- nginx反向代理结合apache和php的配置示例
.前端nginx主配置文件 # cat nginx.conf worker_processes ; #pid logs/nginx.pid; pid /data/www/logs/nginx.pid; ...
- Python3基础 list clear 清空列表中的内容
Python : 3.7.3 OS : Ubuntu 18.04.2 LTS IDE : pycharm-community-2019.1.3 ...
- Nginx - 代理后端通过域名访问
目录- 前言- Nginx 根据域名反向代理- Nginx proxy_pass 关于 '/' 的作用 1. 前言 接到一个需求,通过nginx 代理互联网上某一个页面,刚开始的时候觉得很简单的,直接 ...
- 【环境搭建与软件安装】How to install CUDNN or uninstall
前言 CuDnn是用于深度学习的GPU加速库,安装好NVIDIA和CUDA之后,安装CuDnn就简单多了,可参考官方文档. 操作过程 1. 下载cuDnn. 需要在NVIDIA官网注册账号,登录之后下 ...
- [LeetCode] 236. Lowest Common Ancestor of a Binary Tree 二叉树的最近公共祖先
Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree. According ...
- [LeetCode] 441. Arranging Coins 排列硬币
You have a total of n coins that you want to form in a staircase shape, where every k-th row must ha ...