Azkaban--使用实战--hive 调度 | 学习笔记

简介: 快速学习 Azkaban--使用实战--hive 调度

开发者学堂课程【Azkaban 大数据调度系统课程精讲Azkaban--使用实战--hive 调度学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/721/detail/12882


Azkaban--使用实战--hive 调度


自己执行 hive 的操作,启动 hive 服务器,远程机器上,比如机房中,客户端远程连接,自带客户端或者第三方客户端也可以连接,输入相关命令,show tables 是通过客户端 beeline,通过协议发送给 hive 服务器,cd hive 的安装目录下,在 hive bin 目录下查看,启动的 hive 服务叫 hiveserver2,客户端 beeline,还有一项命令是 hive

image.png

如果不加任何参数的执行 hive,它将会打开一个本地交互式的 hive 命令,输入 show tables 也可以返回相关的结果,第一个参数是-e,表明执行命令时后面可以跟 sql 语句,比如输入#./hive -e show tables;”,当再启动时它就不再进入交互式命令,而是在启动之后立马执行后面跟着的 sql 语句,执行以后返回结果,Time taken: 1.097 seconds Fetched: 2 row(s)执行完之后立马退出。

弊端是如果sql语句特别长,使用-f,可以把 sql 分装到 sql 文件中,比如 vim.test.aql,保存 show tables,再启动就不是-e,而是-f test.sql,也可以执行 hive,返回同样的结果。

打开参考资料,job 配置模版,hive 文件夹。

image.png

点击只执行一句 aql 的例子。

#hive. job

type command

command=/root/ apps/hive/bin/hive -e ' show tables'

image.png

执行一个 sq| 脚本文件的例子。在企业中直接把 sql 写在命令中,太多,单独编写 sq| 脚本。

use default; 切换到默认的数据库

drop table aztest; 删除表

create table aztest(id intname string) row format delimited fields terminated by ' ' ;创建表,分隔符为逗号

load data inpath' /aztest/hiveinput ' into table aztest ;加载数据

create table azres as select id from aztest ;再创建一个表来自于查询 aztest 语句中 id 结构和内容返回创建的表

insert overwrite directory '/aztest/hiveoutput' select count(l) from aztest;把数据导出到 aztest/hiveoutput 路径下,统计 aztest 基准数

image.png

生活中有大量的逻辑,都可以写在 sql 语句中,注意不同语义之间用分号分割。

查看配置有无问题,路径要保持一致,把配置文件连同 hivesql 脚本一起 zip 压缩,命名为 hivesql

image.png

打开 azkaban 工程页面,重新创建新的 project 工程。

image.png

选择上传 hivesql.zip 压缩文件。

image.png

准备相关的数据,创建表时需要加载数据,准备路径,有两个字段分别是 ie name,分隔符为逗号,输入vim.1.test。选择三个数据,上传到创建的文件,上传完后意味着 sql 执行的文件已经有了,立即咨询,点击 execute flow

image.png

点击右下角 execute

image.png

显示 running 正在运行,hive 需要咨询一段时间,当中有很多语句,而且语句还需要咨询代码程序,比如创建表时,到处数据都需要代码程序,也可以打开当前正在执行的代码程序,可以发现第一个是创建表时的代码程序。

image.png

再刷新,第二个代码程序出来。数据导出时也执行代码程序。

image.png

如果出错,可以看日志,也可以在 azkaban job list 中查看相关日志。

image.png

刷新,可以看到已经成功。

image.png

如果出错,根据日志进行排查。最终导出得到是 select count(1) from aztest;语句,针对 aztest 做统计记录,最终路径下的文件里面应该是三,返回做刷新 go,下载。

image.png

打开文件,里面是个3,说明整个执行语句没有问题。

image.png

如果不确定也可以输入 show tables 查看,注意一定是英文状态下的分隔符,最后的内容是三个文件,这样就完成了利用 azkaban hivesql 的调度,整个突破点就是hive命令。

3、创建 job 描述文件和 Rive 脚本

Hive 脚本:test. sql

use default;

drop table aztest;

create table aztest(id int name string) row format delimited fields terminated

by'';

load data inpath' /aztest/hiveinput' into table aztest;

create table azres as select * from aztest;

insert overwrite directory' /aztest/hiveoutput' select count(1) from aztest;

Job 描述文件:hivef. job

# hivef. job

type=command

command=/home/hadoop/apps/hive/bin/hive -f ' test. sql'

将所有 job 资源文件打到一个 zip 包中创建工程并上传 zip 包,启动 job

4azkaban 调度总结

1理论上任何一款软件,只有可以通过 shell command 执行都可以特化成zkaban 调度执行

2type=command  command = sh xx.sh

只要能够深入执行,把它放入脚本中都可以执行。在企业中,如果涉及到其他的软件,需要借助到 azkaban 执行,就去考虑能不能 show 执行,转化成 azkaban 进行执行,这就是各种任务的调度配置。

相关文章
|
SQL Java 大数据
Hive实战(03)-深入了解Hive JDBC:在大数据世界中实现数据交互
Hive实战(03)-深入了解Hive JDBC:在大数据世界中实现数据交互
606 1
|
SQL HIVE
71 Azkaban HIVE脚本任务
71 Azkaban HIVE脚本任务
63 0
|
SQL 分布式计算 大数据
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 入门
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 入门
154 0
|
SQL 存储 大数据
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 语法与概念
黑马程序员-大数据入门到实战-分布式SQL计算 Hive 语法与概念
142 0
|
6月前
|
SQL 分布式计算 数据库
【大数据技术Spark】Spark SQL操作Dataframe、读写MySQL、Hive数据库实战(附源码)
【大数据技术Spark】Spark SQL操作Dataframe、读写MySQL、Hive数据库实战(附源码)
249 0
|
6月前
|
SQL 数据采集 存储
Hive实战 —— 电商数据分析(全流程详解 真实数据)
关于基于小型数据的Hive数仓构建实战,目的是通过分析某零售企业的门店数据来进行业务洞察。内容涵盖了数据清洗、数据分析和Hive表的创建。项目需求包括客户画像、消费统计、资源利用率、特征人群定位和数据可视化。数据源包括Customer、Transaction、Store和Review四张表,涉及多个维度的聚合和分析,如按性别、国家统计客户、按时间段计算总收入等。项目执行需先下载数据和配置Zeppelin环境,然后通过Hive进行数据清洗、建表和分析。在建表过程中,涉及ODS、DWD、DWT、DWS和DM五层,每层都有其特定的任务和粒度。最后,通过Hive SQL进行各种业务指标的计算和分析。
966 1
Hive实战 —— 电商数据分析(全流程详解 真实数据)
|
6月前
|
SQL 运维 调度
【Hive】运维如何对hive进行调度?
【4月更文挑战第14天】【Hive】运维如何对hive进行调度?
|
6月前
|
SQL JSON 算法
hive学习笔记
hive学习笔记
|
6月前
|
SQL 分布式计算 Hadoop
Hadoop学习笔记(HDP)-Part.15 安装HIVE
01 关于HDP 02 核心组件原理 03 资源规划 04 基础环境配置 05 Yum源配置 06 安装OracleJDK 07 安装MySQL 08 部署Ambari集群 09 安装OpenLDAP 10 创建集群 11 安装Kerberos 12 安装HDFS 13 安装Ranger 14 安装YARN+MR 15 安装HIVE 16 安装HBase 17 安装Spark2 18 安装Flink 19 安装Kafka 20 安装Flume
201 1
Hadoop学习笔记(HDP)-Part.15 安装HIVE
|
6月前
|
存储 SQL 分布式计算
Hadoop(HDFS+MapReduce+Hive+数仓基础概念)学习笔记(自用)
Hadoop(HDFS+MapReduce+Hive+数仓基础概念)学习笔记(自用)
530 0

热门文章

最新文章