制造业数据集成案例分享:3小时内实现MySQL到MySQL数据对接

fe50b61f55295b277b9a28f454bb3f5b.jpeg

ZZ刷新生产用料清单四化库存-制造一处-3小时:MySQL到MySQL数据集成案例分享

在现代制造业中,实时、准确的数据流动是确保生产效率和资源优化的关键。本文将分享一个实际运行的系统对接集成案例——“ZZ刷新生产用料清单四化库存-制造一处-3小时”,重点介绍如何通过高效的数据集成方案,将MySQL数据源中的信息无缝对接到目标MySQL平台。

本次集成任务主要面临以下技术挑战:

  1. 高吞吐量的数据写入能力:需要处理大量的生产用料清单数据,确保在短时间内完成数据写入操作。
  2. 定时可靠的数据抓取:每三小时从源MySQL数据库中定时抓取最新的用料清单数据,并同步到目标数据库。
  3. 实时监控与告警系统:提供集中监控和告警功能,实时跟踪数据集成任务的状态和性能,及时发现并处理异常情况。
  4. 自定义数据转换逻辑:根据业务需求,对抓取到的数据进行必要的转换和映射,以适应目标数据库的结构。
  5. 分页与限流处理:在抓取大批量数据时,需要合理设计分页机制和限流策略,以避免对数据库造成过大压力。

通过使用轻易云数据集成平台,我们能够充分利用其可视化的数据流设计工具,使得整个数据集成过程更加直观且易于管理。同时,通过API接口(如select用于获取数据,execute用于写入数据),实现了高效、稳定的数据传输。

接下来,我们将详细探讨具体的实施步骤及技术要点,包括如何调用MySQL接口进行数据获取与写入、如何处理分页与限流问题,以及如何确保在整个过程中不漏单、不丢失任何重要信息。 cd4cb573f2549f880be5bc86dbc9b430.jpeg

39dac48dde64805c1b1ed91dc16e6c00.jpeg

调用MySQL接口select获取并加工数据

在轻易云数据集成平台中,调用源系统MySQL接口进行数据获取和加工是生命周期的第一步。本文将详细探讨如何通过配置元数据来实现这一过程,并确保高效、可靠的数据集成。

配置元数据以调用MySQL接口

首先,我们需要配置元数据,以便能够正确地调用MySQL接口并获取所需的数据。以下是一个典型的元数据配置示例:

{ "api": "select", "effect": "QUERY", "method": "POST", "id": "生产用料清单明细内码", "request": [ { "field": "main_params", "label": "主参数", "type": "object", "describe": "...", ... } ], ... }

在这个配置中,api字段指定了我们要使用的API类型为select,而effect字段表明这是一个查询操作。通过这种方式,我们可以明确地告诉平台我们希望执行的是一个查询操作。

主参数与分页处理

为了确保查询结果的有效性和可控性,我们需要对查询结果进行分页处理。这可以通过设置limit和offset参数来实现:

  • limit: 用于限制返回的行数。例如,设置为1000表示每次查询最多返回1000行。
  • offset: 用于指定起始位置。例如,设置为20表示从第21行开始返回数据。

这些参数在请求体中的定义如下:

{ "field": "main_params", ... "children": [ { "field": "limit", ... "value": 1000 }, { "field": "offset", ... } ] }

通过这种方式,我们可以灵活地控制每次查询的数据量,从而避免一次性加载过多数据导致系统性能问题。

动态SQL语句绑定

为了提高查询语句的可读性和维护性,我们采用了动态字段绑定的方法。在主SQL语句中使用占位符(例如?)来替代具体的值,然后在执行查询之前进行参数绑定:

SELECT a.fmtono AS 计划跟踪号, b.FEntity_FEntryID AS 生产用料清单明细内码, b.fmaterialid2 AS 物料编号, b.FMustQty AS 需求数量, b.FPickedQty AS 已发数量, c.stock_numb AS 四化库存 FROM mbs_assemble_detail a LEFT JOIN mbs_assemble_material_detail b ON b.fmoentryid=a.fentryid LEFT JOIN wms_warehouse_store_info c ON c.part_no=b.fmaterialid2 AND c.mode_no=a.fmtono WHERE a.fstatus NOT IN ('5','6','7') AND a.fpickmtrlStatus<>'3' AND LEFT(b.fmaterialid2,4)='0501' AND c.matterial_type='4' AND (b.FMustQty-b.FPickedQty)=0 LIMIT ? OFFSET ?

这种方法不仅提高了代码的可读性,还增强了安全性,因为它避免了直接拼接字符串可能带来的SQL注入风险。

数据质量监控与异常处理

在实际操作过程中,确保数据质量和处理异常情况至关重要。轻易云平台提供了强大的监控和告警功能,可以实时跟踪任务状态和性能。一旦发现异常情况,如网络故障或数据库连接失败,可以及时触发告警并采取相应措施,例如重试机制或切换到备用方案。

此外,通过自定义的数据转换逻辑,可以根据业务需求对原始数据进行加工处理。例如,将某些字段格式化或计算衍生指标,以满足下游系统的要求。

实时监控与日志记录

为了确保整个过程透明且可追溯,轻易云平台提供了全面的日志记录功能。每个步骤都会生成详细的日志,包括请求参数、响应结果以及执行时间等信息。这些日志不仅有助于排查问题,还能用于后续分析和优化。

综上所述,通过合理配置元数据、采用分页处理、动态SQL绑定以及完善的数据质量监控与异常处理机制,可以高效、安全地实现从MySQL接口获取并加工数据,为后续的数据转换与写入奠定坚实基础。&nbsp;91c8629671943723bb1c06c45445f5a0.jpeg

d80642547a894f98806b3de45fc687c5.jpeg

集成方案: ZZ刷新生产用料清单四化库存-制造一处-3小时

在数据集成生命周期的第二步,我们需要将已经集成的源平台数据进行ETL(Extract, Transform, Load)转换,转为目标平台 MySQLAPI接口所能够接收的格式,并最终写入目标平台。以下是详细步骤和技术要点。

数据提取与转换

首先,从源平台提取数据。在本次集成任务中,主要字段包括生产用料清单明细内码和四化库存。这些字段需要被转换为目标平台MySQLAPI接口能够识别和处理的格式。

元数据配置中定义了一个主要请求参数main_params,其中包含两个子字段:FEntity_FEntryID和stock_numb。这两个字段分别对应于源平台的数据项生产用料清单明细内码和四化库存。

{ "field": "main_params", "label": "main_params", "type": "object", "children": [ { "field": "FEntity_FEntryID", "label": "FEntity_FEntryID", "type": "string", "value": "{{生产用料清单明细内码}}" }, { "field": "stock_numb", "label": "stock_numb", "type": "string", "value": "{{四化库存}}" } ] }

通过这样的配置,我们确保了源数据被正确映射到目标接口所需的字段上。

数据加载与写入

接下来,我们将转换后的数据加载并写入到MySQL数据库中。元数据配置中定义了一个SQL语句,用于更新MySQL数据库中的记录:

{ "field": "main_sql", "label": "main_sql", "type": "string", "value": "update mbs_assemble_material_detail set stock_numb=:stock_numb where FEntity_FEntryID=:FEntity_FEntryID" }

这个SQL语句使用了命名参数:stock_numb和:FEntity_FEntryID,确保了数据被准确地更新到指定记录中。

高吞吐量的数据写入能力

为了保证大量数据能够快速写入到MySQL系统中,轻易云数据集成平台支持高吞吐量的数据写入能力。通过批量处理和并行执行,可以显著提升数据处理的时效性。

实时监控与告警系统

在整个ETL过程中,实时监控和告警系统发挥着重要作用。通过集中监控,可以实时跟踪每个数据集成任务的状态和性能,及时发现并处理异常情况。例如,如果某条记录在写入过程中失败,可以触发告警,并根据预设的重试机制重新尝试写入。

数据质量监控与异常处理

为了确保数据质量,轻易云提供了强大的数据质量监控功能。通过自定义规则,可以对每条记录进行验证,确保其符合预期格式和业务逻辑。如果发现异常记录,可以自动触发异常处理流程,例如记录日志、发送告警邮件或短信等。

此外,为了应对可能出现的数据对接异常,还可以实现错误重试机制。当某次写入操作失败时,可以根据预设的重试策略重新尝试,直到操作成功或达到最大重试次数。

自定义数据转换逻辑

在实际业务场景中,不同系统之间的数据结构可能存在差异。因此,自定义数据转换逻辑是必不可少的一环。例如,在本次集成任务中,需要将源平台的字段名映射为目标平台所需的字段名,并进行必要的数据格式转换。

通过灵活配置自定义转换逻辑,可以适应不同业务需求,确保数据能够正确传输和存储。例如,可以使用脚本或函数对特定字段进行复杂计算或格式化处理,以满足业务要求。

结论

通过以上步骤,我们完成了从源平台到目标MySQLAPI接口的数据ETL过程。在此过程中,通过高效的数据提取、转换、加载,以及实时监控、异常处理等机制,确保了数据集成的准确性和可靠性,为业务应用提供了坚实的数据支持。&nbsp;5f864004c4ff9c8c2028c4965b39d754.jpeg

8562e82e8209d6b2901c6eb7a734ea0d.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/36281.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

OpenCV 图像基本操作

OpenCV快速通关 第一章&#xff1a;OpenCV 图像基本操作 第二章&#xff1a;OpenCV 图像基本操作 OpenCV 图像基本操作 OpenCV快速通关第二章&#xff1a;OpenCV 图像基本操作一、相关结构体与函数介绍&#xff08;一&#xff09;cv::Mat 结构体&#xff08;二&#xff09;cv:…

雨晨 2610(2)0.2510 Windows 11 24H2 Iot 企业版 LTSC 2024 极简 2in1

文件: 雨晨 2610(2)0.2510 Windows 11 24H2 Iot 企业版 LTSC 2024 极简 2in1 install.esd 索引: 1 名称: Windows 11 IoT 企业版 LTSC 极简 26100.2510 描述: Windows 11 IoT 企业版 LTSC 极简 26100.2510 By YCDISM RTM 2025 24-12-07 大小: 8,176,452,990 个字节 索引: 2 …

PHP保存base64编码图片,图片有一部分是灰色块儿,原因和解决办法

文章目录 场景原因解决方案完整的代码前端代码php代码 场景 我有个需求&#xff0c;移动端h5上传多张的图片。用input file可以上传多张&#xff0c;但是现在照片体积越来越大&#xff0c;同时上传多张会因为体积过大&#xff0c;导致上传失败。如果是小程序会好很多&#xff…

【CSP CCF记录】202212-2第28次认证 训练计划

题目 样例1输入 10 5 0 0 0 0 0 1 2 3 2 10 样例1输出 1 1 1 1 1 10 9 8 9 1 样例1解释 五项科目间没有依赖关系&#xff0c;都可以从第 1 天就开始训练。 10天时间恰好可以完成所有科目的训练。其中科目 1 耗时仅 1天&#xff0c;所以最晚可以拖延到第 10 天再开始训练&…

gitee

Git 是一个开源的 [ 分布式 ][ 版本控制系统 ] &#xff0c;用于敏捷高效地 处理任何或小或大的项目 Git 非常容易学习&#xff0c;低植入&#xff0c;高性能。因为拥有轻量的本地分支&#xff0c;易用的暂存区&#xff0c;和多工作流的特点&#xff0c;它超越了类似Subversio…

Spring——SpringBean初始接口

摘要 本文详细介绍了Spring框架中SpringBean的初始化接口和注解&#xff0c;包括BeanPostProcessor接口、InitializingBean接口和PostConstruct注解。文章解释了这些接口和注解的原理、作用、适用场景&#xff0c;并提供了示例代码。最后&#xff0c;对比了不同SpringBean初始…

「嵌入式系统设计与实现」书评:学习一个STM32的案例

本文最早发表于电子发烧友论坛&#xff1a;【新提醒】【「嵌入式系统设计与实现」阅读体验】 学习一个STM32的案例 - 发烧友官方/活动 - 电子技术论坛 - 广受欢迎的专业电子论坛!https://bbs.elecfans.com/jishu_2467617_1_1.html 感谢电子发烧友论坛和电子工业出版社的赠书。 …

操作系统——大容量存储结构

笔记内容及图片整理自XJTUSE “操作系统” 课程ppt&#xff0c;仅供学习交流使用&#xff0c;谢谢。 大容量存储结构概述 磁盘 磁盘为现代计算机系统提供大量外存。每个盘片为平的圆状&#xff08;类似CD&#xff09;&#xff0c;普通盘片直径为4.5~9.0厘米。盘片的两面都涂着…

Redis从入门到进阶(总结)

以下内容均以CentOS7为背景。 一、Redis安装及启动 mysql&#xff08;读&#xff1a;2000/s&#xff1b;写&#xff1a;600/s&#xff09; redis&#xff08;读&#xff1a;10w/s&#xff1b;写&#xff1a;8w/s&#xff09;通过官方给出的数据单机并发可以达到10w/s&#xf…

Java进阶(注解,设计模式,对象克隆)

Java进阶(注解&#xff0c;设计模式&#xff0c;对象克隆) 一. 注解 1.1 什么是注解 java中注解(Annotation)&#xff0c;又称java标注&#xff0c;是一种特殊的注释 可以添加在包&#xff0c;类&#xff0c;成员变量&#xff0c;方法&#xff0c;参数等内容上 注解会随同…

使用 Gin 框架构建 RESTful 博客 API

使用 Gin 框架构建 RESTful 博客 API 引言 在现代 Web 开发中&#xff0c;RESTful API 是一种非常流行的设计风格&#xff0c;它通过 HTTP 协议与客户端进行通信&#xff0c;提供了灵活且易于扩展的接口。Go 语言以其高效的并发处理能力和简洁的语法&#xff0c;成为了构建高…

Leecode刷题C语言之骑士在棋盘上的概率

执行结果:通过 执行用时和内存消耗如下&#xff1a; 代码如下&#xff1a; static int dirs[8][2] {{-2, -1}, {-2, 1}, {2, -1}, {2, 1}, {-1, -2}, {-1, 2}, {1, -2}, {1, 2}};double knightProbability(int n, int k, int row, int column){double dp[200][30][30];mem…

21. C++STL 7(8000字详解list及其迭代器的模拟实现)

⭐本篇重点&#xff1a;STL中的list及其迭代器的模拟实现和测试 ⭐本篇代码&#xff1a;c学习 橘子真甜/c-learning-of-yzc - 码云 - 开源中国 (gitee.com) 目录 一. list的节点 二. list的迭代器 2.1 迭代器框架 2.2 迭代器实现 三. list的实现 3.1 list的构造函数 3.…

Docker打包SpringBoot项目

一、项目打成jar包 在进行docker打包之前&#xff0c;先确定一下&#xff0c;项目能够正常的打成JAR包&#xff0c;并且启动之后能够正常的访问。这一步看似是可有可无&#xff0c;但是能避免后期的一些无厘头问题。 二、Dockerfile 项目打包成功之后&#xff0c;需要编写Doc…

零基础学鸿蒙开发--第九篇--网络请求

12. ⽹络请求 鸿蒙系统提供了 http 模块 ⽤于发送 http 请求&#xff0c;另外&#xff0c; OpenHarmony社区基于该模块将前端开发中常⽤的⽹络请 求库 axios 移植到了鸿蒙系统&#xff0c;因此我们也可以在鸿蒙系统中使⽤ axios 发送 http 请求&#xff0c;下⾯重点为⼤家介绍…

133.WEB渗透测试-信息收集-小程序、app(4)

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易锦网校会员专享课 上一个内容&#xff1a;132.WEB渗透测试-信息收集-小程序、app&#xff08;3&#xff09; 输入命令&#xff1a;…

Pointnet++改进71:添加LFE模块|高效长距离注意力网络

简介:1.该教程提供大量的首发改进的方式,降低上手难度,多种结构改进,助力寻找创新点!2.本篇文章对Pointnet++特征提取模块进行改进,加入LFE模块,提升性能。3.专栏持续更新,紧随最新的研究内容。 目录 1.理论介绍 2.修改步骤 2.1 步骤一 2.2 步骤二 2.3 步骤三 1.理…

Android仿美团左右联动购物列表

Android仿美团左右联动购物列表 左右联动购物列表&#xff0c;不难。 一、思路&#xff1a; 两个RecycleView 二、效果图&#xff1a; 三、关键代码&#xff1a; public class MainActivity extends AppCompatActivity {private RecyclerView rl_left;private RecyclerVie…

Mitel MiCollab 企业协作平台 任意文件读取漏洞复现(CVE-2024-41713)

0x01 产品简介 Mitel MiCollab是加拿大Mitel(敏迪)公司推出的一款企业级协作平台,旨在为企业提供统一、高效、安全的通信与协作解决方案。通过该平台,员工可以在任何时间、任何地点,使用任何设备,实现即时通信、语音通话、视频会议、文件共享等功能,从而提升工作效率和…

深度学习camp-第J3-1周:DenseNet算法 实现乳腺癌识别

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 我的环境 语言环境&#xff1a;Python 3.12编译器&#xff1a;Jupyter Lab深度学习环境&#xff1a;Pytorch 2.4.1 Torchvision 0.19.1数据集&#xff1a;乳腺…