共计 1962 个字符,预计需要花费 5 分钟才能阅读完成。
这篇文章主要介绍“怎么利用 Kettle 转储接口数据”,在日常操作中,相信很多人在怎么利用 Kettle 转储接口数据问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么利用 Kettle 转储接口数据”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!
利用 Kettle 转储接口数据 1. 项目背景 1.1. 项目背景数据接口
API:应用程序接口(Application Program Interface)的简称,是实现计算机软件之间数据通信的工具。同时 API 也是一种中间件,为各个平台提供数据共享。在大数据与物联网发展的背景下,目前有大量的数据接口被提供或发掘出来,提供给开发者使用,应用到生活中的每一个细节中。本文旨在阐述 kettle 对于数据接口的监控、调用及其转储,更多详细的数据接口内容不在此具体说明。
项目背景
本文旨在提供一种方法,以帮助同学们掌握 Kettle 对于数据接口的调用与转储,Kettle 的配置方法和组件的使用具有多样性,需要大家多多思考与发掘。
2. Kettle 配置
本文使用的是 Kettle 7.0 版本,调用的接口为百度开发平台 - 百度地图 API,返回数据集为 JSON 格式或者 XML 格式,本次使用了两种方式来存储数据,一种是导出成 EXCEL,一种是导出到关系数据库进行存储。
2.1. Kettle 转换的配置总览
总览
校验接口信息
我们首先拿到 WebAPI 的地址,测试连接的畅通,这里我使用了百度地图的 Place Suggestion API,输入城市需要检索的地点,返回建议值,效果如下:
http://api.map.baidu.com/place/v2/suggestion?query=%E6%98%A5%E7%86%99%E8%B7%AF region=%E6%88%90%E9%83%BD%E5%B8%82 output=json ak=n0lHarpY3QZx6xXXIaWMFLxj
这里我们测试接口 URL 的连通性。
这里我的接口是没有校验身份的,只需要输入申请的 AK 就可以了。测试成功,返回的值为 JSON 字符串的格式。
接口信息接入
新建一个转换,接口信息接入可以选择 EXCEL 接入,文本接入,生成记录,或者表输入都行,视自己的情况而定,我这里因为只是测试,选用了生成记录,并且参数值固定死,后期可以使用“${}”将参数替换出来。
利用 HTTP 客户端解析数据
添加 HttpClient 组件,我们需要用到它作为客户端来解析 API,类似浏览器。
这里的 URL 地址我们选择从前面的生成记录里面获取。注意字符集的设置,否则后面获取到的接口数据会是乱码。
判断是否获取到数据
这里添加过滤记录组件,用来判断是否成功从 HTTP 客户端获取到数据
解析 JSON 串
添加 JSON 输入组件,这里从流中获取到从 API 上获取的结果作为源字段。
将 JSON 串解析成多个字段的形式,具体路径需要自己先在过一下 JSON 串的格式,提前掌握这些信息。
嵌套循环解析 JSON 串
我们此次使用的 JSON 串,实际需要的数据实际是在其内曾的 RESULT 字段里面嵌套的 JSON 串里,所以我们需要再对 RESULT 字段进行解析。
输出数据
我们这里使用了 EXCEL 输出的方法,EXCEL 输出没有特别需要强调的地方,主要需要注意的就是在这里我们只输出需要的内部的地址信息,因为其他字段在流中也会继承下来,这里合理选择输出的字段即可。
错误处理
错误处理一般来说都只是进行记录,或者写入日志,或者写入日志表,或者发送报错信息邮件到管理员邮箱。
这里不做具体讲解,具体的选择方案看项目需求而定。
运行结果
F9 可执行改转换,转换没有错误的话则进入上面一条线,并且输出为 EXCEL 表格。
EXCEL 展开如下图:
3. 其他
本附件列出了一些配置过程中可能与遇到的一些问题以及解决方案。
3.1. 常见错误信息
在实验过程中遇到一些错误在所难免,我这里提供了一些容易遇到的错误,给大家参考参考思路。
中文乱码
解决方案:在使用 HTTP 客户端接入的时候,需要正确选择字符集,一般使用 UTF- 8 是没错的,它能够兼容大部分字符。在进行文本文件输出的时候,需要正确选择输出的格式,尽量不在这一步做编码转换。
API 接口无效
解决方案:在解析 API 接口 URL 路径时,难免参数会带上中文汉字,这里的汉字需要提前做好转码,这里教大家一个小技巧,使用 Chome 浏览器,把 URL 链接粘贴进去,浏览器会自动帮我们把编码进行转换。此时,再把 URL 地址粘贴出来即可。
到此,关于“怎么利用 Kettle 转储接口数据”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!