使用ETL调用WebService接口实时拉取数据到本地数库中

企业里面有很多业务系统只能提供WebService接口如SAP等,还有一些SaaS系统也只提供WebService的接口如Workday等,对于这些系统的数据我们可以使用ETL工具进行调用然后把XML中的数据进行解析后存储到数据库中或者同步到本地的其他业务系统中,使用RestCloud ETL工具只需简单两步即可完成上述数据的同步而且无需编码,现在来看下实现过程。

首先登录RestCloud ETL平台

使用ETL调用WebService接口实时拉取数据到本地数库中_第1张图片

打开一个应用或者新建一个应用均可,然后进入到流程列表中

使用ETL调用WebService接口实时拉取数据到本地数库中_第2张图片

创建一个WebService同步任务

使用ETL调用WebService接口实时拉取数据到本地数库中_第3张图片

从左则分别拉取一个WebSerivce节点和库表输出节点,目标节点我们选择mysql数据源

使用ETL调用WebService接口实时拉取数据到本地数库中_第4张图片

输入WebService的WSDL地址并指定我们要读取XML中返回的那个数据字段,这里我们将获取公网上的一个WebService接口服务地址如下:


http://ws.webxml.com.cn/WebServices/WeatherWS.asmx,注意这个WebService有好几个方法我们需要在节点的Header中的SoapAction中指定具体调用其中的那一个方法。

使用ETL调用WebService接口实时拉取数据到本地数库中_第5张图片

以上是这个WebSerivce的服务说明文档,我们调用他其中的一个方法获取区域以及编码数据然后传到mysql中进行存储。

使用ETL调用WebService接口实时拉取数据到本地数库中_第6张图片

输入参数的XML可以使用SoapUI工具进行解析然后复制进来即可,这样我们的WebService节点就配置完成了。

后面的MySql节点就比较容易了,可以提前先建好表,也可以由ETL任务自动创建表,我们这里选择由ETL工具自动建表并输出数据到mysql。

使用ETL调用WebService接口实时拉取数据到本地数库中_第7张图片

这里输入一张不存在的表即可,系统会自动创建这张表

使用ETL调用WebService接口实时拉取数据到本地数库中_第8张图片

然后配置这张表要接收数据的字段,系统将根据此配置字段进行数据库表的创建。

使用ETL调用WebService接口实时拉取数据到本地数库中_第9张图片

输出选项中我们选择第一次执行时清空目标表,自动建表,逐条更新即可,配置完成后保存流程,即可以开始调试运行,现在我们来运行一下看看效果。

使用ETL调用WebService接口实时拉取数据到本地数库中_第10张图片

点击运行,选择单步调试,可以看到拉取的区域数据,并会存入到mysql中

使用ETL调用WebService接口实时拉取数据到本地数库中_第11张图片

在调试界面中我们可以看到拉取到了79条数据,再点下一步即可存入到mysql中

使用ETL调用WebService接口实时拉取数据到本地数库中_第12张图片

任务运行结果显示成功79条数据到mysql中,我们可以去mysql表中预览一下是不是把区域数据拉到mysql中了。

使用ETL调用WebService接口实时拉取数据到本地数库中_第13张图片

打开mysql客户端可以看到WebSerivce中的数据已经成功拉取到本地mysql中了,如果调试没有问题我们就可以给他安排一个定时任务,定时同步webservice中的数据到本地即可。

使用ETL调用WebService接口实时拉取数据到本地数库中_第14张图片

可以选择每天晚上同步一次或其他同步时间可以自定义同步频率

上面我们就通过RestCloud ETL简单两步配置即实现了WebService接口的数据拉取同步任务,可以说是非常简单,ETL工具可以去 RestCloud ETL http://etl.restcloud.cn下载即可,可以永久免费使用。

你可能感兴趣的:(etl,大数据)