shell脚本执行hive命令传值给sql文件、shell传参

海豚调度DolphinScheduler实战:Shell节点高效调用SQL脚本并实现动态传参 本文详细介绍了如何利用海豚调度DolphinScheduler的Shell节点高效调用SQL脚本并实现动态传参。通过创建SQL资源文件、Shell节点调用技巧及动态参数传递方法,帮助用户解决数据处理中的灵活性问题,提升工作效率。特别适用于需要定期执行动态SQL查询的业务场景。 阅读详情

 

使用场景,大数据平台azkaban任务中通过shell脚本调用sql文件(尤其是调用多个sql时),希望可以传参到sql文件中

方法:本例以sh调用hive命令执行sql为例,道理相同

1、sh 文件中执行hive -f 命令 将inputdate传给sql文件使用 如下

hive -hiveconf input_date=`date +%Y-%m-%d` -f dm_f_count_assigned_user.sql

sh中 用 -hiveconf input_date=`date +%Y-%m-%d` 这个变量去传值

如果此处执行多次语句 也可以将input_date 作为变量提出来

2、sql文件 获取input_date

ALTER TABLE hive_dm.dm_f_count_assigned_user DROP IF EXISTS PARTITION (date_calculated='${hiveconf:input_date}');

sql中 用' ${hiveconf:input_date}' 来接收

 

提示,可以同时传多个值

      -hiveconf input_date=`date +%Y-%m-%d`

      -hiveconf usename=`groot`

      -hiveconf password=`qwertyu596`

 

取值

     '${hiveconf:input_date}'

     '${hiveconf:usename}'

     '${hiveconf:password}'

 

此处取值使用了 单引号,因为我想要字符串类型的值,也是大家最常用的。根据个人需要吧,如果你传的是int类型,取值时不使用单引号,应该可以直接取到int类型,直接进行大小比较,计算之类的。。。哈哈  这个没去细细研究。

hive/shell:变量:基本使用 1.shell脚本执行hive的sql文件的方式 shell脚本test.sh: #! /bin/bash start_date=$1 end_date=$2 company=$3 while [ "$start_date" -le "$end_date" ]; do current_date=`date -d "$start_date" +%Y-%m-%d` echo $compa... 阅读详情

相关推荐

别再手动执行SQL了!用DolphinScheduler的Shell节点调用.sql文件,实现自动化调度(附传参实战)

本文详细介绍了如何利用DolphinScheduler的Shell节点实现SQL文件的自动化调度,包括环境准备、SQL文件管理、参数传递技巧及生产环境最佳实践。通过海豚调度系统,开发者可以高效调用.sql文件并实现参数化,大幅提升数据开发和运维效率。

weixin_26757925的博客 477

shell 动态执行sql脚本

shell 动态执行sql脚本

qq_19550657的博客 400

Hive/Spark-SQL 命令行全解:-e/-f/-d 传参、特殊字符处理、sed 替换、Shell 并行执行

本文全面解析Hive/Spark-SQL命令行客户端(CLI)的生产级使用指南。重点包括:1)核心命令-e/-f的适用场景与区别;2)反斜杠转义的关键避坑点;3)两种参数传递方式(-d变量与Shell变量);4)辅助参数-S/-v的使用场景;5)sed批量修改SQL文件技巧;6)Shell并行执行优化方法。文章提供可直接复用的生产案例,涵盖从基础执行到高级优化的完整解决方案,特别强调正则转义、参数传递等高频问题的处理方案,帮助开发者提升数仓任务执行效率与稳定性。

. 9259

shell脚本配置hive连接mysql

脚本外已经安装好了的MySQL数据库并设置了用户名和密码,导入了jdbd的罐子包,初始化了蜂巢-site.xml中配置文件,本脚本可使没有相关经验的人也能进行“傻瓜式”的安装 脚本思路分两步: 如图1所示,根据输入的用户名密码自动修改蜂房-site.xml中配置文件参数 2,脚本内运行蜂房,并检查的MySQL中是否存在蜂巢元数据库对应的表,判断后直接返回成功或者失败的汉字标识     r...

weixin_42240930的博客 1187

Windows版本Carla(含RoadRunner插件)源码安装+RoadRunner地图导入

通过跳转浏览器账号密码登录github,不要选择Fine-grained personal access tokens,在git clone时会显示非授权,也不要使用Windows凭据!核心指令:编译PythonAPI–make PythonAPI,,编译Server–make launch,封装”游戏“–make package。完成安装后,在已安装->2022版本右侧->更多->导入配置,选择配置文件(需将配置文件内容更新为手册内容,如下图)->详细信息,更新。不要修改版本,执行上面指令即可!

winnizap的博客 1467

《哥谭神话-工程篇》01.Palantir 平台架构解析-混乱数据如何转化唯一真相源?

Palantir 平台的架构哲学可以概括为将洞察落地为行动,其核心是将“获取唯一真相”能力深度嵌入现有的、复杂的工作流程中,成为提升运营效率和决策质量的倍增器。

897

Hive-shell脚本形式执行HSQL

Hive-脚本形式提交hive查询 接上文Mac-单机Hive安装与测试,文中最后将本地文件load到了hive 表中,下面对该表清洗,以shell脚本形式提交,清洗所用的HSQL脚本。 建立目标表 例如要清洗出的字段如下表 use hive_test; CREATE EXTERNAL TABLE fact_XXX_log( time_stamp string COMMEN

hjw199089的博客 3454

中微8S6990外设开发实战:从GPIO配置到低功耗休眠的完整指南

本文提供了中微8S6990增强型8051单片机从GPIO配置到低功耗休眠的完整实战指南。详细讲解了开发环境搭建、GPIO灵活配置、定时器中断、ADC采样优化、PWM电机控制等核心外设的编程要点与避坑技巧,并重点阐述了实现超低功耗休眠的系统性外设管理策略,帮助开发者快速上手并优化产品续航。

weixin_29162439的博客 533

shell中循环调用hive sql 脚本

hive-S-e'uselogdb;showtables;'>table.txt whilereadtable do echo$table hive-S-e"uselogdb;showcreatetable$table" done<table.txt 脚本tt.sh的内容如下: #!/bin/bash params=$1 for ...

maenlai0086的博客 2693

【学习系列】SAP RAP 8:行为定义-Authorization Control

本文介绍了SAP RAP中的授权控制实现方法,主要分为读取操作和修改操作两种场景。读取操作通过ABAP CDS的数据控制语言(DCL)实现,使用访问控制对象限制数据可见范围;修改操作则通过行为定义中的权限检查,包括全局授权、实例授权和预检查三种方式。文章详细说明了如何使用DCL创建访问控制规则,并通过实例演示了全局授权和实例授权的代码实现方法,以及预检查功能在数据更新前的权限验证。这些授权控制机制共同确保用户只能访问和操作其权限范围内的数据,有效保障系统安全性。

DeveloperMrMeng的博客 436

【MATLAB例程】基于TDOA定位(两步最小二乘)的三维轨迹定位和UKF滤波,TDOA的锚点可以自适应,附完整代码

该代码实现了一种**融合TDOA(到达时间差)定位与无迹卡尔曼滤波(UKF)**的动态目标轨迹跟踪方案,适用于三维空间中的移动目标定位与滤波。TDOA定位:通过两步加权最小二乘法(TS-WLS)解算目标位置。UKF滤波:对定位结果进行非线性滤波,抑制噪声并提升轨迹平滑性。多维度误差分析:对比滤波前后误差,评估算法性能。

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 675

shell 执行代码 进入hive_shell中循环调用hive sql 脚本的方法

脚本tt.sh的内容如下:#!/bin/bashparams=$1for param in $paramsdoecho $paramdone运行方式为:sh tt.sh "1 2 3 4 5"输出为:12345所以参考上面的命令,可以把hql的脚本写为如下方式,就可以循环执行sql:功能:查找字符串 comments 中的param第一次出现的位置 ,返回的是位置数字#!/bin/bashpara...

weixin_42347535的博客 442

059、RealBasicVSR 实战:真实场景视频超分的退化建模与优化技巧

本文分享了RealBasicVSR在真实场景视频超分中的实战经验。针对传统方法假设理想化下采样导致的性能瓶颈,重点阐述了三个关键技术点:1)通过可学习退化编码器建模复杂未知退化过程,避免手动设计退化参数的局限;2)采用双向传播和DCN对齐增强时序一致性;3)组合多种损失函数并优化训练策略(如余弦退火学习率、随机退化增强)。作者结合项目实践指出了显存管理、训练时长、评估指标等常见问题,并给出实用建议:优先验证数据退化复杂度,重视数据预处理,合理调整超参数。文章强调真实场景视频超分的核心在于让模型自适应未知退化

ai技术增长的博客 180

海豚dolphinscheduler 通过shell 调用.sql文件 传参

dolphinscheduler 海豚调度器 通过shell节点 调用.sql文件

超的专栏 5289

论文翻译:Automatic Lesson Plan Generation via Large Language Models with Self-critique Prompting

在本文中,我们利用大型语言模型(LLMs)的理解和生成能力来自动生成定制化的课程计划。这解决了传统计划可能无法充分满足不同教学环境和学生群体的特定需求的常见挑战。我们提出了一个新颖的三阶段过程,包括使用检索增强生成(RAG)逐步生成课程计划的每个关键组成部分,通过LLMs进行自我批评,以及随后的细化。我们使用这种方法为小学2至5年级生成了涵盖80多个主题的数学课程计划。邀请了三位经验丰富的教育工作者制定全面的课程计划评估标准,然后使用这些标准将我们的LLM生成的课程计划与同一主题的实际课程计划进行基准比较。

CSPhD-winston的博客 1101

基于Simulink进行步进电机的重复控制仿真建模

重复控制概述目的:通过引入一个周期延迟环节来补偿系统的周期性误差,从而提高系统对周期性参考信号或扰动的跟踪性能。方法内部模型原理:在控制器中嵌入一个与周期性信号相关的模型(例如周期延迟环节),以实现对周期性误差的零稳态误差控制。滤波器设计:为了避免高频噪声放大,通常会在重复控制器中加入低通滤波器。优势对周期性信号具有良好的跟踪性能。不需要精确的数学模型即可实现高性能控制。挑战:需要合理设计重复控制器的参数以避免系统不稳定。

amy_mhd的博客 268

hive传递参数与调用(hive SQL 脚本传参)

在运行hive命令时传入参数,使用-hivevar 和 -hiveconf 两种参数选项,来给此次的执行脚本传入参数 -hivevar : 传参数 ,专门提供给用户自定义变量。 -hiveconf : 传参数,包括了hive-site.xml中配置的hive全局变量。 (1)脚本调用 test.sql use default; select '${hiveconf:month}' as month from default.user1; start.sh #!/bin/sh #ecoding=utf-8

ChengYanan的博客 7444

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

hive sql 怎么实现循环_shell 传参实现hive循环跑数

在自动调度系统没有建设成熟的环境里,数据分析师如果要提取历史很长一段时间数据,且代码比较复杂,常规操作需要我们手动执行;但是借助shell传参给hive,可以实现hive自动循环跑数,减少手动执行,大幅提升效率。以下两段code为例,说明一下跑数时间长度为每天和时间长度为一段时间两种执行情况。1、跑数时间为每天start_date=20180101end_date=20180131while [[...

weixin_39670246的博客 1578

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Hive脚本及动态传参

一、Hive参数 [root]# hive -help -d,--define <key=value> Variable subsitution to apply to hive commands. e.g. -d A=B or --define A=B --database <databasename> Specify the database to use -e <

hyj 1751

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

使用shell批量导出hive表结构

方式一:创建shell脚本hive1.sh:,通过传参导出指定库的表结构: #!/bin/bash DATABASE=$1 hive -e “use ${DATABASE}; show tables;” > ${DATABASE}_tables.txt sleep 1 cat ${DATABASE}_tables.txt | while read eachline do hive -e “s...

cici_104的博客 3175

hive SQL文件动态传参和SQL语句传参

hive SQL文件动态传参和SQL语句传参

qq_46183404的博客 976

Hive执行脚本时传参

使用-hiveconf传参 测试脚本 -- test.sql select 'Start Testing ...'; select ${hiveconf:day}, '${hiveconf:url}'; select 'Test End!'; 命令行 hive -hiveconf day=20180716 -hiveconf url='www.baidu.com' -S -f t...

秋人别院 5549

hive 脚本传参

hive 脚本传参

呼呼的博客 679

Hive的运行方式

在hive的client中运行 1. 本地模式下使用hive进行client 2. 远程模式下使用beeline工具进入client 3. 远程模式下使用hive进入client 在linux中执行hql命令 入门例子.如下,执行完成后又会返回linux命令行 [root@mycp01 tmp]# hive -e 'select * from emp' 7369 SMITH CLERK 7902 1980-12-17 800.0 NULL 20 7499 AL

鸭梨的博客 486

Impala-shell -f SQL脚本传参数

SQL脚本如下: insert overwrite dwd.dwd_sensors_share_event_p partition(`year`,`month`,`day`) select `date`,share_type,url,share_user_id,share_result,site_resource,is_employee, replace(regexp_extract(url,'p-\\w+',0),'p-','') as sku_id, replace(regexp_extract(url

ChengYanan的博客 2479

Shell脚本给Datax的job文件传参

当前有一个需求,读取HDFS中的分区数据,然后将数据写入到MongoDB。 由于要求每次导入Mongo的是增量的数据,但HDFS中没有相应的字段对数据进行标识哪些是新增的。需要依据相应的策略去判断相应的增量数据。 通过Hive的SQL将每天的全量数据与历史的增量数据进行关联(LEFT OUTER JOIN)where条件是右表的关联字段IS NULL,而关联条件是基于判重的字段组合生成M...

为一个人走几座城 4993
上一篇: Hive hdfs Exception:Name node is in safe mode.及Access denied for user root. Superuser privile问题解决方法
下一篇: maven导出项目依赖的jar包
grootblockchain
博客等级 码龄11年 55粉丝 101原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值