`
superlxw1234
  • 浏览: 550726 次
  • 性别: Icon_minigender_1
  • 来自: 西安
博客专栏
Bd1c0a0c-379a-31a8-a3b1-e6401e2f1523
Hive入门
浏览量:44351
社区版块
存档分类
最新评论

[一起学Hive]之八-使用Hive命令行

    博客分类:
  • hive
阅读更多

      Hive提供的几种用户交互接口中,最常用的就是命令行接口。本文简单介绍一下Hive命令行接口(Hive Command Line)及Hive交互Shell(Hive Interactive Shell)的一些使用。

 

七、使用Hive命令行

7.1 Hive Command Line

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

 

-d,–define <key=value> 定义一个变量值,这个变量可以在Hive交互Shell中引用,后面会介绍用法,比如:-d A=B
–database <databasename> 进入Hive交互Shell时候指定数据库,默认进入default数据库
-e <quoted-query-string> 命令行执行一段SQL语句
-f <filename> filename文件中保存HQL语句,执行其中的语句
-H,–help 显示帮助信息
-h <hostname> 连接远程Hive Server,后续介绍
–hiveconf <property=value> 在命令行中设置Hive的运行时配置参数,优先级高于hive-site.xml,但低于Hive交互Shell中使用Set命令设置。
–hivevar <key=value> 同—define
-i <filename> 进入Hive交互Shell时候先执行filename中的HQL语句
-p <port> 连接远程Hive Server的端口号
-S,–silent 静默模式,指定后不显示执行进度信息,最后只显示结果
-v,–verbose 冗余模式,额外打印出执行的HQL语句

 

这里特别介绍一下以下几个选项:

 

  • -d,–define <key=value>

执行$HIVE_HOME/bin/hive -d k1=v1 –database lxw1234

表示,定义了一个变量k1,值为v1,执行了数据库为lxw1234

进入Hive交互Shell之后,可以使用${k1}来引用该变量,比如:

hive> select ‘${k1}’ from t_lxw1234 limit 1;

OK

v1

这里将k1的值v1打印出来。

  • –hiveconf <property=value>

可以使用该选项设定Hive的运行参数配置,相当于在Hive交互Shell中使用set命令进行设置,比如:

执行$HIVE_HOME/bin/hive –hiveconf mapred.reduce.tasks=20

进入交互Shell之后,运行的所有查询都会设置20个reduce task。

除非又用set mapred.reduce.tasks=N;进行另外设定。

  • –hivevar <key=value>

用法同-d和—define

 

7.2 Hive交互Shell

        Hive交互Shell指执行$HIVE_HOME/bin/hive之后,进入的有hive>提示符的交互式命令行,在这里可以执行查询语句,设置参数等等,所有的命令必须以分号结束,具体有以下命令和选项:

  • quit

退出交互Shell

  • exit

               退出交互Shell

  • reset

重置所有的Hive运行时配置参数,比如,之前使用set命令设置了reduce数量,使用reset之后,重置成hive-site.xml中的配置。

  • set <key>=<value>

设置Hive运行时配置参数,优先级最高,相同key,后面的设置会覆盖前面的设置。

  • set –v

打印出所有Hive的配置参数和Hadoop的配置参数。

  • add命令

包括 add FILE[S] <filepath> <filepath>* 、 add JAR[S] <filepath> <filepath>* 、add ARCHIVE[S] <filepath> <filepath>*

向DistributeCache中添加一个或过个文件、jar包、或者归档,添加之后,可以在Map和Reduce task中使用。

比如,自定义一个udf函数,打成jar包,在创建函数之前,必须使用add jar命令,将该jar包添加,否则会报错找不到类。

 

  • list 命令

包括 list FILE[S] 、list JAR[S]  、list ARCHIVE[S]

列出当前DistributeCache中的文件、jar包或者归档。

  • delete 命令

包括 delete FILE[S] <filepath>* 、delete JAR[S] <filepath>*  、 delete ARCHIVE[S] <filepath>*

从DistributeCache中删除文件

  • ! <command>

在交互Shell中执行Linux操作系统命令并打印出结果,不常用

比如:

hive> !pwd;

/home/lxw1234

  • dfs <dfs command>

在交互Shell中执行hadoop fs 命令,不常用

比如,统计hdfs文件系统中/tmp/目录的总大小:

hive> dfs -du -s /tmp/;

54656194751 /tmp

  • <query string>

最常用的,执行HQL语句,以分号结尾;

  • source FILE <filepath>

在交互Shell中执行一个脚本,不常用。

 

 

 

Hive相关文章(持续更新)

一起学Hive系列

—-Hive概述,Hive是什么

—-Hive函数大全-完整版

—-Hive中的数据库(Database)和表(Table)

—-Hive的安装配置

—-Hive的视图和分区

—-Hive的动态分区

—-向Hive表中加载数据

Hive分析函数系列

Hive索引

hive优化之——控制hive任务中的map数和reduce数

 

1
0
分享到:
评论
1 楼 annmi_cai 2016-03-11  
顶顶更健康

相关推荐

    Hive编程指南-by-_美_Edward-Capriolo Dean-Wampler Jason-Rutherglen-著-_

    在Hive的基础操作部分,书中涵盖了安装、配置和使用Hive的全过程,包括Java环境的设置、Hadoop的安装(涉及本地模式、伪分布式和分布式模式)、Hive的安装和启动,以及Hive命令行界面的使用。Hive的命令选项、变量和...

    03_Hive.docx

    因此,可以说 Hive 是建立在 Hadoop 之上的数据仓库系统。 #### 二、Hive的特点 1. **存储依赖**:Hive 使用 HDFS (Hadoop Distributed File System) 来存储数据。 2. **计算依赖**:Hive 使用 MapReduce 或其他...

    zeppelin-spark-notebook:Docker compose和一些笔记本可通过Spark沙箱快速启动并运行

    在这个例子中,`zeppelin`服务连接到`spark-master`服务获取Spark集群的信息,并依赖于`hive-metastore`服务以使用Hive功能。`spark-master`启动Spark Master,而`hive-metastore`则配置了MySQL数据库来存储Hive的元...

    清华大学精品大数据实战课程(Hadoop、Hbase、Hive、Spark)PPT课件含习题(59页) 第3章 Hadoop数据库HBase.pptx

    - **列族(Column Family)**:数据按列族存储,同一列族下的所有列存储在一起,提高读取效率。 - **单元(Cell)**:由行键、列族、列修饰符唯一定位,每个单元包含多版本数据,版本通过时间戳区分。 - **时间戳...

    hbase-hadoop+database系统入门书籍

    根据提供的文件信息,我们可以总结出以下关于HBase与Hadoop结合使用的大数据系统入门的关键知识点: ### HBase简介 HBase是一种分布式、可扩展的列式存储系统,它基于Google的Bigtable论文设计并实现。HBase是...

    hadoop入门实战手册.pdf

    学习如何使用Hadoop首先应包括如何通过Hadoop的命令行接口与HDFS进行交互,如上传文件到HDFS、从HDFS下载文件、列出目录内容等操作。接着,要学习如何编写和运行MapReduce程序,理解其工作机制和如何调试MapReduce...

    Hadoop-win依赖资料

    9. **Hadoop生态环境**:Hadoop通常与一系列生态系统项目一起使用,如Hive(用于SQL查询)、Pig(数据分析)、Spark(快速计算框架)、HBase(NoSQL数据库)等。理解这些组件如何与Hadoop集成并协同工作。 10. **...

    hadoop插件winutils.exe

    winutils.exe通常与Hadoop的bin目录下的其他工具一起使用,如hadoop.dll和hadoop-config.cmd。在Windows上,由于缺乏类似于Linux的shell环境,winutils.exe提供了类似的功能,使得用户可以执行Hadoop命令行操作。 ...

    MapReduce入门程序

    完成代码编写后,使用Maven构建项目生成jar包,然后通过Hadoop命令行提交到集群上运行。运行命令通常类似于`hadoop jar your-jar-file.jar your-class-name input-file output-dir`,其中`input-file`是HDFS上的输入...

    Spark 编程指南简体中文版-102116341

    它可以与DataFrame和Dataset API一起使用,实现语言集成查询(LTIQ)。GraphX是Spark处理图形数据的库,支持图的创建、操作和算法应用,如Pregel API。 总的来说,Spark编程指南涵盖了Spark的核心组件和使用方法,...

    hadoop入门测试数据

    你可以编写Java程序或使用Hadoop命令行工具来操作这些数据,熟悉Hadoop环境的搭建和运行流程。 5. 实践项目:通过创建一个简单的MapReduce程序,对“data”中的数据进行统计分析,例如计算文件中单词的频率,或者找...

    Introduction of HBase

    除了命令行工具,HBase还有诸如HBase Shell、HBaseAdmin、Phoenix等管理和开发工具,以及Ambari、Cloudera Manager等可视化管理平台,方便用户对HBase集群进行监控和管理。 总之,HBase是应对大规模数据挑战的重要...

    Hadoop绝佳教程,不下后悔!

    包括HBase(分布式列式数据库)、Hive(数据仓库工具)、Pig(高级数据处理语言)、Spark(快速通用的大数据处理引擎)、Oozie(工作流调度系统)和Zookeeper(分布式协调服务)等,这些都是Hadoop生态系统中的重要...

    apache_drill_tutorial.pdf

    与传统的Hive不同,Drill不依赖MapReduce作业,并且它并不完全基于Hadoop生态系统。实际上,Drill的设计灵感来源于Google的Dremel概念,这是一种用于大规模数据查询的高效工具,后来演变为Apache软件基金会的一个...

    知识结构图(软件开发)

    学习Android需要掌握Activity、Intent、Service、Broadcast Receiver等核心组件,以及XML布局设计和Android Studio的使用。 Java作为一门广泛应用于服务器端和移动端的编程语言,其面向对象的特性、平台无关性以及...

    hadoop教学视频-shangxuetang

    在学习过程中,你将接触到诸如Shell命令行操作、Java编程、数据分片与复制、容错机制、资源调度等关键概念。同时,你还将了解到如何通过Hadoop的扩展性来适应不断增长的数据量,以及如何优化Hadoop集群的性能。 总...

    Hadoop入门实战手册 中文版)

    Hadoop用户需要熟悉HDFS的基本操作,如使用Hadoop命令行工具hadoop fs进行文件的上传、下载、删除和重命名等。此外,理解HDFS的数据块机制、副本策略以及数据读写的流程也是必要的。 四、MapReduce编程模型 ...

    hadoop的资源.zip

    2. HDFS操作:如何使用HDFS命令行工具进行文件上传、下载、查看、删除等操作,以及HDFS的副本策略和故障恢复机制。 3. MapReduce编程模型:理解Map和Reduce函数的工作原理,编写Java MapReduce程序,以及使用Hadoop...

    hbase入门到精通

    2. **HBase Shell**:提供了一个简单的命令行界面,适合日常管理任务。 3. **Thrift Gateway**:支持多种编程语言(如C++、PHP、Python等),增强了系统的互操作性。 4. **REST Gateway**:允许通过HTTP协议访问...

    Scala程序设计(第2版)英文原版Programming.Scala.2nd.Edition.2014.12.pdf

    Dean Wampler博士作为本书的作者之一,是Typesafe公司的大数据架构师,主要使用Scala、函数式编程、Spark、Hadoop和Akka构建数据中心工具和服务。他的其他作品包括《Java开发者函数式编程》的作者以及《Programming ...

Global site tag (gtag.js) - Google Analytics