美文网首页
4.Hive总结

4.Hive总结

作者: 南宫萧言 | 来源:发表于2019-01-15 15:55 被阅读0次

    1.hive是数据仓库,主要是对历史数据做分析;

    2.hive的产生是为了帮助非Java程序员做MR分析;

    3.hive是以hdfs为基础的,所有的数据存储在hdfs上,hive的所有操作都是hdfs和MR操作;

    4.hive搭建:(1)本地模式,使用位于本地内存的derby数据库,几乎不用(2)单用户:将mysql与hive分割在不同的服务器上,通过远程访问(3)多用户:使用三台服务器,一台搭建hive,一台mysql服务器,另一台metastore server

    5.hive的搭建主要是mysql服务的配置信息,hdfs存储数据的路径

    6.hive SQL

        a)创建表 create table tablename(col datatype) row format delimited (fields,collections,map,line)

        b)加载数据(1)insert into(会执行mr)(2)load data (速度快,但是将所有的数据文件导入到同一目录)(3)from table1 insert into table2 select col1,col2....(4)复制表结构 create table1 like table2;

    7.hive分区

    a)为了提高查询效率,将不同的数据文件存放在不同的目录,查询时了可以查询部分目录,分区设计要跟业务相结合;

    b)Alter table tablename add pattition (col=val1) 添加分区的字段再定义表时给出

    c)Alter table tablename drop partition (col=val) 删除分区将所有相同的分区全部删掉

    8.Serde,beeline ,jdbc

       a)Serde :序列化和反序列化,正则表达式。

       b)Beeline:提供另一种访问hive的客户端方式,跟hiveserver2一起使用 。使用beeline所有的操作命令都要加!,Hive本身不进行用户名和密码的检验;

    作业:

    create table call_monitor(

    record_time string,

    imei string,

    cell string,

    ph_num string,

    call_num string,

    drop_num int,

    duration int,

    drop_rate double,

    erl string

    )

    row format delimited

    FIELDS TERMINATED BY ',';

    create table call_result(

    imei string,

    drop_num int,

    duration int,

    drop_rate double

    )

    row format delimited

    FIELDS TERMINATED BY ',';

    from call_monitor cm

    insert into call_result

    select cm.imei,sum(cm.drop_num) sdrop,sum(cm.duration) sdura,sum(cm.drop_num)/sum(cm.duration) s_rate group by cm.imei order by s_rate;

    4.1Hive参数

    hive 参数、变量

    hive参数 hive参数设置方式 参数设置方式

    4.2动态分区

    动态分区设置 动态分区代码案例

    4.3hive分桶

    hive分桶概念 分桶操作 抽样语句 计算分桶抽样数量 案例 案例

    相关文章

      网友评论

          本文标题:4.Hive总结

          本文链接:https://www.haomeiwen.com/subject/hmukdqtx.html