hadoop 常用命令

这篇具有很好参考价值的文章主要介绍了hadoop 常用命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

hadoop 常用命令

hadoop fs -mkdir /test
hadoop fs -put /opt/frank/tb_test03.txt /test/
hadoop fs -ls /test/
hadoop fs -cat /test/tb_test03.txt
hadoop fs -rm /test/tb_test03.txt

hadoop dfs 也能使用、但不推荐,执行会提示:

DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

常看hdfs系统使用情况
hadoop fs -du -s -h /


Hive LOAD 语法

LOAD DATA [ LOCAL ] INPATH {file_path} [ OVERWRITE ] INTO TABLE { table_name } [ PARTITION(partition_colname1="val1", partition_colname2="val2",)... ];

LOAD 示例:
-- 从本地OS系统目录加载文件到Hive表
LOAD DATA LOCAL INPATH '/opt/frank/tb_test03.txt' INTO TABLE tb_test03;
LOAD DATA LOCAL INPATH '/opt/frank/tb_test03.txt' OVERWRITE INTO TABLE tb_test03;
LOAD DATA LOCAL INPATH '/opt/frank/tb_test04_pt.txt' OVERWRITE INTO TABLE tb_test04_pt PARTITION(pt="20240101");

-- 从HDFS系统目录加载文件到Hive表
hadoop fs -put /opt/frank/tb_test03.txt /test/
LOAD DATA INPATH '/test/tb_test03.txt' INTO TABLE tb_test03;


slave 节点查看 datanode 服务状态:
$ jps -v |grep DataNode
$ hadoop dfsadmin -report


slave 节点重启(停止、启动) datanode 服务:
$ ./sbin/hadoop-daemon.sh stop datanode
$ ./sbin/hadoop-daemon.sh start datanode


查看 HDFS 文件中系统的DFS使用情况:
$ hadoop fs -du -s -h /


垃圾清理(多次执行):
$ hadoop fs -expunge


datanode 使用率占满&配置容量显示为0的问题【DFS Used%: 100.00% & Configured Capacity: 0 (0 B)】
$ hadoop dfsadmin -report
查看到使用率占满,显示:
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

Configured Capacity: 0 (0 B)
Present Capacity: 0 (0 B)
DFS Remaining: 0 (0 B)
DFS Used: 0 (0 B)
DFS Used%: NaN%
Under replicated blocks: 76125
Blocks with corrupt replicas: 0
Missing blocks: 76125
Missing blocks (with replication factor 1): 21993

-------------------------------------------------
Live datanodes (1):

Name: 192.168.1.188:50010 (hadoop01)
Hostname: hadoop01
Decommission Status : Normal
Configured Capacity: 0 (0 B)
DFS Used: 0 (0 B)
Non DFS Used: 0 (0 B)
DFS Remaining: 0 (0 B)
DFS Used%: 100.00%
DFS Remaining%: 0.00%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 0
Last contact: Mon Mar 25 17:02:43 CST 2024


配置容量显示为0了:
Configured Capacity: 0 (0 B)

尝试多种方法、最终原因是 slave 中配置的 datanode 节点 hostname 配置成了  localhost 而导致的问题。
vi salve 把配置的 datanode 主机名配置为  hadoop01 后,重启 datanode 服务,问题就解决了。

$ ./sbin/hadoop-daemon.sh stop datanode
$ ./sbin/hadoop-daemon.sh start datanode
$ hadoop dfsadmin -report
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

Configured Capacity: 98337751040 (91.58 GB)
Present Capacity: 65340043264 (60.85 GB)
DFS Remaining: 61911707648 (57.66 GB)
DFS Used: 3428335616 (3.19 GB)
DFS Used%: 5.25%
Under replicated blocks: 73720
Blocks with corrupt replicas: 0
Missing blocks: 82
Missing blocks (with replication factor 1): 21993

-------------------------------------------------
Live datanodes (1):

Name: 192.168.1.188:50010 (hadoop01)
Hostname: hadoop01
Decommission Status : Normal
Configured Capacity: 98337751040 (91.58 GB)
DFS Used: 3428335616 (3.19 GB)
Non DFS Used: 32997707776 (30.73 GB)
DFS Remaining: 61911707648 (57.66 GB)
DFS Used%: 3.49%
DFS Remaining%: 62.96%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Mon Mar 25 17:27:05 CST 2024

Hive建表和LOAD数据:

-- 普通表(TextFile存储格式)
drop table if exists testdb.tb_test03;
create table testdb.tb_test03 (
id int, 
info string,
cnt bigint)
-- partitioned by (pt_sheng string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'
STORED AS TextFile
-- STORED AS INPUTFORMAT 
--    'org.apache.hadoop.mapred.TextInputFormat' 
--  OUTPUTFORMAT 
--    'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION 'hdfs://192.168.1.188:9000/user/hive/warehouse/testdb.db/tb_test03'
;

--  hadoop fs -ls /user/hive/warehouse/testdb.db/tb_test03.txt

show tables;
show create table testdb.tb_test03;
select * from testdb.tb_test03;

-- 方法1:
$ echo '1,jack,95
2,frank,96
3,lucy,97
4,hack,99' > /opt/frank/tb_test03.txt

-- hiveSQL: load from Local OS dir
LOAD DATA LOCAL INPATH '/opt/frank/tb_test03.txt' OVERWRITE INTO TABLE tb_test03;

-- 方法2:
-- shell_cmd: 先拷贝到 hdfs, 再从 hdfs 路径 load
-- $  hadoop fs -rm /frank/tb_test03.txt
-- $  hadoop fs -put /opt/frank/tb_test03.txt /frank/
-- $  hadoop fs -cat /frank/tb_test03.txt
-- -- hiveSQL: load from HDFS FileSystem dir
-- LOAD DATA INPATH '/frank/tb_test03.txt' OVERWRITE INTO TABLE tb_test03;
select * from tb_test03;

-- load后会在配置文件决定的固定目录下产生一个表名对应的目录,目录下为对应的数据文件
$  hadoop fs -ls /user/hive/warehouse/testdb.db/tb_test03/

drop table if exists testdb.tb_test03;
create table testdb.tb_test03 (
id int, 
info string,
cnt bigint)
-- partitioned by (pt_sheng string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'
-- STORED AS TextFile
STORED AS TextFile 
   'org.apache.hadoop.mapred.TextInputFormat' 
OUTPUTFORMAT 
   'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION 'hdfs://192.168.1.188:9000/user/hive/warehouse/testdb.db/tb_test03'
;

show tables;
show create table testdb.tb_test03;
select * from testdb.tb_test03;


-- 分区表(TextFile存储格式)
drop table if exists testdb.tb_test04_pt;
create table testdb.tb_test04_pt (
id int, 
info string,
cnt bigint)
PARTITIONED BY (pt string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'
STORED AS TextFile
LOCATION 'hdfs://192.168.1.188:9000/user/hive/warehouse/testdb.db/tb_test04_pt'
;

show tables;
show create table testdb.tb_test04_pt;
select * from testdb.tb_test04_pt;

echo '1,jack,95
2,frank,96
3,lucy,97
4,hack,99' > /opt/frank/tb_test04_pt.txt

LOAD DATA LOCAL INPATH '/opt/frank/tb_test04_pt.txt' OVERWRITE INTO TABLE tb_test04_pt PARTITION(pt="20240101");


如果创建 PARQUET 存储格式的表则指定 STORED AS PARQUET文章来源地址https://www.toymoban.com/news/detail-859503.html

到了这里,关于hadoop 常用命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第55天:服务攻防-数据库安全&Redis&Hadoop&Mysql&未授权访问&RCE

    思维导图: 常见服务的安全测试: 服务安全流程: 案例一:Mysql-未授权访问-CVE-2012-2122 利用 案例二: Hadoop-未授权访问-内置配合命令执行 RCE 案例三:Redis-未授权访问-Webshell任务密匙RCE 等 写入webshell  写入计划任务反弹shell ssh密钥链接 ​编辑利用自动化脚本去getshell redi

    2024年04月27日
    浏览(37)
  • mysql数据库面试题基础知识,Hadoop之MapReduce04,腾讯java面试流程

    该方法的执行过程比较复杂,我们慢慢来分析,首先来看下简化的时序图 3.1waitForCompletion public boolean waitForCompletion(boolean verbose ) throws IOException, InterruptedException, ClassNotFoundException { // 判断任务的状态,如果是DEFINE就提交 if (state == JobState.DEFINE) { submit(); } if (verbose) { // 监听并且

    2024年04月14日
    浏览(58)
  • Spark、RDD、Hive 、Hadoop-Hive 和传统关系型数据库区别

    Hive Hadoop Hive 和传统关系型数据库区别 Spark 概念 基于内存的分布式计算框架 只负责算 不负责存 spark 在离线计算 功能上 类似于mapreduce的作用 MapReduce的缺点 运行速度慢 (没有充分利用内存) 接口比较简单,仅支持Map Reduce 功能比较单一 只能做离线计算 Spark优势 运行速度快

    2024年02月13日
    浏览(44)
  • hive查看数据库出现org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

    在启动hive后,使用show databses查看数据库时发现,出现了这个错误 根据搜索查找以及分析得知:可能是hive的数据库MySQL在安装的时候没有初始化,初始化数据库即可 schematool -dbType mysql -initSchema  1.在MySQL中删除元数据 drop database metastore; 2.进入hive中的bin里面 ,输入格式化命令

    2024年02月07日
    浏览(55)
  • 处理大数据的基础架构,OLTP和OLAP的区别,数据库与Hadoop、Spark、Hive和Flink大数据技术

    2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开的话,你就得学数据库,sql,oracle,尤其sql要学,当然,像很多金融企业、安全机构啥的,他们必须要用oracle数据库 这oracle比sql安全,强大多了,所以你需要学

    2024年02月08日
    浏览(57)
  • 计算机毕业设计springboot基于Hadoop平台的电影推荐系统541039【附源码+数据库+部署+LW】

    本项目包含程序+源码+数据库+LW+调试部署环境,文末可获取一份本项目的java源码和数据库参考。 系统的选题背景和意义 选题背景: 随着互联网的快速发展和大数据技术的成熟应用,电影推荐系统成为了电影行业中不可或缺的一部分。基于Hadoop平台的电影推荐系统应运而生,

    2024年02月06日
    浏览(61)
  • 服务攻防-数据库安全-服务应用的安全问题以及测试流程-Mysql&Hadoop&未授权访问&RCE-漏洞复现

    目录 一、服务应用的安全问题 1、配置不当——未授权访问 2、安全机制——特定安全漏洞 3、安全机制——弱口令爆破攻击 二、服务应用的安全测试思路 1、判断服务是否开放 2、判断服务类型 3、判断利用方式 三、Mysql-未授权访问-CVE-2012-2122 利用 1、漏洞概述 2、漏洞复现

    2024年02月17日
    浏览(44)
  • 网络安全全栈培训笔记(55-服务攻防-数据库安全&Redis&Hadoop&Mysqla&未授权访问&RCE)

    知识点: 1、服务攻防数据库类型安全 2、RedisHadoopMysql安全 3、Mysql-CVE-2012-2122漏洞 4、Hadoop-配置不当未授权三重奏RCE漏洞 3、Redis-配置不当未授权三重奏RCE两漏洞 #章节内容: 常见服务应用的安全测试: 1、配置不当-未授权访问 2、安全机制特定安全漏洞 3、安全机制弱口令爆

    2024年01月23日
    浏览(46)
  • 数据库常用命令

    安装mysql教程: https://blog.csdn.net/yaoyyl/article/details/107279989 启动mysql服务终止服务 0.语法 SQL语句可以单行或多行书写,以分号结尾。 MySQL数据库的SQL语句不区分大小写,建议使用大写。3.注释 单行注释:–注释内容或#注释内容(MySQL特有) 多行注释:/* 注释 */ 1.进入数据库

    2024年02月06日
    浏览(43)
  • MySql——数据库常用命令

    2024年02月14日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包