—1——————

后台跑程序语句:

在shell下输入: nohup hive -f  aaa.sql >bbb.log 2>&1 &

然后把sql 的脚本导入服务器上:Transfer—Zmodem upload List

相关命令:jobs:可以看到运行的任务,;cat bbb.log 可以看到这个任务运行情况

后台上传python脚本

nohup python -u day_cid2.py >bbb.log 2>&1 &   运行后会返回任务代号

找到返回的任务代号 : ps -ef  | grep cid

关闭这个脚本,kill -9 32380  其中32380是任务代号

====2================

文件传输:

打印列名语句:set hive.cli.print.header=true;

set hive.groupby.skewindata=true; --如果是group by过程出现倾斜 应该设置为true,解决数据倾斜的万能钥匙

shell rz  文件从当前电脑传到 本地服务器;sz  文件从本地服务器下载到当前电脑

hadoop  put 文件从本地服务器传到集群 ;get 文件从集群传到本地服务器

ctrl +c 杀死当前程序

可以使用cat命令从文件中读入两个文件,然后将重定向到一个新的文件:

将file1.txt和file2.txt合并到file.txt

$ cat file1.txt file2.txt > file.txt

也可以只使用cat命令读入一个文件,然后使用>>将文本流追加到另一个文件的末位。

用法示例:

将file1.txt追加到file2.txt的末尾

$ cat file1.txt >> file2.txt

显示表的hfs 路径:在hive环境下 输入:show create table user_app_current; 就会输出该表的hdfs路径

查看表的信息:describe extended tablenames

test  user_lastlogin_wide_parquet.txt

[zhangb@bi-01 ~]$ cd /home/zhangb

[zhangb@bi-01 ~]$ ls

test  user_lastlogin_wide_parquet.txt

[zhangb@bi-01 ~]$ load data local inpath '/home/zhangb/user_lastlogin_wide_parquet.txt' into table dw_user_lastlogin_wide_parquet partition(day=20151106);

=====3====================

hive命令:

退出hive 是用quit 命令

然后回到服务器里面的目录

然后上传文件 rz

最后就可以导入文件了 load 命令了

转换回去 本地电脑后 用先找回自己用的数据库

use zhangb  才能找回里面的表

cat 某个文件可以展示文件的内容 cat 后面要带具体的文件

tar cf  file.tar files 创建一个压缩包

tar xf file.tar 解压这个包

hive sql 中 having语句是对增加了一个变量后的新变量条件限制,如果没有这个语句,要对新变量进行条件限制的话,查询语句需要多写一层。

将文件从服务器里面导出到本地电脑 用sz 语句

在linux下 用 sz wd1/000000_0  即可在本地电脑的 文稿 里面找到文件

在hive状态下可以通过 在命令前面 加 感叹号 ! 来执行linux cls命令,而不用退出hive。

show databases like 'u.*'; 显示以u开头的数据库

set hive.cli.print.current.db=true; 可以展示当前数据库的名称 set hive.cli.print.current.db=false 可以消除

复制表的结构: create extenal table zhangb.emp2

like zhangb.emp

l                      location ‘/user/zhangb/data’;

hive 用于2张或者多张表关联是,用join语句,默认最后那张表是最大的那个表,所以要把最大的表放在后面。例如:a join b,on…..  则 b 表的范围要大于a表。但是他会用特殊标记指明哪个表是大表,这样不用再将大表写在join的后面了。

left outer join 是把左边的表全保留,右边的有就匹配,没有就显示为

full outer join 是全连接,只要一个表符合where条件就可以保留这行数据,另一个表若没有就用null代替

show partition 表名  #显示表的分区

show creat table  表名  #展示表的字段

describe table  表名  #

创建表:

create table  zhangb_check_age

(imei_md5 string,gender string ,age string,education)

row format delimited  fields terminated by '|'

stored as textfile;

导入hdfs数据:

load data  inpath '/user/hive/warehouse/zhujx.db/zhangb/  /'into table zhangb_check_age  ;

=============4==分组处理==================

分组后求每一组的前10个数据  :

1

2

3

4

select  名称,时间, 数量

from

(select row_number() over(partition by 名称 order by 时间 asc) rn,名称,时间, 数量 from tb) a

where rn<3

分组求每组最大值:ow_number()over()

select * from

(

select t.*,row_number()over(partition by phone_model order by t.cnt desc) as rank

from (

select phone_model,substr(mac_colon,1,8) as mmac,count(substr(mac_colon,1,8)) as cnt from report_dw_mdp.dw_user_wide_table_gid where day=20161009

and phone_model in ('MI 4LTE','A31’) and length(substr(mac_colon,1,8))>0

group by phone_model,substr(mac_colon,1,8)

) t

)awhere a.rank=1;

普通连接如下

select table1.c1,table1.c2,table3.c3

from table1,table2,table3

where table1.id=table2.id and table2.id=table3.id

这样找到的是表1为主,通过表2找表3,若表3中能找到对应id行,则取出,否则忽视掉表1id对应的行

笛卡尔乘积 是返回两个表的行数之积的个数的记录。join 后面不加行就是笛卡尔乘积

hive中对数据的类型进行转化,用的是cast语句。例如:cast(id as float) <10000

union all 是对两个结构完全一样的数据进行合并

--======5=======hadoop fs 学习 =============

1,hadoop fs -mkdir /user/ww1   #创建了一个路径 ww1

2,hadoop fs -ls /user

3.hadoop fs -ls /user/ww1

4\hadoop fs -put /home/zhangb/wd1/000000_0   /user/ww1   #把文件从本地服务器转移到hdfs系统中

5\在hive的界面,可以通过 直接dfs -** 方式来执行Hadoop fs 的命令,以分号结尾即可。

6\ hadoop fs -mkdir /user/hive/warehouse/zhujx.db/zhangb/data2 在集群里面创建一个文件夹

7\put 数据  hadoop fs -put /home/zhujx/zhangb/1.txt /user/hive/warehouse/zhujx.db/zhangb/zy1 把数据从服务器里面传到集群的文件夹里面

8、hadoop fs -get sddr destaddr 将hadoop中的文件转移到服务器上

=====================hdfs 命令==========

1,Hadoop fs –fs [local | <file system URI>]:声明hadoop使用的文件系统,如果不声明的话,使用当前配置文件配置的,按如下顺序查找:hadoop jar里的hadoop-default.xml->$HADOOP_CONF_DIR下的hadoop-default.xml->$HADOOP_CONF_DIR下的hadoop-site.xml。使用local代表将本地文件系统作为hadoop的DFS。如果传递uri做参数,那么就是特定的文件系统作为DFS。

2,hadoop fs –ls <path>:等同于本地系统的ls,列出在指定目录下的文件内容,支持pattern匹配。输出格式如filename(full path)   <r n>  size.其中n代表replica的个数,size代表大小(单位bytes)。

3,hadoop fs –lsr <path>:递归列出匹配pattern的文件信息,类似ls,只不过递归列出所有子目录信息。

4,hadoop fs –du <path>:列出匹配pattern的指定的文件系统空间总量(单位bytes),等价于unix下的针对目录的du –sb <path>/*和针对文件的du –b <path> ,输出格式如name(full path)  size(in bytes)。

5,hadoop fs –dus <path>:等价于-du,输出格式也相同,只不过等价于unix的du -sb。

6,hadoop fs –mv <src> <dst>:将制定格式的文件 move到指定的目标位置。当src为多个文件时,dst必须是个目录。

7,hadoop fs –cp <src> <dst>:拷贝文件到目标位置,当src为多个文件时,dst必须是个目录。

8,hadoop fs –rm [-skipTrash] <src>:删除匹配pattern的指定文件,等价于unix下的rm <src>。

9,hadoop fs –rmr [skipTrash] <src>:递归删掉所有的文件和目录,等价于unix下的rm –rf <src>。

10,hadoop fs –rmi [skipTrash] <src>:等价于unix的rm –rfi <src>。

11,hadoop fs –put <localsrc> … <dst>:从本地系统拷贝文件到DFS。

12,hadoop fs –copyFromLocal <localsrc> … <dst>:等价于-put。

13,hadoop fs –moveFromLocal <localsrc> … <dst>:等同于-put,只不过源文件在拷贝后被删除。

14,hadoop fs –get [-ignoreCrc] [-crc] <src> <localdst>:从DFS拷贝文件到本地文件系统,文件匹配pattern,若是多个文件,则dst必须是目录。

15,hadoop fs –getmerge <src> <localdst>:顾名思义,从DFS拷贝多个文件、合并排序为一个文件到本地文件系统。

16,hadoop fs –cat <src>:展示文件内容。

17,hadoop fs –copyToLocal [-ignoreCrc] [-crc] <src> <localdst>:等价于-get。

18,hadoop fs –mkdir <path>:在指定位置创建目录。

19,hadoop fs –setrep [-R] [-w] <rep> <path/file>:设置文件的备份级别,-R标志控制是否递归设置子目录及文件。

20,hadoop fs –chmod [-R] <MODE[,MODE]…|OCTALMODE> PATH…:修改文件的权限,-R标记递归修改。MODE为a+r,g-w,+rwx等,OCTALMODE为755这样。

21,hadoop fs -chown [-R] [OWNER][:[GROUP]] PATH…:修改文件的所有者和组。-R表示递归。

22,hadoop fs -chgrp [-R] GROUP PATH…:等价于-chown … :GROUP …。

23,hadoop fs –count[-q] <path>:计数文件个数及所占空间的详情,输出表格的列的含义依次为:DIR_COUNT,FILE_COUNT,CONTENT_SIZE,FILE_NAME或者如果加了-q的话,还会列出QUOTA,REMAINING_QUOTA,SPACE_QUOTA,REMAINING_SPACE_QUOTA。

hive\hadoop 常用命令的更多相关文章

  1. Hadoop常用命令及基本概念

    HADOOP 是什么? 分布式计算开源框架,其核心组件为:HDFS.MAPREDUCE.YARN Hadoop各个功能模块的理解 1. HDFS模块 HDFS负责大数据的存储,通过将大文件分块后进行分 ...

  2. 【Hadoop篇】--Hadoop常用命令总结

    一.前述 分享一篇hadoop的常用命令的总结,将常用的Hadoop命令总结如下. 二.具体 1.启动hadoop所有进程start-all.sh等价于start-dfs.sh + start-yar ...

  3. Hadoop常用命令总结

    一.前述 分享一篇hadoop的常用命令的总结,将常用的Hadoop命令总结如下. 二.具体 1.启动hadoop所有进程start-all.sh等价于start-dfs.sh + start-yar ...

  4. 大数据之路week06--day07(Hadoop常用命令)

    一.前述 分享一篇hadoop的常用命令的总结,将常用的Hadoop命令总结如下. 二.具体 1.启动hadoop所有进程start-all.sh等价于start-dfs.sh + start-yar ...

  5. 二、hive shell常用命令

    在使用hive shell之前我们需要先安装hive,并启动hdfs 请参考:https://www.cnblogs.com/lay2017/p/9973298.html hive shell 我们先 ...

  6. Hadoop常用命令及范例

    hadoop中的zookeeper,hdfs,以及hive,hbase都是hadoop的组件,要学会熟练掌握相关的命令及其使用规则,下面就是一些常用命令及对hbase和hive的操作语句,同时也列出了 ...

  7. Hadoop常用命令介绍

    本文主要介绍 Hadoop 常用的命令. test命令 用于检测文件或目录是否存在,判断文件或目录大小. -test -[defsz] <path> : Answer various qu ...

  8. hive的常用命令

    #从hive中直接进入hdfs的daas/bstl/term/userinfo目录下 hive> !hadoop fs -ls /daas/bstl/term/userinfo; 查看hive表 ...

  9. Hbase&Hadoop常用命令

    Hbase中根据Rowkey的前缀Prefix查询数据: scan 'test_xiaomifeng_monitoring_log',{FILTER => "(PrefixFilter ...

随机推荐

  1. Android WebView无法播放视频或直播,关闭界面后任在播放的问题;

    1.设置webview属性: webView.setWebChromeClient(new MyWebChromeClient());         webSettings = webView.ge ...

  2. 获取图片src

    用jquery获取图片src(不知道为什么总是undefined): $('img').eq(i).src; $('img').eq(i).attr('src'); //上面两种都是获取不到,不知道为 ...

  3. Java调用Jenkins接口实现远程发版

    主要有以下几个要点: 1.在 Manage Jenkins 中设置Configure Global Security(主要是设置CSRF Protection中的prevent cross site ...

  4. alias with parameter,linux

    alias demoAlias1='_(){ git checkout -b $1; command2;}; _'

  5. angularjs探秘<三> 控制器controller及angular项目结构

    先来看一个例子 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=&quo ...

  6. 5、申请开发(Development)描述文件

    申请开发(Development)描述文件 在“Certificates, Identifiers & Profiles”页面“Provisioning Profiles”下选择“Develo ...

  7. js 数组对象的操作方法

    在jquery中处理JSON数组的情况中遍历用到的比较多,但是用添加移除这些好像不是太多. 今天试过json[i].remove(),json.remove(i)之后都不行,看网页的DOM对象中好像J ...

  8. python学习笔记_week10

    一.多进程multiprocessing io 操作不占用cpu,计算占cpu(如1+1),上下文切换耗资源(多线程可能不如单线程快),python多线程不适合cup密集操作型的任务,适合io操作密集 ...

  9. python __class__属性

    >>> class a(object): pass >>> o=a() >>> dir(o) ['__class__', '__delattr__ ...

  10. dockerfile 镜像 指定虚拟机的内存

    dockerfile eg: # sea, FROM frolvlad/alpine-oraclejdk8:slim #add volume VOLUME /tmp #add project ADD ...