Hive学习
2015-10-28 09:35
232 查看
2015-10-28
hive安装:http://blog.csdn.net/yinhaonefu/article/details/44246357
基本语法:http://blog.csdn.net/yinhaonefu/article/details/44656749
HIve中变量和属性命名空间
1.hivevar 用户自定义变量
2.hiveconf Hive相关的配置属性
3.system Java定义的配置属性
4.env Shell环境定义的环境变量
使用set命令,显示或修改变量值
hive>set env:HOME 显示Shell环境的HOME变量值
hive>set hivevar:name=zhangsan
设置HIve中的变量name为zhangsan
hive>set hiveconf:hive.cli.print.current.db=true
设置Hive中的配置-显示当前数据库名称
hive>set hiveconf:hive.cli.print.header=true设置Hive中的配置-显示查询字段名称
对于常用的命令及属性,可以在HOME目录下的.hiverc文件中设置,每次启动命令时会默认执行.hiverc文件中的命令
HIve可以直接在shell环境一次执行后返回到shell环境中
hive -S -e "select * from table" > /tmp/data
将HIve中table表数据查询出并存储在本地文件系统中 -S 静默模式
如果记不清楚某个属性名,可以使用grep查看一下
hive -S -e "set" | grep warehouse
显示存在关键字warehouse的属性内容
hive -f /usr/local/file.hql
可以使用-f执行文件中的一个或多个HiveQL
hive> source /usr/local/file.hql在Hive环境使用source执行文件中的一个或多个HiveQL
HIve命令的操作历史会存储在HOME/.hivehistory中,会将最近10000行命令保存
hive>! pwd 在HIve环境中执行shell脚本,前面加上!即可
hive>dfs -ls / 在HIve环境中可去掉关键字hdfs,执行Hadoop命令
Hive脚本中使用--注释
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2015-10-29
HIve中集合类型
struct 类似于对象
定义struct(firstName STRING,lastName STRING)
struct('zhangsan','lisi')则 字段名.firstName为zhangsan
map 一组键值对元组集合 如果某个字段类型是map 则map('first','zhangsan','last','lisi')。通过字段名["last"]获取lisi
array 数组Array('zhangsan','lisi') 通过字段名[1]获取lisi
create table employees(
name STRING,
salary FLOAT,
address STRUCT<street:STRING,city:STRING,state:STRING,zip:INT>,
children ARRAY<STRING>, 下属
cards MAP<STRING,BIGINT> 各个银行的卡号
)
HIve读时模式
当数据加载到Hive表中时,不会验证数据是否有效,而是在读取数据时验证,如果少字段或者数据类型和字段定义不
符,则会显示null。
创建外部表时,需要使用location关键字指定一个目录。创建外部分区表时不需要使用location,在创建后,可以使用
alter新增分区 altert table tableName add partition(year=2015,month=10,day=29)
(关于内部,外部,分区表http://blog.csdn.net/yinhaonefu/article/details/44656749)
hive安装:http://blog.csdn.net/yinhaonefu/article/details/44246357
基本语法:http://blog.csdn.net/yinhaonefu/article/details/44656749
HIve中变量和属性命名空间
1.hivevar 用户自定义变量
2.hiveconf Hive相关的配置属性
3.system Java定义的配置属性
4.env Shell环境定义的环境变量
使用set命令,显示或修改变量值
hive>set env:HOME 显示Shell环境的HOME变量值
hive>set hivevar:name=zhangsan
设置HIve中的变量name为zhangsan
hive>set hiveconf:hive.cli.print.current.db=true
设置Hive中的配置-显示当前数据库名称
hive>set hiveconf:hive.cli.print.header=true设置Hive中的配置-显示查询字段名称
对于常用的命令及属性,可以在HOME目录下的.hiverc文件中设置,每次启动命令时会默认执行.hiverc文件中的命令
HIve可以直接在shell环境一次执行后返回到shell环境中
hive -S -e "select * from table" > /tmp/data
将HIve中table表数据查询出并存储在本地文件系统中 -S 静默模式
如果记不清楚某个属性名,可以使用grep查看一下
hive -S -e "set" | grep warehouse
显示存在关键字warehouse的属性内容
hive -f /usr/local/file.hql
可以使用-f执行文件中的一个或多个HiveQL
hive> source /usr/local/file.hql在Hive环境使用source执行文件中的一个或多个HiveQL
HIve命令的操作历史会存储在HOME/.hivehistory中,会将最近10000行命令保存
hive>! pwd 在HIve环境中执行shell脚本,前面加上!即可
hive>dfs -ls / 在HIve环境中可去掉关键字hdfs,执行Hadoop命令
Hive脚本中使用--注释
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2015-10-29
HIve中集合类型
struct 类似于对象
定义struct(firstName STRING,lastName STRING)
struct('zhangsan','lisi')则 字段名.firstName为zhangsan
map 一组键值对元组集合 如果某个字段类型是map 则map('first','zhangsan','last','lisi')。通过字段名["last"]获取lisi
array 数组Array('zhangsan','lisi') 通过字段名[1]获取lisi
create table employees(
name STRING,
salary FLOAT,
address STRUCT<street:STRING,city:STRING,state:STRING,zip:INT>,
children ARRAY<STRING>, 下属
cards MAP<STRING,BIGINT> 各个银行的卡号
)
HIve读时模式
当数据加载到Hive表中时,不会验证数据是否有效,而是在读取数据时验证,如果少字段或者数据类型和字段定义不
符,则会显示null。
创建外部表时,需要使用location关键字指定一个目录。创建外部分区表时不需要使用location,在创建后,可以使用
alter新增分区 altert table tableName add partition(year=2015,month=10,day=29)
(关于内部,外部,分区表http://blog.csdn.net/yinhaonefu/article/details/44656749)
相关文章推荐
- 互联网是一巨大的FPGA
- POJ 2139
- intellij Idea快捷键
- Ogre动画加载之节点动画、mesh动画及骨骼动画加载方法
- Spring -- 如何在spring中读取properties配置文件里面的信息
- 用enum类型数据解决switch case选择字符串的问题
- JavaScript如何调试有哪些建议和技巧附五款有用的调试工具
- js进行页面传值
- 伸展树(splay)
- InstallShield错误解决方案
- mysql 连接url中useUnicode=true&characterEncoding=UTF-8 的作用
- Android的TextView/EditText使用CharacterStyle&SpannableString来处理图片显示、字体样式、超链接等
- LeetCode H-Index II
- 体验为王 2015年10月在线视频网站性能评测
- Fragment的checkStateLoss IllegalStateException: Can not perform this action after onSaveInstanceStat
- 记录个小问题:解决SSH中的Host key verification failed
- window.open() 父子页面的传参&传值问题
- 摇一摇 怎么实现
- Android的TextView使用Html来处理图片显示、字体样式、超链接等
- 线段树练习之——分块解法