Hive 中的变量
Hive的变量前面有一个命名空间,包括三个hiveconf,system,env,还有一个hivevar
- hiveconf的命名空间指的是hive-site.xml下面的配置变量值。
- system的命名空间是系统的变量,包括JVM的运行环境。
- env的命名空间,是指环境变量,包括Shell环境下的变量信息,如HADOOP_HOME之类的
实例:
set mapreduce.job.split.metainfo.maxsize=-1;
set hive.exec.parallel=true;
set day='2018-08-30';
set window_day=50 select
*
from
table_name
where
dt >= date_sub(${hiveconf:day}, ${hiveconf:window_day})
and dt <= ${hiveconf:day}
| 命名空间 | 使用权限 | 详细描述 |
| hivevar | rw | 用户自定义变量 |
| hiveconf | rw | hive相关配置属性 |
| system | rw | java定义的配置属性 |
| env | r | Shell环境属性 |
通常我们可以使用hive -e查看有关hivevar与hiveconf的描述:
2、hivevar与hiveconf的作用域
之前项目中涉及两个hive作业同时执行并需要传入相同key的参数,因此顾虑不清楚是否是线程安全。
结论先行:hivevar与hiveconf作用域都是会话级别的,言外之意就是如果两个并发同时跑的作业同时传入一个相同key但是value不相同的值的参数,不会发生线程安全问题。
3、对于hivevar与hiveconf的使用
hiveconf变量取值必须要使用hiveconf作为前缀参数,具体格式如下:
${hiveconf:key}
但是对于hivevar取值可以不使用前缀hivevar,具体格式如下:
使用前缀:
${hivevar:key}
不使用前缀:
${key}
Hive 中的变量的更多相关文章
- 向Hive中传入变量的方式
Hive向程序中传递变量的方式 暴力替换 字符串替换 正则替换 模板引擎 系统环境变量 shell环境变量:${env:varname} system系统变量:${system:varname} hi ...
- Hive开发中使用变量的两种方法
在使用hive开发数据分析代码时,经常会遇到需要改变运行参数的情况,比如select语句中对日期字段值的设定,可能不同时间想要看不同日期的数据,这就需要能动态改变日期的值.如果开发量较大.参数多的话, ...
- Hive中变量的使用
1.Hive配置属性 (1)命令行方式 Hive配置属性存储于 hiveconf 命名空间中,该命名空间中的属性是可读写的.在查询语句中插入 '${hiveconf:变量名}',就可以通过 hive ...
- mysql分组排序取最大值所在行,类似hive中row_number() over partition by
如下图, 计划实现 :按照 parent_code 分组, 取组中code最大值所在的整条记录,如红色部分.(类似hive中: row_number() over(partition by)) sel ...
- 关于sparksql操作hive,读取本地csv文件并以parquet的形式装入hive中
说明:spark版本:2.2.0 hive版本:1.2.1 需求: 有本地csv格式的一个文件,格式为${当天日期}visit.txt,例如20180707visit.txt,现在需要将其通过spar ...
- 漫谈数据仓库之拉链表(原理、设计以及在Hive中的实现)
本文将会谈一谈在数据仓库中拉链表相关的内容,包括它的原理.设计.以及在我们大数据场景下的实现方式. 全文由下面几个部分组成: 先分享一下拉链表的用途.什么是拉链表. 通过一些小的使用场景来对拉链表做近 ...
- Hive学习笔记——Hive中的分桶
对于每一个表(table)或者分区, Hive可以进一步组织成桶,也就是说桶是更为细粒度的数据范围划分.Hive也是针对某一列进行桶的组织.Hive采用对列值哈希,然后除以桶的个数求余的方式决定该条记 ...
- Hive中使用LZO
hive 中使用lzo 1 启动hive 错误Exception in thread "main" java.lang.NoClassDefFoundError: org/apac ...
- Hive中的集合数据类型
除了使用础的数据类型string等,Hive中的列支持使用struct, map, array集合数据类型. 数据类型 描述 语法示例 STRUCT 和C语言中的struct或者"对象&qu ...
随机推荐
- tomcat JVM内存 配置
原文:http://elf8848.iteye.com/blog/467460 常见的内存溢出有以下两种: java.lang.OutOfMemoryError: PermGen space java ...
- Error: Finish can only be called once
Android studio 启动或者新建项目:报错“Error: Finish can only be called once” gradle缓存问题: 默认的额缓存路径在: on windows ...
- FFmpeg的使用——PHP转换视频、截取视频以及JW Player播放器控制
转载:http://blog.csdn.net/zm2714/article/details/7916440 给朋友做的一个项目中,涉及到上传视频.转换视频.自动截取已上传视频内容中的一帧做为缩略图片 ...
- Orchard运用 - 网站样例
在此分享一些个人觉得比较不错的基于Orhcard搭建的网站. 中文版: http://www.58img.com/ http://www.weijiqiong.com/ http://www.apma ...
- 如何解决Ubuntu与Windows双系统时间不同步
导读 不知道有没朋友跟我一样是 Ubuntu 和 Windows 双系统?今天有朋友问到我,当他从 Ubuntu 系统重新启动到 Windows 时,会发现 Windows 中的时间变了,他问我有没办 ...
- windows获取本机MAC地址并写入文件的bat
windows获取本机MAC地址并写入文件的bat MAC(Media Access Control)地址,或称为 MAC地址.硬件地址,用来定义网络设备的位置. bat代码例如以下: @echo o ...
- Asp.net视图状态的作用
视图状态(view state)是在单个页面中保存信息的第一选择,ASP.NET Web控件也使用试图状态在回发间保存属性值.通过页面内建的 ViewState 属性,你可以把自己的数据放入到视图状态 ...
- 为pc编译配置安装当前最新的内核
搜索公众号:itxxgh (IT学习干货),全公益.免费.定期,提供,<IT学习教程>.不会骚扰大家,仅仅需轻点关注,也会传播<中华传统文化>传播正能量. 或扫描二维码 1 ...
- Cocos2d-x 3.2 Lua演示样例 AssetsManagerTest(资源管理器)
Cocos2d-x 3.2 Lua演示样例 AssetsManagerTest(资源管理器) 本篇博客介绍Cocos2d-x 为我们提供的一个类--AssetsManager在Lua中的使用样例,效果 ...
- Unity Web前端研究
原地址:http://blog.csdn.net/libeifs/article/details/7200630 开发环境 Window7 Unity3D 3.4.1 MB525defy Andro ...