HDFS文件和HIVE表的一些操作

 2023-09-16 阅读 26 评论 0

摘要:HDFS文件和HIVE表的一些操作 1. hadoop fs -ls 可以查看HDFS文件 后面不加目录参数的话,默认当前用户的目录。/user/当前用户 $ hadoop fs -ls 16/05/19 10:40:10 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using buil
HDFS文件和HIVE表的一些操作

1. hadoop fs -ls  可以查看HDFS文件

后面不加目录参数的话,默认当前用户的目录。/user/当前用户

$ hadoop fs -ls
16/05/19 10:40:10 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 3 items
drwxr-xr-x   - yy yy          0 2016-04-24 08:00 .Trash
drwx------    - yy yy          0 2016-05-06 06:00 .staging
drwxr-xr-x   - yy yy          0 2016-05-06 06:00 oozie-oozi

也可以加目录,显示指定目录的HDFS文件。

$ hadoop fs -ls /user/yy
16/05/19 10:44:07 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 3 items
drwxr-xr-x   - yy yy          0 2016-04-24 08:00 /user/yy/.Trash
drwx------    - yy yy          0 2016-05-06 06:00 /user/yy/.staging
drwxr-xr-x   - yy yy          0 2016-05-06 06:00 /user/yy/oozie-oozi

2. hadoop fs -mkdir 可以创建文件夹

$ hadoop fs -mkdir upload 

hadoop fs –rmr  可以删除文件夹/文件

3. hadoop fs -put 可以上传本机的HDFS文件

hadoop fs -put  pc/*  upload

hadoop fs -get 可以把HDFS的文件下载到本机

hadoop fs -put   upload/collect_20160518.txt   /home/yy

4. hadoop fs -cat 可以读取HDFS文件

$ hadoop fs  -cat  upload/collect_20160515.txt|head -10

5. HDFS 和hive表

hdfs读取文件流程。external 外部分区表:

1)HDFS文件,要按分区存储,比如下面,分区为dt,对应的是2016-05-19下面的文件。

/user/yy/upload/wireless/2016-05-19

2)创建external表指向该存储(分区的上一层)

drop table if exists external_weblog_wireless;
create external table external_weblog_wireless 
(
thedate string,
time_stamp string,
url_title string
)
partitioned by (dt string)  
row format delimited fields terminated by ',' 
stored as textfile location '/user/yy/upload/wireless/';

3)添加新分区,指向分区目录

alter table external_weblog_wireless add partition (dt='2016-05-19') location '/user/yy/upload/wireless/2016-05-19';

hdfs常用命令?4) 这种外部表分区存储,很适合增量数据。

external外部非分区表:

直接指向存储的最终location,建表即生成了数据表。

drop table if exists external_weblog_wireless;
create external table external_weblog_wireless 
(
thedate string,
time_stamp string,
url_title string
)
partitioned by (dt string)  
row format delimited fields terminated by ',' 
stored as textfile location '/user/yy/upload/wireless/2016-05-19';

6. hive 表导出(待补充)

 

注意:

  1. hadoop fs 和hdfs dfs 作用一样。都可以在本机上查看HDFS文件。
  2. HDFS下的文件可以压缩存储,这样能够减少表查询时对Hadoop集群的IO。

          压缩可以按正常的linux压缩,比如 tar -zvcf,.tar.gz

          也可以按hadoop的格式压缩。

隐藏文件怎么取消隐藏、          压缩后,跟普通文件一样上传即可。

     3. 常用的几个查询tips

     查看分区: show partitions 表名;

     查看创表语句:show create table 表名;

 

7. 提交MAPREDUCE JOB

dat文件用什么软件打开。原则上说,Hadoop所有的MapReduce Job都是一个jar包。

运行一个/home/admin/hadoop/job.jar的MapReduce Job

  1. 进入HADOOP_HOME目录。
  2. 执行sh bin/hadoop jar /home/admin/hadoop/job.jar [jobMainClass] [jobArgs]

8. 杀死某个正在运行的JOB

假设Job_Id为:job_201005310937_0053

  1. 进入HADOOP_HOME目录。
  2. 执行sh bin/hadoop job -kill job_201005310937_0053
posted on 2016-05-19 13:43 Suckseedeva 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/skyEva/p/5508381.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/69919.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息