Hive学习实战
--------------------------------------------------------------
Hive从入门到实战【40讲】---笔记记录
--------------------------------------------------------------
hive命令
1、show tables;
2、show databases;
3、 desc login; ---查看表结构。
4、 show partitions test5; --查看分区
create table login_struct(
ip string,
user struct<uid:bigint,name :string>
)
partitioned by (dt string)
row format delimited
fields terminated by ','
collection items terminated by '|'
stored as textfile;
load data local inpath
'/hadoop/hive0.9/testHive/login_struct.txt'
into table login_struct partition (dt='2015-02-07');
第38天: UDF函数
hive进行UDF的开发非常简单
此处说的UDF为
Temporary的function
背景:
支持用户定制:
1、文件格式 text File Sequence File
2、内存中的数据格式,java integer string
3、用户提供的map、reduce脚本,不管什么语言,
4、用户自定义的函数:substr,trim
5、用户自定义的聚合函数 sum average
UDF
定义: UDF(user-defined-function)
用户自定义的函数对数据进行处理
用法
1、udf函数可以直接应用于select语句,对
查询结果做格式化处理后,在输出内容。
2、编写udf函数的时候,需要注意一下几点
a 自定义的UDF需要集成org.apache.hadoop.hive.ql.UDF
b 需要实现evaluate函数
c evaluate 函数支持重载。
UDF步骤
1、把程序打包jar包放入到目标机器上去、
2、进入hive,操作 hive>add jar /opt/test/jar/udf_test.jar
3、创建临时函数:hive>create temporary function
add_test as 'hive.udf.add';
查询HQL语句
select add_test('abc') from test;
4、销毁临时函数
hive> drop temporary function add_test;
/hadoop/hive/testhivew/add_test2.jar
create temporary function
add_test as 'hive.AddTest';
select add_test(1,2) from a2;
select add_test(ip,user) from a2;