taLend入門_組件_tFlieList

目的:使用tFileList組件,讀取文件夾下的所有文件,輸出每個文件內的數據

組件:tFileList,tFileInputDelimited,tLogRow

1.tFileList連接時使用迭代連接

 

2.設置讀取文件路徑,文件列表類型選擇“文件”

 

 

3.設置tFileInputDelimited

3.1讀取的文件名,使用全局變量的方法:((String)globalMap.get("tFileList_1_CURRENT_FILEPATH")),其中tFileList_1是組件名,CURRENT_FILEPATH是迭代時的當前文件名,屬於全局變量(全局變量查詢官方文檔)

3.2 分隔符設定:取入csv文件,在tlogrow輸出中,可以看到,是以","爲分隔符的,所以,建議設置","

3.3 schema設置,取入文件的字段名需要在這裏設置,否則,會提示“schema未定義”,導致tlogrow無法輸出內容

 

4.取入文件及文件格式

 

 

之所以修改了字段名,是輸出前的猜想,我認爲他會自動匹配不同的字段進行讀取,運行結果證明是錯的

5.run

 

結果很明顯,age列是空的,而原本在age列的數據,依然出現在了id列

所以,tFileInputDelimited在讀取文件時,不識別所讀取的文件內的文件名,他要求讀取文件內容格式統一:例如字段位置和字段數量,而在schema中的字段設置,則是人爲的將數據和字段名進行一一匹配

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章