669
阿裏雲
TxtFileReader__Reader插件_使用手冊_數據集成-阿裏雲
1 快速介紹
TxtFileReader提供了讀取本地文件係統數據存儲的能力。在底層實現上,TxtFileReader獲取本地文件數據,並轉換為CDP傳輸協議傳遞給Writer。本地文件內容存放的是一張邏輯意義上的二維表,例如CSV格式的文本信息。
該通道目前隻在ECS Pipeline下支持
2 功能與限製
TxtFileReader實現了從本地文件讀取數據並轉為CDP協議的功能,本地文件本身是無結構化數據存儲,對於CDP而言,TxtFileReader實現上類比OSSReader,有諸多相似之處。目前TxtFileReader支持功能如下:
- 支持且僅支持讀取TXT的文件,且要求TXT中shema為一張二維表。
- 支持類CSV格式文件,自定義分隔符。
- 支持多種類型數據讀取(使用String表示),支持列裁剪,支持列常量
- 支持遞歸讀取、支持文件名過濾。
- 支持文本壓縮,現有壓縮格式為zip、lzo、lzop、tgz、bzip2。
- 多個File可以支持並發讀取。
我們暫時不能做到:
- 單個File支持多線程並發讀取,這裏涉及到單個File內部切分算法。二期考慮支持。
- 單個File在壓縮情況下,從技術上無法支持多線程並發讀取。
3 功能說明
3.1 配置樣例
{
"type": "job",
"traceId": "您可以在這裏填寫您作業的追蹤ID,建議使用業務名+您的作業ID",
"version": "1.0",
"configuration": {
"reader": {
"plugin": "txtfile",
"parameter": {
"path": ["/home/haiwei.luo/case00/data"],
"encoding": "UTF-8",
"column": [
{
"index": 0,
"type": "long"
},
{
"index": 1,
"type": "boolean"
},
{
"index": 2,
"type": "double"
},
{
"index": 3,
"type": "string"
},
{
"index": 4,
"type": "date",
"format": "yyyy.MM.dd"
}
],
"fieldDelimiter": ","
}
},
"writer": {
}
}
}
3.2 參數說明
path
描述:本地文件係統的路徑信息,注意這裏可以支持填寫多個路徑。(1)當指定單個本地文件,TxtFileReader暫時隻能使用單線程進行數據抽取。二期考慮在非壓縮文件情況下針對單個File可以進行多線程並發讀取。(2)當指定多個本地文件,TxtFileReader支持使用多線程進行數據抽取。線程並發數通過通道數指定。(3)當指定通配符,TxtFileReader嚐試遍曆出多個文件信息。例如:
指定/*代表讀取/目錄下所有的文件,指定/bazhen/*代表讀取bazhen目錄下遊所有的文件。
TxtFileReader目前隻支持*作為文件通配符。 特別需要注意的是,CDP會將一個作業下同步的所有Text File視作同一張數據表。用戶必須自己保證所有的File能夠適配同一套schema信息。讀取文件用戶必須保證為類CSV格式,並且提供給CDP權限可讀。
特別需要注意的是,如果Path指定的路徑下沒有符合匹配的文件抽取,CDP將報錯。
必選:是
默認值:無
column
描述:讀取字段列表,type指定源數據的類型,index指定當前列來自於文本第幾列(以0開始),value指定當前類型為常量,不從源頭文件讀取數據,而是根據value值自動生成對應的列。默認情況下,用戶可以全部按照String類型讀取數據,配置如下:
"column": ["*"]
用戶可以指定Column字段信息,配置如下:
{ "type": "long", "index": 0 //從本地文件文本第一列獲取int字段 }, { "type": "string", "value": "alibaba" //從TxtFileReader內部生成alibaba的字符串字段作為當前字段 }
對於用戶指定Column信息,type必須填寫,index/value必須選擇其一。
- 必選:是
- 默認值:全部按照string類型讀取
fieldDelimiter
- 描述:讀取的字段分隔符
- 必選:是
- 默認值:,
compress
- 描述:文本壓縮類型,默認不填寫意味著沒有壓縮。支持壓縮類型為gzip、bzip2。
- 必選:否
- 默認值:沒有壓縮
encoding
- 描述:讀取文件的編碼配置。
- 必選:否
- 默認值:utf-8
skipHeader
- 描述:類CSV格式文件可能存在表頭為標題情況,需要跳過。默認不跳過。
- 必選:否
- 默認值:false
nullFormat
描述:文本文件中無法使用標準字符串定義null(空指針),CDP提供nullFormat定義哪些字符串可以表示為null。
例如如果用戶配置: nullFormat:"N",那麼如果源頭數據是"N",CDP視作null字段。
必選:否
默認值:N
3.3 類型轉換
本地文件本身不提供數據類型,該類型是CDP TxtFileReader定義:
CDP 內部類型 | 本地文件 數據類型 |
---|---|
Long | Long |
Double | Double |
String | String |
Boolean | Boolean |
Date | Date |
其中:
- 本地文件 Long是指本地文件文本中使用整形的字符串表示形式,例如"19901219"。
- 本地文件 Double是指本地文件文本中使用Double的字符串表示形式,例如"3.1415"。
- 本地文件 Boolean是指本地文件文本中使用Boolean的字符串表示形式,例如"true"、"false"。不區分大小寫。
- 本地文件 Date是指本地文件文本中使用Date的字符串表示形式,例如"2014-12-31",Date可以指定format格式。
最後更新:2016-11-23 16:03:59
上一篇:
FtpReader__Reader插件_使用手冊_數據集成-阿裏雲
下一篇:
MySQLWriter__Writer插件_使用手冊_數據集成-阿裏雲
多結構數據存儲__典型應用_用戶指南_雲數據庫 RDS 版-阿裏雲
GetBucketWebsite__關於Bucket的操作_API 參考_對象存儲 OSS-阿裏雲
文件存儲怎麼收費?__常見問題_常見問題_文件存儲-阿裏雲
解析記錄數量限製__附錄_API文檔_雲解析-阿裏雲
阿裏雲為國家基因庫提供係統支持
RemoveBackendServers__BackendServer相關API_API 參考_負載均衡-阿裏雲
用戶操作限製___售後支持計劃_支持計劃-阿裏雲
監控項介紹__性能監控_用戶指南(Linux)_數據管理-阿裏雲
2016-06-12__Release-Notes_日誌服務-阿裏雲
阿裏雲李津:持續釋放技術紅利,為1000萬企業提供技術平台
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲