hive的操作及优化

本文详细介绍了Hive的各种操作,包括案例分析、参数设置、动态分区、分桶技术、Lateral View的使用,以及视图和索引的创建。同时,探讨了Hive的运行方式、GUI接口和权限管理,最后重点讨论了Hive的性能优化策略。
摘要由CSDN通过智能技术生成

hive

  • hive案例

    1、基站掉线率统计
        需求
            统计出掉线率最高的前10基站
        数据
            record_time:通话时间
            imei:基站编号
            cell:手机编号
            drop_num:掉话的秒数
            duration:通话持续总秒数
        步骤
            建表
                注意字段类型和rowformat
                根据需求生成相应的结果表
            load数据
            写sql,找出掉线率最高的基站
    2、wordcount
        建表
            原始表
                create table docs(line string);
            结果表
                create table wc(word string, totalword int);
        加载数据
            load data local inpath '/tmp/wc' into table docs;
        统计数据
        查询结果
    
  • hive参数

    hive当中的参数、变量,都是以命名空间开头
    通过${}方式进行引用,其中system、env下的变量必须以前缀开头
    hive 参数设置方式
        修改配置文件
            加载数据
            修改配置文件 ${HIVE_HOME}/conf/hive-site.xml
        key-value
            启动hive cli时,通过--hiveconf key=value的方式进行设置
        使用set命令
            进入cli之后,通过使用set命令设置
    hive set命令
        在hive CLI控制台可以通过set对hive中的参数进行查询、设置
        set设置:
            set hive.cli.print.header=true;
        set查看
            set hive.cli.print.header
        hive参数初始化配置
            当前用户家目录下的.hiverc文件
            如:   ~/.hiverc
            如果没有,可直接创建该文件,将需要设置的参数写到该文件中,hive启动运行时,会加载改文件中的配置。
        hive历史操作命令集
            ~/.hivehistory
    
  • 动态分区

    开启支持动态分区
        set hive.exec.dynamic.partition=true;
            默认:false
        set hive.exec.dynamic.partition.mode=nostrict;
            默认:strict(至少有一个分区列是静态分区)
            严格模式
    相关参数
        set hive.exec.max.dynamic.partitions.pernode;
            每一个执行mr节点上,允许创建的动态分区的最大数量(100)
        set hive.exec.max.dynamic.partitions;
            所有执行mr节点上,允许创建的所有动态分区的最大数量(1000)
        set hive.exec.max.created.files;
            所有的mr job允许创建的文件的最大数量(100000)
    加载数据
        from psn21
        insert overwrite table psn22 partition(age, sex)  
        select id, name, likes, address, age, sex distribute by age, sex;
    
  • hive分桶

    什么是hive分桶
        分桶表是对列值取哈希值的方式,将不同数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值