Streamsets实战系列(二) -- 采集第三方https接口数据并入库

1、业务背景

上一篇文章中,我们介绍了如何利用streamsets的组件实时采集日志信息并入库的实现方案,本文我们将继续探讨streamsets其他组件的强大功能。

日常开发中,我们经常会对接一些第三方接口数据,进行业务处理后进行存储的过程。其实通过正常的业务代码也可以轻松实现,比如引入第三方的sdk包,或者通过接口调用的形式进行访问。本文主要是通过ETL工具演示下streamsets如何不用写一行业务代码实现自动化采集的过程。

Talk is cheap, Actions speak louder than words。好了,开始我们的表演

2、流程实现

采集第三方https接口数据并入库时,流程的完整管道示意图如下所示:

具体实现按照以下步骤进行操作:

2.1 创建管道任务

在SDC中创建一个新的Pipeline,创建过程如下图

成功后进入如下页面

2.2 选择源并添加配置信息

第三方接口的配置信息,高级配置部分使用默认值即可

数据格式配置

2.3 流程选择器配置

该配置的作用是进行数据格式转换,由于list的数据结构在streamsets中不好处理,此处使用该组件将上游的list数据集合转换成便于处理的map数据格式,这样便于下游组件通过字段属性映射,然后取值入库。 Field To Pivot处的/data配置代表将上一个组件输入的数据封装到/data目录下,其实也可以使用/目录代表不做处理。

2.4 目标源配置

配置数据库连接信息、库名和表名

字段映射关系配置:配置数据库中的字段和当前组件的上一个组件输出的字段之间的对应关系,类似于mybatis的配置文件中实体类字段和数据库字段的映射。如果不配置,可能会报语法错误。如果上游组件的输出字段和数据库中字段一 一对应且名称相同,可以不用配置映射关系。此处数据库的字段和https接口返回的字段有不一样的地方,所以需要配置。

2.5 启动任务并查看结果

数据库入库数据信息如下:

可以看到,数据已经正常写入数据库了。

注意: 由于服务会一直运行,所以会重复将https数据写入数据的情况,如果仅需要执行一次,添加Pipeline Finisher Executor组件结束任务即可。

3、总结

好了,今天的内容就到这里。如果这篇文章对你有所帮助的话,希望可以一键三连哦,您的认可和鼓励就是我创作的最大动力!

相关推荐
ms365copilot5 小时前
Copilot分析销售收入变化、找出涨跌原因
大数据·人工智能·copilot
百年੭ ᐕ)੭*⁾⁾6 小时前
Redash部署指南(Windows docker部署)
大数据·windows·docker·数据可视化·redash
乐迪信息6 小时前
防爆AI摄像机实时监测船舶异常姿态
大数据·人工智能·算法·安全·目标跟踪
. . . . .6 小时前
现代大数据技术栈核心知识总结
大数据
水寒2597 小时前
vue3 低代码:注册组件后,让Json Schema拥有完整的类型提示
架构
致Great7 小时前
Qwen3.8-Flash 发布:6B 激活,Qwen4 架构提前亮相
数据库·架构
hangzhouhuanyu7 小时前
从培训到创业:AI工具在数字经济中的落地路径与避坑指南
大数据·人工智能
Lalolander7 小时前
WorkBuddy App 怎么发起任务?输入栏与发送全流程
大数据·人工智能·金蝶erp·workbuddy
叫我:松哥7 小时前
基于Flask的教师评教管理系统,支持学生和教师两种角色登录
数据库·后端·python·数据挖掘·flask
2501_912784087 小时前
跨境建站避坑:为什么通用电商架构不适配反向代购业务
大数据·人工智能·架构·taoify