实战
来源:互联网 发布:意志的胜利 知乎 编辑:程序博客网 时间:2024/04/29 08:58
在Hive命令行工具中,可以使用系统环境变量、Hive配置文件中定义的属性以及Hive命令行工具中定义的变量。通过 set 命令,可以访问变量和修改变量的值。不同的变量,存储在不同的命名空间中。通过命名空间可以访问到变量。
- 系统环境变量,存储于 evn 命名空间中,该命名空间中的变量是 只读的;
- Hive配置属性,存储于 hiveconf 命名空间中,该命名空间中的属性是 可读写的;
- Hive命令行变量,存储于 hivevar 命名空间中,该命名空间中的变量是 可读写的;
- Java系统属性,存储于 system 命名空间中,该命名空间中的变量是 可读写的。
系统环境变量
在Hive命令行工具中访问系统环境变量,只能读取变量,通过 env:变量名 来访问变量,命名空间不能省略:
hive> set env:HOME;env:HOME=/root
Hive 配置属性
在 Hive 命令行工具中,可以新增、修改、读取 Hive 配置属性。 通过 hiveconf:变量名 来定义和访问变量,hivevar 命名空间可以省略:
hive> set hive.cli.print.current.db; #该配置属性用于显示hive当前所在的数据库。hive.cli.print.current.db=falsehive> set hive.cli.print.current.db=true;hive (default)> #hive默认的数据库为 default。
Hive 命令行变量
在 Hive 命令行工具中可以新增、修改、读取自定义变量,通过 hivevar:变量名 来定义和访问变量,hivevar 命名空间可以省略:
自定义变量及赋值
hive> set hivevar:testvar;hivevar:testvar=testhive> set testvar; #忽略 hivevar 命名空间;testvar=test
在 HQL 中使用自定义变量
在 Hive 命令行工具中执行 Hive 的 SQL 语句时,如果 SQL 语句中包含有变量,hive 会先将变量替换成变量值,然后再执行 SQL 语句。
hive> CREATE TABLE test (id int,${testvar} string); #变量testvar=testOKTime taken: 4.886 secondshive> describe test; #查看表结构OKid int test string Time taken: 0.808 seconds, Fetched: 2 row(s)hive> DROP TABLE test; #删除表Moved: 'hdfs://TesthpCluster/user/hive/warehouse/test' to trash at: hdfs://TesthpCluster/user/root/.Trash/CurrentOKTime taken: 1.436 seconds
Java 系统属性
在 Hive 命令行工具中可以新增、修改、读取 Java 系统属性。通过 system:变量名 来访问变量,命名空间不能省略:
hive (default)> set system:user.name;system:user.name=root
阅读全文
0 0
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- 实战
- ERROR org.hibernate.proxy.pojo.javassist.JavassistProxyFactory 解决方法
- Android svg 绘制三角形
- 《lua程序设计》读书笔记 第9章:协同程序
- J
- 从别人的脚本学shell(1)
- 实战
- Android
- 【51Nod】1138 连续整数的和
- Linux 中Shell环境变量总结
- 动态规划--LIS练习
- android源码4.4.2----系统启动过程分析
- odoo学习类网站 收集
- Linux学习手册-文件与目录的管理
- 报错 Ignoring InnerClasses attribute for an anonymous inner class