1 . Hive  命令行

    输入$HIVE_HOME/bin/hive –H 或者 –help 可以显示帮助选项:

    说明:

      1、 -i 初始化 HQL 文件。

      2、 -e 从命令行执行指定的 HQL

      3、 -f 执行 HQL 脚本

      4、 -v 输出执行的 HQL 语句到控制台

      5、 -p <port> connect to Hive Server on port number

      6、 -hiveconf x=y Use this to set hive/hadoop configuration variables.

    例如:

      $HIVE_HOME/bin/hive -e 'select * from tab1 a'

      $HIVE_HOME/bin/hive -f /home/my/hive-script.sql

      $HIVE_HOME/bin/hive -f hdfs://<namenode>:<port>/hive-script.sql

      $HIVE_HOME/bin/hive -i /home/my/hive-init.sql

      $HIVE_HOME/bin/hive -e 'select a.col from tab1 a'

        --hiveconf hive.exec.compress.output=true

        --hiveconf mapred.reduce.tasks=32

2 . Hive 参数配置

    Hive 参数大全:https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties

  开发 Hive 应用时,不可避免地需要设定 Hive 的参数。设定 Hive 的参数可以调优 HQL 代码的执行效率,或帮助定位问题。然而实践中经常遇到的一个问题是,为什么设定的参数没有起作用?这通常是错误的设定方式导致的。

  对于一般参数,有以下三种设定方式:

    配置文件 (全局有效)

    命令行参数 (对 hive 启动实例有效)

    参数声明 (对 hive 的连接 session 有效)

  配置文件

    用户自定义配置文件:$HIVE_CONF_DIR/hive-site.xml

    默认配置文件:$HIVE_CONF_DIR/hive-default.xml

    用户自定义配置会覆盖默认配置。

    另外,Hive 也会读入 Hadoop 的配置,因为 Hive 是作为 Hadoop 的客户端启动的,Hive 的配置会覆盖 Hadoop 的配置。

    配置文件的设定对本机启动的所有 Hive 进程都有效。

  命令行参数

    启动 Hive(客户端或 Server 方式)时,可以在命令行添加-hiveconf 来设定参数

      例如:bin/hive -hiveconf hive.root.logger=INFO,console

    设定对本次启动的 Session(对于 Server 方式启动,则是所有请求的 Sessions)有效。

  参数声明

    可以在 HQL 中使用 SET 关键字设定参数,这一设定的作用域也是 session 级的。

      比如:

      set hive.exec.reducers.bytes.per.reducer=<number> 每个 reduce task 的平均负载数据量

      set hive.exec.reducers.max=<number> 设置 reduce task 数量的上限

      set mapreduce.job.reduces=<number> 指定固定的 reduce task 数量

    但是,这个参数在必要时<业务逻辑决定只能用一个 reduce task> hive 会忽略

    上述三种设定方式的优先级依次递增。即参数声明覆盖命令行参数,命令行参数覆盖配置文件设定。注意某些系统级的参数,例如 log4j 相关的设定,必须用前两种方式设定,因为那些参数的读取在 Session 建立以前已经完成了。

Hive命令行及参数配置的更多相关文章

  1. hive 命令行传入参数

    azkban实现任务重跑 我们执行sql的方式是将hql文件上传到服务器本地.然后执行shell命令 hive " -f ./test_scheduler.hql 注:hive -e 是执行 ...

  2. 记录一个 spring cloud 配置中心的坑,命令行端口参数无效,被覆盖,编码集问题无法读取文件等.

    spring cloud 配置中心 结合GIT , 可以运行时更新配置文件.发送指令让应用重新读取配置文件. 最近在测试服务器实现了一套,结果CPU 实用率暴增,使用docker compose启动 ...

  3. 在VS中向命令行添加参数的方法

    在VS中向命令行添加参数的方法 在VS中向命令行添加参数,即向main()函数传递参数的方法: 右键单击要 添加参数的工程-->属性-->配置属性-->调试,在右侧“命令参数”栏输入 ...

  4. 【VS工程设置】 编译动态库,命令行添加参数,不使用预编译头,指定该项目链接 哪种 运行库

    编译动态库 注意: 动态库: [目标文件扩展] => .dll + [配置类型] => 动态库(.dll) 静态库: [目标文件扩展] => .lib + [ 配置类型]=> ...

  5. LibOpenCM3(一) Linux下命令行开发环境配置

    目录 LibOpenCM3(一) Linux下命令行开发环境配置 本文使用 Linux 环境, 硬件为 STM32F103 系列开发板 LibOpenCM3 介绍 LibOpenCM3 是GPL协议( ...

  6. Shell Scipt 命令行带参数,输出log

    命令行带参数,以及字符串参数放到ssh命令里可以这么放: #!/bin/bash        这行保证运行bash可以这样: ./data.sh if [ $# != 4 ]; then echo ...

  7. [Hive_add_4] Hive 命令行客户端 Beeline 的使用

    0. 说明 Hive 命令行客户端 beeline 的使用,建立在启动  Hadoop 集群和启动 hiveserver2 的基础之上 1. 使用指南 在确保集群启动和 hiveserver2 启动的 ...

  8. mysql命令行各个参数解释

    mysql命令行各个参数解释 http://blog.51yip.com/mysql/1056.html Usage: mysql [OPTIONS] [database]   //命令方式 -?, ...

  9. 命令行传递参数并排序 AS实现加法

    题目:从命令行输入参数并进行排序 1.实验准备 Integer提供了能在 int 类型和 String 类型之间互相转换的方法,还提供了处理 int 类型时非常有用的其他一些常量和方法. static ...

随机推荐

  1. TcpListener、TcpClient

    1.TcpClient using System; using System.Text; using System.Net.Sockets; namespace tcpclient { class t ...

  2. shell脚本需求

    需求一:写一个脚本 1.设定变量FILE的值为/etc/passwd 2.依次向/etc/passwd中的每个用户问好,并且说出对方的ID是什么 形如:(提示:LINE=`wc -l /etc/pas ...

  3. Struts学习-Hibernate

    Hibernate (开放源代码的对象关系映射框架) http://www.cnblogs.com/wenwen123/p/5658625.html 一. 1.新建 2.配置 <!-- hibe ...

  4. python csv写入数据,消除空行

    import csv rowlist=[{'first_name': 'mark', 'last_name': 'zhao','age':21}, {'first_name': 'tony', 'la ...

  5. 【深入理解JAVA虚拟机】第4部分.程序编译与代码优化.1.编译期优化。这章编译和实战部分没理解通,以后再看。

    1.概述 1.1.编译器的分类 前端编译器:Sun的Javac. Eclipse JDT中的增量式编译器(ECJ)[1].  把*.java文件转变成*.class文件 JIT编译器:HotSpot ...

  6. [原]零基础学习SDL开发之在Android使用SDL2.0渲染PNG图片

    在上一篇文章我们知道了如何在android使用SDL2.0来渲染显示一张bmp图,但是如果是一张png或者一张jpg的图,那么还能显示成功么?答案是否定的 我们需要移植SDL_image库来支持除bm ...

  7. SpringMVC WEB应用上传照片的实现

    使用是SpringMVC+Hibernate搭建的WEB应用,使用jsp写的前端页面. 如何将文件上传到服务器呢?我这里使用的是Multipart的形式将文件上传. 这里有两大步:一是配置multip ...

  8. 【转】python通过文件头判断文件类型

    刚刚看到一个好玩的程序,拉过来.原文地址:https://www.ttlsa.com/python/determine-file-type-by-the-file-header/ 侵权删. ===== ...

  9. ZooKeeper介绍与环境搭建

    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...

  10. UVa 1349 - Optimal Bus Route Design(二分图最佳完美匹配)

    链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...