利用udf函数将Hive统计结果直接插入到MySQL
2015-01-09 16:56
351 查看
转自: http://www.linuxidc.com/Linux/2013-04/82878.htm
大部分利用hive做数据分析的步骤是先用hive将统计结果导出到本地文件或者Hive的其他表中,再将本地文件导入到mysql或者利用sqoop将Hive表导入到mysql中。
今天同事给推荐了一个利用udf函数直接将统计结果导入mysql的方法。
步骤为
hive>add jar /usr/lib/hive/lib/hive-contrib-0.9.0-cdh4.1.2.jar;
Added /usr/lib/hive/lib/hive-contrib-0.9.0-cdh4.1.2.jar to class path
Added resource: /usr/lib/hive/lib/hive-contrib-0.9.0-cdh4.1.2.jar
hive>add jar /usr/share/java/mysql-connector-java-5.1.17.jar;
Added /usr/share/java/mysql-connector-java-5.1.17.jar to class path
Added resource: /usr/share/java/mysql-connector-java-5.1.17.jar
hive>CREATE TEMPORARY FUNCTION dboutput AS 'org.apache.Hadoop.hive.contrib.genericudf.example.GenericUDFDBOutput';
hive>select dboutput('jdbc:mysql://localhost/result','root','123456','INSERT INTO dc(code,size) VALUES (?,?)',code,size) from accesslog limit 10;
注:result为mysql数据库名,dc为数据库result中的表名 dc(code,size)括号中的字段为mysql表dc字段,values(?,?)对应hive统计结果的值 后面的code,size为hive表中的字段,accesslog表示hive中的表名称。
通过以上步骤即可将hive统计结果直接导入到mysql数据库中。
大部分利用hive做数据分析的步骤是先用hive将统计结果导出到本地文件或者Hive的其他表中,再将本地文件导入到mysql或者利用sqoop将Hive表导入到mysql中。
今天同事给推荐了一个利用udf函数直接将统计结果导入mysql的方法。
步骤为
hive>add jar /usr/lib/hive/lib/hive-contrib-0.9.0-cdh4.1.2.jar;
Added /usr/lib/hive/lib/hive-contrib-0.9.0-cdh4.1.2.jar to class path
Added resource: /usr/lib/hive/lib/hive-contrib-0.9.0-cdh4.1.2.jar
hive>add jar /usr/share/java/mysql-connector-java-5.1.17.jar;
Added /usr/share/java/mysql-connector-java-5.1.17.jar to class path
Added resource: /usr/share/java/mysql-connector-java-5.1.17.jar
hive>CREATE TEMPORARY FUNCTION dboutput AS 'org.apache.Hadoop.hive.contrib.genericudf.example.GenericUDFDBOutput';
hive>select dboutput('jdbc:mysql://localhost/result','root','123456','INSERT INTO dc(code,size) VALUES (?,?)',code,size) from accesslog limit 10;
注:result为mysql数据库名,dc为数据库result中的表名 dc(code,size)括号中的字段为mysql表dc字段,values(?,?)对应hive统计结果的值 后面的code,size为hive表中的字段,accesslog表示hive中的表名称。
通过以上步骤即可将hive统计结果直接导入到mysql数据库中。
相关文章推荐
- 利用udf函数将hive统计结果直接插入到mysql
- Hive扩展功能(三)--使用UDF函数将Hive中的数据插入MySQL中
- HIVE分析统计结果直接导入mysql数据库
- hive 使用udf函数实现数据导入到mysql
- 利用eclipse编写自定义hive udf函数
- hive 直接插入mysql
- MySql如何对聚合函数count()查询的结果再次利用count()统计
- 利用eclipse编写自定义hive udf函数
- 将Hive统计分析结果导入到MySQL数据库表中(三)——使用Hive UDF或GenericUDF
- 一个hive小案例:使用HIVE进行单词统计, 并把结果存入mysql
- 给MySQL增加mysql-udf-http和mysql-udf-json自定义函数,让MySQL有调用http接口和查询直接回JSON的能力
- mysql中利用ceil函数对成绩进行分段统计
- 1.利用android提高的的insert,query,update,deleteAPI与execSql,rawQuery函数执行原生的插入,查询,更新,删除语句操作花费时间的对比结果
- 利用python将hive查询结果保存到mysql
- mysql得到查询结果的同时统计查询结果的数目
- 利用mysql的inet_aton()和inet_ntoa()函数存储IP地址
- 利用mysql的inet_aton()和inet_ntoa()函数存储IP地址
- mysql利用system函数提权
- 正确利用php向MySQL datetime类型中插入数据
- 利用MySQL的一个特性实现MySQL查询结果的分页显示