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、总结

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

相关推荐
xlrqx20 分钟前
保定家电清洗培训全拆洗教涉及哪些核心要点与行业信息呢?
大数据·python
正在走向自律2 小时前
从感知到自主决策:机器人技术的演进、核心架构与产业落地全景解析
架构·机器人·人形机器人·宇数机器人·医疗服务
cc5725026538 小时前
高考志愿填报:大数据相关专业到底怎么选?
大数据·高考
本旺9 小时前
Elasticsearch 前缀匹配性能优化实战,附4种方式即执行计划判别
大数据·elasticsearch·性能优化
木木学AI9 小时前
AI客服系统技术选型:Agentic架构与传统规则引擎的能力差异评估
人工智能·架构
hhzz9 小时前
Python大数据实战(十六):音乐推荐系统——基于协同过滤算法构建个性化歌单引擎
大数据·人工智能·python·数据挖掘·数据分析
泛普软件11 小时前
工程合约管理软件具备哪些核心功能,解决合同结算各类纠纷难题
大数据·人工智能·区块链
Elastic 中国社区官方博客14 小时前
Elastic 在 Everest Group 企业搜索产品 PEAK Matrix® 评估 2026 中被评为领导者
大数据·运维·人工智能·elasticsearch·搜索引擎·ai·全文检索
萧萧秦风瘦飞马14 小时前
CSDN博客-第6天-DataLoader与二维非线性分类
人工智能·分类·数据挖掘
重庆传粉科技15 小时前
传粉科技助力美国房产经纪企业Homequest开拓中国市场
大数据·人工智能