hive set语句_Hive相关命令

HDFS命令

  • HDFS命令大全

Usage: hdfs [--config confdir] COMMAND where COMMAND is one of

1ce09c5d65c23003eb2c1fd324576a54.png
  • 常用命令

对于HDFS dfs命令,针对在shell命令在大部分可以使用,只要在相应的命令前加 -。使用时,在Hive Cli可以省略hadoop命令。

展示hdfs文件中的根目录:hdfs dfs -ls /展示home目录下的信息:hdfs dfs -ls 创建home目录下创建目录product,当没有加目录时,就是在对应用户的home目录hdfs dfs -mkdir product拷贝文件到HDFS,将product.csv文件拷贝到刚才创建的product文件夹下。hdfs dfs -put product.csv product将文件从HDFS上拷贝到本地系统hdfs dfs -get product/prodcut.csv product_copy.csv在HDFS文件系统内进行文件拷贝hdfs dfs -cp product/product.csv product_copy.csv删除文件hdfs dfs -rm product_copy.csv删除一个目录hdfs dfs -rm -r product 
获取HDFS转态报告(限管理员)hdfs dfsadmin -report输出结果:[root@sandbox-hdp hive_data]# hdfs dfsadmin -report Configured Capacity: 113791799296 (105.98 GB)Present Capacity: 86075118592 (80.16 GB)DFS Remaining: 84059177984 (78.29 GB)DFS Used: 2015940608 (1.88 GB)DFS Used%: 2.34%Under replicated blocks: 0Blocks with corrupt replicas: 0Missing blocks: 0Missing blocks (with replication factor 1): 0-------------------------------------------------report: Access denied for user root. Superuser privilege is required
对HDFS文件系统的健康型检查hdfs fsck /输出结果如下:Connecting to namenode via http://sandbox-hdp.hortonworks.com:50070/fsck?ugi=root&path=%2FFSCK started by root (auth:SIMPLE) from /172.18.0.2 for path / at Sun Dec 30 09:35:33 UTC 2018...................................................................................Status: HEALTHY Total size: 1984726046 B Total dirs: 232 Total files: 1083 Total symlinks: 0 (Files currently being written: 1) Total blocks (validated): 1081 (avg. block size 1836009 B) (Total open file blocks (not validated): 1) Minimally replicated blocks: 1081 (100.0 %) Over-replicated blocks: 0 (0.0 %) Under-replicated blocks: 0 (0.0 %) Mis-replicated blocks: 0 (0.0 %) Default replication factor: 1 Average block replication: 1.0 Corrupt blocks: 0 Missing replicas: 0 (0.0 %) Number of data-nodes: 1 Number of racks: 1FSCK ended at Sun Dec 30 09:35:33 UTC 2018 in 329 millisecondsThe filesystem under path '/' is HEALTHY

Hive命令

JDBC连接元数据

Hive元数据存储了如表的模式和分区等信息,用户执行如CREATE TABLE或ALTER TABLE等命令会制定这些信息,对于这些会存在并发同时访问,所以默认的内置数据库不适合于生产环境,目前绝大多数情况系啊,使用Mysql进行存储元数据信息,Mysql驱动的存放位置为:

 /usr/hdp/xx.xx版本号/hive/conf 818 819 hive_metastore_user_passwd 820 hive 821  822  823  824 javax.jdo.option.ConnectionDriverName 825 com.mysql.jdbc.Driver 826  827  828  829 javax.jdo.option.ConnectionURL 830 jdbc:mysql://sandbox-hdp.hortonworks.com/hive?createDatabaseIfNotExist=true 831  832  833  834 javax.jdo.option.ConnectionUserName 835 root 836 

命令行选项

执行 hive -h 或 hive --help 可以查看命令选项
960731e45296b2582b59d2224a289055.png

变量和属性

--define key = value 等价于 --hivevar key=value,可在命令行定义用户自定义变量以便在Hive脚本中引用,来满足不同的执行。 Hive将这些键值对放到Hivevar命名空间,这样可以和其他的3中内置命名空间hiveconf,system,env 进行区分。

431f34323e2c8e58e7019c861137ec59.png
使用 set 命令对各不同命名空间中的变量进行设置,shell环境变量,对应的可以使用 echo $param 来进行输出现实。通用的配置信息可以在 /etc/profile,/etc/bashrc , ~/bash_profile 文件中定义。set env:home | echo $HOMEset env:HADOOP_HOME | echo $HADOOP_HOMEset env:JAVA_HOME | echo $JAVA_HOME
使用 -d 或 --hivevar进行定义变量。hive -d max_year=2018hive --hivevar configinfo=something --hivevar hosturl=hostname

--hiveconf 配置信息,hive的配置参数,覆盖hive-site.xml中的参数值

hive --hiveconf hive.cli.print.current.db=true --hiveconf hive.cli.print.header=true;

hive --hiveconf hive.root.logger=INFO,console

hiverc | hive -i 文件配置,在Hive cli中使用-i参数进行制定一个配置文件,在cli启动时,在提示符出现前会执行这个文件。Hive会自动在HOME目录下寻找名为.hiverc的文件,而且会自动 执行这个文件中的命令。 对于用户需要频繁执行的命令,使用这个文件是很方便的。例如设置系统属性,或增加对于Hadoop的分布内存进行自定义的Hive扩展Java包。

查看.hiverc文件,在对应账号的home目录,如果没有,就自己创建一个。对于配置的内容,通用使用 set 命令进行设置。
fadc36698fc189a397fd9ce1c44fb50f.png
查看.hiverc文件,在对应账号的home目录,如果没有,就自己创建一个。对于配置的内容,通用使用 set 命令进行设置。

使用举例

hive -e 一次性执行Hive Sql语句。

结合使用 hivevarhive --hivevar param=data -e "SELECT * FROM TABLE WHERE cloum > ${hivevar:param} "

hive -f 指定Hive Sql脚本文件

hive --hivevar param=data -f "hive sql file path"
查看Hive操作历史命令:Hive 会将近10000行命令记录到文件 $HOME/.hivehistory在Hive中执行Shell命令,在命令前加 ! 即可> !ls;
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值