Apache Hadoop:创建第一个HIVE脚本

时间:2020-02-23 14:33:25  来源:igfitidea点击:

与其他语言(例如SQL,Unix Shell等)中的脚本一样,Hive脚本用于集体执行一组Hive命令。
这有助于减少手动编写和执行每个命令所花费的时间和精力。
该教程 是编写和执行第一个Hive脚本的循序渐进教程。

Hive支持Hive 0.10.0及更高版本的脚本。
预先安装的Hive 0.10.0附带了针对hadoop(CDH4)快速VM的Cloudera发行版(CDH3演示VM使用Hive 0.90,因此无法运行Hive脚本)。

执行以下步骤来创建第一个Hive脚本:

第一步:编写脚本

在Cloudera CDH4发行版中打开一个终端,并提供以下命令来创建Hive脚本。

命令:

gedit sample.sql

Hive脚本文件应以.sql扩展名保存以启用执行。

编辑文件并编写一些将使用此脚本执行的Hive命令。

在此示例脚本中,我们将创建一个表,对其进行描述,将数据加载到表中并从该表中检索数据。

  • 在Hive中创建"产品"表:

命令:

create table product ( productid: int, productname: string, price: float, category: string) rows format delimited fields terminated by ‘,’ ;

{productid,productname,price,category}在这里是" product"表中的列。

"以','终止的字段"表示输入文件中的列由','分隔符分隔。
我们也可以使用其他定界符。
例如,输入文件中的记录可以用换行符("")分隔。

  • 描述表:
命令:  describe product;
  • 将数据加载到表中:

要将数据加载到表中,请创建一个输入文件,其中包含需要插入表中的记录。

命令:sudo gedit input.txt

如图所示,在输入文本文件中创建一些记录。

命令:将数据本地路径" /home/cloudera/input.txt"加载到表产品中;

  • 检索数据:

要检索数据,请使用select命令。

command:  select * from product;

上面的命令将从表" product"中检索所有记录。

保存sample.sql文件并关闭编辑器。
现在我们可以执行第一个Hive脚本了。

步骤2:执行Hive脚本

使用以下命令执行配置单元脚本:

命令:hive –f /home/cloudera/sample.sql

在执行脚本时,请确保提供了脚本位置的完整路径。
由于示例脚本位于当前目录中,因此我没有提供脚本的完整路径。