FineDataLink实战案例分享【2024-08-27周】

楼主
我是社区第567266位番薯,欢迎点我头像关注我哦~

1、FDL最佳实践

1.1 PI数据库API循环取数

1)什么是PI数据库

PI 数据库是由美国 OSIsoft 公司开发的一种适用于实时数据管理的系统。它提供了高性能的数据采集、存储和检索服务,通常用于工业自动化、过程控制、能源管理等领域。

2)取数方式

PI Web API 是 PI System 提供的基于 Web 的应用程序编程接口(API),允许开发人员通过网络请求的方式访问 PI 数据,并与 PI System 进行集成。

PI Web API 支持常见的网络协议,如 HTTP 和 HTTPS,可以使用各种编程语言和开发框架来发出请求并处理响应。使用 PI Web API 时,开发人员可以使用认证方式获得对 PI 系统的访问权限,并通过发送适当的 HTTP 请求来获取数据、执行操作或执行其他功能。

PI Web API 的返回结果通常以常见的数据格式,如 XML 或 JSON 格式进行表示,以便可以轻松地进行解析和处理。

3)取数思路

在 PI 系统中,每个装置都有对应的位号,位号不能直接取值,需要用位号获取对应的 web_id ,再用 web_id 通过 API 取数的方式,返回需要的值。

注:装置对应的位号与 WEBID 可能存在变化,所以每次取数前需要进行更新。

4)参考文档

详情请参见:PI数据库API循环取数

1.2 多个逗号分隔的字段按照分组顺序匹配

应用场景:

从接口取数后,数据保存格式为:{{主数据},{子数据1,子数据2}{子数据a,子数据b}};其中,子数据中包含多个字段,以逗号分割存储。如下图所示:

实际业务场景中,每个子数据相当于一个分组,希望所有子数据按照分组内的数据顺序进行匹配(上图相同颜色的在同行展示)。希望得到的数据如下图所示:

使用两个「字段拆行」算子分别拆分职务分公司字段时,出现笛卡尔积。如下图所示:

黄色标记的字段非实际需要数据。

参考文档:

详情请参见:多个逗号分隔的字段按照分组顺序匹配

2、功能使用指导

2.1 FineDataLink与Kettle的区别

很多新手用户使用 FDL 前,想了解 FDL 与 Kettle 的区别,可参见文档:FineDataLink与Kettle的区别

2.2 「包含」和「属于」的区别

应用场景:

条件判断逻辑说明 文档中,简单介绍了属于不属于包含不包含这四种条件判断逻辑;很多用户不清楚属于包含不属于不包含的区别,本文将对此进行详细解释。

参考文档:

详情请参见:「包含」和「属于」的区别

2.3 不同写入方式效果说明

应用场景:

数据同步-写入方式 文档中,介绍了三种写入方式:直接将数据写入目标表清空目标表,再写入数据基于标识字段,新增/修改/删除数据

本文为您展示这三种写入方式的实际效果。

参考文档:

详情请参见:不同写入方式效果说明

 

 

 

 

 

分享扩散:

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0回帖数 1关注人数 1192浏览人数
最后回复于:2024-8-27 16:54

返回顶部 返回列表