hive业务总结1

Posted 数据与共享

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hive业务总结1相关的知识,希望对你有一定的参考价值。

 问题:从基础用户表中随机取出10万基础用户的id和phone号码,然后关联大数据中心的十几张表,取出其匹配数据,每一个表对应一个文件,并且将文件从hdfs导出到本地系统,很简单的一个提数操作,做的时候却遇到许多坑,当然事后也有进步。话不多说,开始操作。

1.创建临时表 temp_users

create table temp_users(id string, phone string ) row format dellimited fields

terminated by ',' stored as textfile;

2. 从基础用户表随机取出10万用户

insert  into table temp_users select id,phone from userinfos where partion_flag= '201218' order by rand() limit 100000;

3.在hdfs系统创建目录

此处就稍微卡了一下,对shell命令不熟悉。

列出hadoop所有的文件目录:

       hadoop fs -ls /

选择一个有权限的目录

       hadoop fs -mkdir /tom/jerry

4.sql语句的方式导入到hdfs文件系统

将执行结果存放到tom/jerry目录下

数据表:message_info1

insert overwrite directory '/tom/jerry/message_info1'

row format delimited fieldss terminated by ','

selet a.id ,b.* from temp_users a

left join message_info1 b on a.id=b.id;

注意:message_info1系统自动生成

5.将文件导出到本地文件系统

格式:hadoop fs -cat  hdfs文件目录   本地目录

hadoop fs -cat 

/tom/jerry/message_info1/* 

/glove/message/msg_info1

注意:msg_info1目录自动生成。

6.写一个脚本,一次性执行十几张表

准备工作

把所有要操作的表的写入一个文件中

目录:/temp/tab_name.txt

程序如下:


后记:



以上是关于hive业务总结1的主要内容,如果未能解决你的问题,请参考以下文章

Hive优化总结

Hive 时间日期处理总结

Hive 调优 小总结

HIVE 启动出错总结

hive总结

Hive的面试题总结