欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 资讯 > Hive:Hive Shell技巧

Hive:Hive Shell技巧

2025/2/2 7:45:02 来源:https://blog.csdn.net/weixin_40121264/article/details/145377774  浏览:    关键词:Hive:Hive Shell技巧

在终端命令窗口不能直接执行select,creat等HQL命令,需要先进入hive之后才能执行,比较麻烦,但是如果使用Hive Shell就可以直接执行

 在终端只执行一次Hive命令

 

-e 参数, "execute"(执行),使用-e参数后会在执行完Hive的命令后退出Hive

使用场景: 用Hive执行封装脚本

-S参数, "silent"(静默) , Hive 会减少输出的信息量,只显示查询结果,而不会显示额外的日志或进度信息。这在脚本中或需要最小化输出时非常有用

示例1

示例2

-S参数

在引号里面还需要套单引号时,单引号外层的引号使用双引号

示例3

在终端单独执行SQL文件

示例4

hql文件命名规范: 后缀名使用hql或sql

在Hive里执行终端命令

示例5

并非所有的Linux命令都能在Hive中运行,具体支持哪些命令可能取决于Hive的配置和运行环境

示例6

在终端执行HDFS命令

示例6

使用历史命令和补全命令

显示当前库

直接在hive里面使用ues shao,不显示库名,使用select不显示字段名

显示当前库的方法

方法1: 永久修改,直接修改hive的配置文件,如果是公司的服务器不建议修改

 

方法2:在当前会话里设置该参数

示例: 设置完参数后的效果

 查看当前参数设置的值

local模式

本地模式可以提高查询效率 , 建议在进行hive操作前打开

在DataGrip等第三方使用命令时,前面加set 

单独hive命令和sql文件的使用场景

启动MapReduce的情况

启动MapReduce的标志

比如示例3就启动了MapReduce

set mapreduce.job.reduces=<number>

用于在Hadoop的MapReduce作业中设置一个常量数量的reducer。在MapReduce编程模型中,作业通常分为两个阶段:map阶段和reduce阶段。map阶段负责处理输入数据并生成中间键值对,而reduce阶段则对map阶段输出的相同键的所有值进行归并和处理,生成最终结果。

Running with YARN Application = application_1729590859321_0044

表明作业是在 YARN 上运行的,YARN 是 Hadoop 的资源管理器,通常与 MapReduce 和 Spark 作业一起使用。

Spark job[0] status = RUNNING

表示正在运行的 Spark 作业。这表明 Hive 正在使用 Spark 作为执行引擎

STAGES: 01/01Stage-0

这表明作业被分成了一个或多个阶段(stage),这是 MapReduce 和 Spark 作业的典型特征。

Metrics

截图中显示了执行的指标,如 TaskDurationTime, ExecutorCpuTime, JvmGcTime, BytesRead 等。这些指标通常与分布式计算框架(如 MapReduce 和 Spark)相关。

Shuffle 信息

虽然截图中显示 ShuffleTotalBytesRead / ShuffleRecordsRead: 0 / 0ShuffleBytesWritten / ShuffleRecordsWritten: 0 / 0,这意味着在这个阶段没有发生 shuffle 操作,但这并不完全排除 MapReduce 的可能性,因为有些查询可能不需要 shuffle 阶段。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com