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表
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';
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 表导出(待补充)
注意:
- hadoop fs 和hdfs dfs 作用一样。都可以在本机上查看HDFS文件。
- HDFS下的文件可以压缩存储,这样能够减少表查询时对Hadoop集群的IO。
压缩可以按正常的linux压缩,比如 tar -zvcf,.tar.gz
也可以按hadoop的格式压缩。
压缩后,跟普通文件一样上传即可。
3. 常用的几个查询tips
查看分区: show partitions 表名;
查看创表语句:show create table 表名;
7. 提交MAPREDUCE JOB
原则上说,Hadoop所有的MapReduce Job都是一个jar包。
运行一个/home/admin/hadoop/job.jar的MapReduce Job
- 进入HADOOP_HOME目录。
- 执行sh bin/hadoop jar /home/admin/hadoop/job.jar [jobMainClass] [jobArgs]
8. 杀死某个正在运行的JOB
假设Job_Id为:job_201005310937_0053
- 进入HADOOP_HOME目录。
- 执行sh bin/hadoop job -kill job_201005310937_0053
HDFS文件和HIVE表的一些操作的更多相关文章
- hive表分区相关操作
Hive 表分区 Hive表的分区就是一个目录,分区字段不和表的字段重复 创建分区表: create table tb_partition(id string, name string) PARTIT ...
- hadoop执行hdfs文件到hbase表插入操作(xjl456852原创)
本例中需要将hdfs上的文本文件,解析后插入到hbase的表中. 本例用到的hadoop版本2.7.2 hbase版本1.2.2 hbase的表如下: create 'ns2:user', 'info ...
- Hive基础之Hive表常用操作
本案例使用的数据均来源于Oracle自带的emp和dept表 创建表 语法: CREATE [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name ...
- spark相关介绍-提取hive表(一)
本文环境说明 centos服务器 jupyter的scala核spylon-kernel spark-2.4.0 scala-2.11.12 hadoop-2.6.0 本文主要内容 spark读取hi ...
- 【读书笔记】C#高级编程 第二十四章 文件和注册表操作
(一)文件和注册表 对于文件系统操作,相关的类几乎都在System.IO名称空间中,而注册表操作由System.Win32名称空间中的类来处理. (二)管理文件系统 System.MarshalByR ...
- spark使用Hive表操作
spark Hive表操作 之前很长一段时间是通过hiveServer操作Hive表的,一旦hiveServer宕掉就无法进行操作. 比如说一个修改表分区的操作 一.使用HiveServer的方式 v ...
- Hive(6)-DML数据操作
一. 数据导入 1. 语法 load data [local] inpath 'path' [overwrite] into table table_name [partition (partcol1 ...
- 2.7-2.8 导入、导出数据(进/出)hive表的方式
一.导入数据进hive表 1.语法 LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (p ...
- [Hive]使用HDFS文件夹数据创建Hive表分区
描写叙述: Hive表pms.cross_sale_path建立以日期作为分区,将hdfs文件夹/user/pms/workspace/ouyangyewei/testUsertrack/job1Ou ...
随机推荐
- HTML 学习笔记 CSS3(过度 transition)
通过 CSS3,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果.请把鼠标移动到下面的元素上: 先看一下这个代码 实现旋转放大的效 ...
- 多项式FFT相关模板
自己码了一个模板...有点辛苦...常数十分大,小心使用 #include <iostream> #include <stdio.h> #include <math.h& ...
- SQL Server读懂语句运行的统计信息 SET STATISTICS TIME IO PROFILE ON
对于语句的运行,除了执行计划本身,还有一些其他因素要考虑,例如语句的编译时间.执行时间.做了多少次磁盘读等. 如果DBA能够把问题语句单独测试运行,可以在运行前打开下面这三个开关,收集语句运行的统计信 ...
- DWZ-JUI 树形Checkbox组件 无法一次获取所有选中的值的解决方法
UI中 tree Checkbox 组件 在官方文档中提供的oncheck事件中只能够获取当前点击的权限值,而无法获取其他选中的值 <ul class="tree treeFolder ...
- Python 操作 MongoDB
原文 这篇文章主要介绍了使用Python脚本操作MongoDB的教程,MongoDB作为非关系型数据库得到了很大的宣传力度,而市面上的教程一般都是讲解JavaScript的脚本操作,本文则是基于Pyt ...
- SUBLIME TEXT 2中,光标移入移出括号的快捷键设置
无赖右方向键→和End键都在键盘的另一边,每次输入完一个函数,光标在各种括号中间,有什么更好的方式将光标移出来呢?在Sublime Text 2中,我们可以自己设置快捷键: { "keys& ...
- (一)GATT Profile和GAP 简介(目前所有的BLE应用都基于GATT,所以也要了解是怎么一回事)-转发
个人大总结:(先后顺序) 1.GAP协议定义多个角色(其中就有中心设备[GATT客户端](唯一)叫主设备||和外围设备[GATT服务端端](多个)也叫从设备). 2.先经过GAP协议,再有GATT协议 ...
- CUDA2.1-原理之索引与warp
本小节来自<大规模并行处理器编程实战>第四节,该书是很好的从内部原理结构上来讲述了CUDA的,对于理解CUDA很有帮助,借以博客的形式去繁取间,肯定会加入自己个人理解,所以有错误之处还望指 ...
- Expression Blend4经验分享:制作一个简单的文字按钮样式
首先在Grid里放一个TextBlock,对象时间线窗口的结构树如下 右键点击grid,选择构成控件 会弹出构成控件的对话框,选择你要构成的控件类型,控件名称,控件样式存储位置 这里我们选择butto ...
- DOM之parentNode与offsetParent
DOM中有两个属性parentNode和offsetParent,想必区别大家都是知道的,可用法上还是有一些需要注意的地方,尤其是后者,想知道吗?继续往下看咯. parentNode指的是父节点,el ...