NIFI关于Variables的使用

本文介绍了NIFI中变量(variables)和参数(parameters)引用的区别,变量使用${变量名}形式引用。详细说明了添加Variables的步骤,还以添加DBCPConnectionPool控制器服务为例,测试变量是否生效,最后介绍了校验变量的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明

NIFI中的变量(variables)和参数(parameters)在引用的时候是有区别的。

参数的引用是使用#{参数名}的形式。

变量是使用${变量名}的形式来引用。

nifi版本:1.23.2(docker镜像)

Variables:出于兼容性目的,仍支持通过变量和 nifi.properties 文件的自定义属性,和参数的功能不同,变量不支持敏感属性,变量值不能引用其他变量或使用表达式语言。变量和属性将在未来的版本中删除。因此强力推荐使用参数(Parameter Contexts)。

关于参数的使用可以参考:NIFI关于Parameter Contexts的使用

添加Variables

在画布空白位置鼠标右键,选择Variables

在弹出的页面点击右上角的+添加需要的变量

这里以添加MySQL相关参数为例,输入变量名和对应的值

 添加完成后,最后点击APPLY。我这里添加了5个变量

右侧四个分表代表的含义

Variables:当前变量的名称

Referencing Processors :被哪个处理器引用,这里就会显示对应的名称

Referencing Controller Services :被哪个控制器服务引用

Unauthorized Referencing Components :被哪个未授权的组件引用

 点击APPLY后会对当前的变量进行以下几个步骤的处理:

确定受影响的组件=>停止受影响的处理器=>禁用受影响的控制器服务=>应用更新=>启用受影响的控制器服务=>重启受影响的处理器。每次更新变量的时候都会执行以上几个步骤。

测试变量是否生效

添加DBCPConnectionPool控制器服务

以添加DBCPConnectionPool为例测试刚才添加的MySQL变量,在画布空白位置鼠标右键选择Configure,然后在弹出的页面点击右上角的加号+

在新的页面中筛选出DBCPConnectionPool,最后点击ADD添加控制器服务

 点击刚才新添加的控制器服务右侧的小齿轮,开始配置

在弹出的页面切换到PROPERTIES页面,分别配置以下几个属性的值,Password因为是敏感属性,所以填入值之后是不会显示的,变量的引用要使用${变量名}的形式

校验变量是否生效

点击控制器服务右上角的验证属性是否有效,在弹出的页面直接点击VERIFY进行验证

如果验证失败的话会有报错提示,根据报错提示修改即可

所有项全部验证通过会显示绿色对钩

结束语

以上便是NIFI中关于Variables(变量)的使用,如果有问题欢迎大家评论。

### Doris 数据库备份的最佳实践 #### 背景介绍 Doris 是一种高性能的分布式数据分析型数据库,其 MPP 架构和列式存储设计使其非常适合复杂的 OLAP 查询场景[^3]。然而,在实际生产环境中,为了保障数据的安全性和可靠性,定期进行数据备份是非常重要的。 #### 备份方法概述 Doris 提供了多种方式来实现数据备份,主要包括手动导出、快照备份以及通过外部工具完成增量或全量备份等方式。以下是几种常见的备份方案: 1. **使用 Broker Load 导出数据** Doris 支持通过 Broker Load 将表中的数据导出到 HDFS 或其他支持的对象存储系统中。这种方式适用于需要长期保存的历史数据备份。 ```sql LOAD LABEL example_db.label_1 ( DATA INFILE("hdfs://path/to/file") INTO TABLE target_table ) WITH BROKER ( "username"="your_username", "password"="your_password" ); ``` 此外,还可以利用 `EXPORT` 命令将指定表的数据导出至文件系统中[^4]。 2. **快照备份 (Snapshot Backup)** Doris 集群内部提供了基于 BE 存储节点上的快照功能。管理员可以直接操作 FE 的元数据服务,触发一次完整的快照过程。此方法的优点在于无需额外占用计算资源即可快速生成一致性副本。 快照的具体命令如下所示: ```bash ./doris-fe --snapshot /path/to/snapshot_dir/ ``` 3. **第三方工具集成** 对于更加灵活的需求,可以借助开源项目如 Apache Nifi 或 DataX 来构建定制化的 ETL 流程,从而实现定时自动化的跨平台迁移与同步任务管理[^1]。 #### 注意事项 - 在规划任何类型的备份计划之前,请务必确认当前系统的负载情况以及磁盘剩余容量是否充足; - 如果涉及到大规模删除操作,则建议启用 Online DML 功能以减少潜在风险并维持业务连续性; - 定期测试恢复流程的有效性同样重要,只有经过验证后的备份才是可靠的。 ```python import pymysql # 连接示例代码片段 connection = pymysql.connect( host='localhost', user='root', password='', database='example' ) try: with connection.cursor() as cursor: sql = 'SHOW VARIABLES LIKE "%backup%"' cursor.execute(sql) result = cursor.fetchall() finally: connection.close() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值