Hive的变量hiveconf , system, env 和 hivevar使用

Hive的命名空间分为:hiveconf , system, env 和 hivevar

1、hiveconf 的命名空间指的是hive-site.xml下面配置的环境变量

2、system的命名空间是系统的变量,包含JVM的运行信息

3、evn的命名空间是指环境变量,包含Shell环境下的变量信息,如 HADOOP_HOME一类的

4、hivevar为临时变量

可以使用:

-d key=value
-define key=value
-hivevar key=value

添加变量的使用

hive -d day=20160804 -d hour=23
    > set day;
    > day=20160804
    > set hour;
    > hour=23 

在 hivevar 的使用的时候,可以省略掉 命名空间的使用,直接使用 ${key}

对于其他的命名空间的使用,必须要带上命名空间, 如: ${hiveconf:key}

在hive下面可以通过  set 或者  set -v 来查看现有环境所有变量的值。加上 -v 可以查看 HDFS和 MR 的环境变量信息

时间: 2024-08-27 05:09:33

Hive的变量hiveconf , system, env 和 hivevar使用的相关文章

Hive设置变量

hive --define --hivevar --hiveconf set 1.hivevar命名空间 用户自定义变量 hive -d name=zhangsan hive --define name=zhangsan hive -d a=1 -d b=2 效果跟hivevar是一样的 hive --hivevar a=1 --hivevar b=2 引用hivevar命名空间的变量时,变量名前面可以加hivevar:也可以不加 set name; set name=zhangsan; set

Hive中变量的使用

1.Hive配置属性 (1)命令行方式 Hive配置属性存储于 hiveconf 命名空间中,该命名空间中的属性是可读写的.在查询语句中插入 '${hiveconf:变量名}',就可以通过 hive -hiveconf来替换变量.例如,查询语句和执行方式如下: [root]$cat test.sql #查看该文件 SELECT * FROM ${hiveconf:tablename} limit ${hiveconf:var_rows}; [root]$hive -hiveconf tablen

hive的变量传递设置

hive的变量传递设置 今天同事在oozie的workflow中执行一个hive查询,但是直接就报异常:Variable substitution depth too large:40,从网上查询可知,可以确认是由于语句中使用了过多的变量导致,在hive以前的版本中,这个限制是写死的40个,查询Hive的最新的原代码,虽然判断的位置的提示信息已经变化,但是原理一样: ### org.apache.hadoop.hive.ql.parse.VariableSubstitution: public

Java获取系统环境变量(System Environment Variable)和系统属性(System Properties)以及启动http://m.jb51.net/article/83454.htm参数的方法

系统环境变量(System Environment Variable): 在Linux下使用export $ENV=123指定的值.获取的方式如下: Map<String,String> map = System.getenv(); Set<Map.Entry<String,String>> entries = map.entrySet(); for (Map.Entry<String, String> entry : entries) { System.o

please set a system env PAODING_DIC_HOME or Config paoding.dic.home in paoding-dic-home.properties p

在使用paoding分词的时候,出现了错误,please set a system env PAODING_DIC_HOME or Config paoding.dic.home in paoding-dic-home.properties point to the dictionaries! 这是因为在老版本的PaodingMaker.getFile()方法中采用的是老版本的java.net.URL.getFile(),不能够识别中文或者空格,需要修改源代码重新打包,只有采用URL.toRUL

shell变量/环境变量和set/env/export用法_转

转自:shell环境变量以及set,env,export的区别 一.shell环境变量的分类以及set env export的区别: set:显示(设置)shell变量,包括的私有变量以及用户变量.不同类的shell有不同的私有变量 bash,ksh,csh每中shell私有变量都不一样. env:显示(设置)用户变量变量. export:显示(设置)当前导出成用户变量的shell变量. export 显示当前导出成用户变量的shell变量,并显示变量的属性(是否只读),按变量名称排序: dec

Hive之变量和属性

首先看一下hive cli工具对于变量的定义规定的几项功能: $ bin/hive -h usage: hive -d,--define <key=value>          Variable subsitution to apply to hive commands. e.g. -d A=B or --define A=B --database <databasename>     Specify the database to use -e <quoted-query

当时钟事件声明为过程变量 让system.threading.timer时钟失效

这个项目的小模块就是画label 控件到tablepayoutpanel表单 之中, 中间用到了时钟,事件(带返回值的),哈希表 .由于时钟定义在 form1的启动构造函数中导致了form1,启动完毕之后时钟停止运行,结果画label画到一半就停了,查找问题,甚是头大,后经大神帮忙,发现了过程变量的问题,在此总结.主要看红字标出部分 public Form1() { InitializeComponent(); //声明启动绑定事件 // OneCodeEventClass edt = new

Shell环境变量以及set,env,export的区别

shell环境变量的分类以及set env export的区别: set:显示(设置)shell变量 包括的私有变量以及用户变量,不同类的shell有不同的私有变量 bash,ksh,csh每中shell私有变量都不一样 env:显示(设置)用户变量变量 export:显示(设置)当前导出成用户变量的shell变量. 举个例子来讲: [www.linuxidc.com@linuxidc ~]$ aaa=bbb –shell变量设定 [www.linuxidc.com@linuxidc ~]$ e