Azure Data Factory (ADF)‌ 之databricks使用

目录

一、背景

二、实操

1.传变量

2.传参数


一、背景

实现目标:adf变量及参数传送到databricks使用

二、实操

1.传变量

(1).adf里新建管道,新建【设置变量】

示例:

设置管道变量

biz_date:@{addDays(convertFromUtc(utcNow(), 'China Standard Time'),-1,'yyyyMMdd')}

biz_date_new:@{addDays(convertFromUtc(utcNow(), 'China Standard Time'),-1,'yyyy-MM-dd')}

(2).插入【笔记本】

配置服务

设置中添加笔记本路径

配置基参数

biz_date:@variables('biz_date)

biz_date_new::@variables('biz_date_new')

databricks【笔记本】-【sql】组件中直接使用变量即可

sql 复制代码
select '${biz_date}';
select '${biz_date_new}'

2.传参数

新建参数

新建notebook

配置服务

设置笔记本路径

设置基参数

biz_date:@pipeline().parameters.biz_date

databricks【笔记本】-【python】组件使用参数

python 复制代码
# 1. 接收来自 ADF 的变量
biz_date = dbutils.widgets.get("biz_date")

# 2. 
sql_query = f"""
    SELECT count(*) as total_count 
    FROM table_name
    WHERE biz_date = '{biz_date}' 
"""

# 3. 执行 SQL 并获取结果
# .collect()[0][0] 表示取第一行第一列的值
result_df = spark.sql(sql_query)
count_value = result_df.collect()[0][0]

# 4. 返回给 ADF
dbutils.notebook.exit(str(count_value))
相关推荐
denggun12345几秒前
信号量(DispatchSemaphore vs AsyncSemaphore)、swift协作式线程池 and python信号量
开发语言·python·swift
凤山老林4 分钟前
Spring Boot 集成 ShardingSphere-Encrypt 实现字段级实时脱敏
java·spring boot·后端·数据脱敏
vipxieliang4 分钟前
ValidX v1.2.0 更新日志
java·后端
阿童木写作12 分钟前
跨马翻译:AI批量图片翻译工具,视频字幕翻译与智能抠图一站式解决
大数据·人工智能·python·音视频
Zane199412 分钟前
只改一个方向的引用,循环引用就能立刻被回收?一文讲透 weakref 弱引用
后端·python
长大198812 分钟前
窗口函数用不好反而更慢?SQL Server中OVER子句的4个性能陷阱
后端
大黄评测12 分钟前
MERGE语句有Bug?SQL Server官方不推荐的背后真相与替代方案
后端
长大198814 分钟前
TempDB 爆满导致系统卡死?SQL Server TempDB 瓶颈诊断与根治方案
后端
lichenyang45317 分钟前
从「房间」到「实时通知」:用 NestJS + Socket.IO 实现团队邀请的完整工程实践
前端·后端
大黄评测17 分钟前
为什么你的SQL查询慢?这7个执行计划陷阱90%的人都踩过
后端