您好,登錄后才能下訂單哦!
這篇文章主要介紹“怎么利用Kettle轉儲接口數據”,在日常操作中,相信很多人在怎么利用Kettle轉儲接口數據問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么利用Kettle轉儲接口數據”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
API:應用程序接口(Application Program Interface)的簡稱,是實現計算機軟件之間數據通信的工具。同時API也是一種中間件,為各個平臺提供數據共享。在大數據與物聯網發展的背景下,目前有大量的數據接口被提供或發掘出來,提供給開發者使用,應用到生活中的每一個細節中。本文旨在闡述kettle對于數據接口的監控、調用及其轉儲,更多詳細的數據接口內容不在此具體說明。
本文旨在提供一種方法,以幫助同學們掌握Kettle對于數據接口的調用與轉儲,Kettle的配置方法和組件的使用具有多樣性,需要大家多多思考與發掘。
本文使用的是Kettle 7.0版本,調用的接口為百度開發平臺-百度地圖API,返回數據集為JSON格式或者XML格式,本次使用了兩種方式來存儲數據,一種是導出成EXCEL,一種是導出到關系數據庫進行存儲。
總覽
我們首先拿到WebAPI的地址,測試連接的暢通,這里我使用了百度地圖的Place Suggestion API,輸入城市需要檢索的地點,返回建議值,效果如下:
http://api.map.baidu.com/place/v2/suggestion?query=%E6%98%A5%E7%86%99%E8%B7%AF®ion=%E6%88%90%E9%83%BD%E5%B8%82&output=json&ak=n0lHarpY3QZx6xXXIaWMFLxj
這里我們測試接口URL的連通性。
這里我的接口是沒有校驗身份的,只需要輸入申請的AK就可以了。測試成功,返回的值為JSON字符串的格式。
新建一個轉換,接口信息接入可以選擇EXCEL接入,文本接入,生成記錄,或者表輸入都行,視自己的情況而定,我這里因為只是測試,選用了生成記錄,并且參數值固定死,后期可以使用“${}”將參數替換出來。
添加HttpClient組件,我們需要用到它作為客戶端來解析API,類似瀏覽器。
這里的URL地址我們選擇從前面的生成記錄里面獲取。注意字符集的設置,否則后面獲取到的接口數據會是亂碼。
這里添加過濾記錄組件,用來判斷是否成功從HTTP客戶端獲取到數據
添加JSON輸入組件,這里從流中獲取到從API上獲取的結果作為源字段。
將JSON串解析成多個字段的形式,具體路徑需要自己先在過一下JSON串的格式,提前掌握這些信息。
我們此次使用的JSON串,實際需要的數據實際是在其內曾的RESULT字段里面嵌套的JSON串里,所以我們需要再對RESULT字段進行解析。
我們這里使用了EXCEL輸出的方法,EXCEL輸出沒有特別需要強調的地方,主要需要注意的就是在這里我們只輸出需要的內部的地址信息,因為其他字段在流中也會繼承下來,這里合理選擇輸出的字段即可。
錯誤處理一般來說都只是進行記錄,或者寫入日志,或者寫入日志表,或者發送報錯信息郵件到管理員郵箱。
這里不做具體講解,具體的選擇方案看項目需求而定。
F9可執行改轉換,轉換沒有錯誤的話則進入上面一條線,并且輸出為EXCEL表格。
EXCEL展開如下圖:
本附件列出了一些配置過程中可能與遇到的一些問題以及解決方案。
在實驗過程中遇到一些錯誤在所難免,我這里提供了一些容易遇到的錯誤,給大家參考參考思路。
解決方案:在使用HTTP客戶端接入的時候,需要正確選擇字符集,一般使用UTF-8是沒錯的,它能夠兼容大部分字符。在進行文本文件輸出的時候,需要正確選擇輸出的格式,盡量不在這一步做編碼轉換。
解決方案:在解析API接口URL路徑時,難免參數會帶上中文漢字,這里的漢字需要提前做好轉碼,這里教大家一個小技巧,使用Chome瀏覽器,把URL鏈接粘貼進去,瀏覽器會自動幫我們把編碼進行轉換。此時,再把URL地址粘貼出來即可。
到此,關于“怎么利用Kettle轉儲接口數據”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。