TDFS
数据端配置

- 配置项说明:
name
- 类型: 单行文本
- 必须: 是
protocol
类型: 单选
必须: 是
默认值: ftp
说明:
SFTP 和 FTP 非常相似,都支持批量传输(一次传输多个文件),文件夹 / 目录导航,文件移动,文件夹 / 目录创建,文件删除等。但还是存在着差异,SFTP 和 FTP 之间的区别:
链接方式不同
FTP 使用 TCP 端口 21 上的控制连接建立连接。而 SFTP 是在客户端和服务器之间通过 SSH 协议 (TCP 端口 22) 建立的安全连接来传输文件。
安全性不同
SFTP 使用加密传输认证信息和传输的数据,所以使用 SFTP 相对于 FTP 是非常安全。
效率不同
SFTP 这种传输方式使用了加密解密技术,所以传输效率比普通的 FTP 要低得多。
使用的协议不同
FTP 使用 TCP / IP 协议。而,SFTP 是 SSH 协议的一部分,它是一种远程登录信息。
安全通道
FTP 不提供任何安全通道来在主机之间传输文件;而 SFTP 协议提供了一个安全通道,用于在网络上的主机之间传输文件。
host
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:ftp服务器地址。
port
- 类型: 整型数字
- 必须: 是
- 默认值: 21
- 说明: 描述:ftp服务器端口。
timeout
- 类型: 整型数字
- 必须: 否
- 默认值: 60000
- 说明: 描述:连接ftp服务器连接超时时间,单位毫秒。默认值:60000(1分钟)
连接模式
类型: 单选
必须: 是
默认值: PASV
说明:
连接模式(主动模式或者被动模式)。该参数只在传输协议是标准ftp协议时使用,值只能为:PORT (主动),PASV(被动)。两种模式主要的不同是数据连接建立的不同。
对于Port模式,是客户端在本地打开一个端口等服务器去连接建立数据连接,
而Pasv模式就是服务器打开一个端口等待客户端去建立一个数据连接。
username
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:ftp服务器访问用户名。
password
- 类型: 密码
- 必须: 是
- 默认值: 无
- 说明: 描述:ftp服务器访问密码。
批量读

- 配置项说明:
资源
类型: 单行文本
必须: 是
默认值: 无
说明: DFS服务端连接配置
可选项说明: 可选
AlyiunOSS
,FTP
,Hdfs
,Local Files
以下是详细说明:AlyiunOSS
- 配置项说明:
远端连接
- 类型: 单选
- 必须: 是
- 默认值: 无
- 说明: 无
bucket
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:OSS的bucket
rootPath
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:TIS 查找可用资源文件会从该路径下遍历查找
FTP
- 配置项说明:
远端连接
- 类型: 单选
- 必须: 是
- 默认值: 无
- 说明: FTP服务端连接配置
path
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:FTP文件系统的路径信息,FtpWriter会写入Path目录下属多个文件。
Hdfs
- 配置项说明:
远端连接
- 类型: 单选
- 必须: 是
- 默认值: 无
- 说明: 描述:Hadoop hdfs文件系统namenode节点地址。格式:hdfs://ip:端口;例如:hdfs://127.0.0.1:9000
path
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 数据文件保存的路径位置
Local Files
- 配置项说明:
path
类型: 单行文本
必须: 是
默认值: 无
说明:
描述:本地文件系统的路径(绝对路径),必须为目录路径,该目录下存放有目标资源文件
目标文件匹配
类型: 单行文本
必须: 是
默认值: Wildcard
说明:
到指定目录中获取目标资源文件,TIS已经为您准备了两种类型的匹配器:
Wildcard:
通过
wildcard
表达式(如:user*.json
,"a/b/*"
),到指定目录扫描所有资源文件,如果与wildcard
匹配,则作为TDFS Reader的目标资源文件,在后续全量导入流程中读取ByMeta:
Writer TDFS
作为目标Writer,流程中开启了添加元数据
选项,将源数据的Schema写入到目标文件系统中,后续,以该TDFS
作为源数据类型则可以依赖该预写入的Schema文件作为数据源的Schema信息,可大大简化流程
可选项说明: 可选
ByMeta
,Wildcard
以下是详细说明:ByMeta
Wildcard
- 配置项说明:
wildcard
类型: 单行文本
必须: 是
默认值: 无
说明:
路径中可以使用统配符匹配资源目录下的所有匹配的文件资源
Checks a fileName to see if it matches the specified wildcard matcher, always testing case-sensitive.
<p>
The wildcard matcher uses the characters '?' and '*' to represent a
single or multiple (zero or more) wildcard characters.
This is the same as often found on Dos/Unix command lines.
The check is case-sensitive always.
</p>wildcardMatch("c.txt", "*.txt") --> true wildcardMatch("c.txt", "*.jpg") --> false wildcardMatch("a/b/c.txt", "a/b/*") --> true wildcardMatch("c.txt", "*.???") --> true wildcardMatch("c.txt", "*.????") --> false
- N.B. the sequence "*?" does not work properly at present in match strings.
遍历层数
- 类型: 整型数字
- 必须: 是
- 默认值: 1
- 说明: 描述:允许遍历文件夹的最大层数。
文件格式
类型: 单行文本
必须: 是
默认值: 无
说明: 可以根据目标文件不同的格式,对文件进行解析
可选项说明: 可选
CSV
,TEXT
以下是详细说明:CSV
- 配置项说明:
字段分隔符
- 类型: 单选
- 必须: 是
- 默认值: comma
- 说明: 描述:读取的字段分隔符,可以用'\t','\001'等字符
压缩格式
- 类型: 单选
- 必须: 是
- 默认值: none
- 说明: 描述:文本压缩类型,默认不填写意味着没有压缩。支持压缩类型为zip、gzip、bzip2。
encoding
- 类型: 单选
- 必须: 是
- 默认值: utf-8
- 说明: 描述:读取文件的编码配置。
空值替代符
- 类型: 单行文本
- 必须: 是
- 默认值: null
- 说明: 描述:文本文件中无法使用标准字符串定义null(空指针),DataX提供nullFormat定义哪些字符串可以表示为null。例如如果用户配置: nullFormat="\N",那么如果源头数据是"\N",DataX视作null字段。
日期格式
- 类型: 单行文本
- 必须: 是
- 默认值: com.qlangtech.tis.plugin.datax.format.BasicPainFormat.defaultNullFormat()
- 说明: 描述:日期类型的数据序列化到文件中时的格式,例如 "dateFormat": "yyyy-MM-dd"。
csvConfig
类型: 富文本
必须: 否
默认值: 无
说明:
描述:(读取/写入)CSV类型文件参数配置,Map类型。
写入CSV类型文件使用的CsvWriter进行写入,会有很多配置,不配置则使用默认值。
{ "forceQualifier": true,
"textQualifier": "\"",
"useTextQualifier": true,
"delimiter": ",",
"recordDelimiter": 0,
"comment": "#",
"escapeMode": 1
}读取CSV类型文件使用的CsvReader进行读取,会有很多配置,不配置则使用默认值。
{ "safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false}所有配置项及默认值,配置时 csvReaderConfig 的map中请严格按照以下字段名字进行配置:
boolean caseSensitive = true;
char textQualifier = 34;
boolean trimWhitespace = true;
boolean useTextQualifier = true;//是否使用csv转义字符
char delimiter = 44;//分隔符
char recordDelimiter = 0;
char comment = 35;
boolean useComments = false;
int escapeMode = 1;
boolean safetySwitch = true;//单列长度是否限制100000字符
boolean skipEmptyRecords = true;//是否跳过空行
boolean captureRawRecord = true;
header
- 类型: 单选
- 必须: 是
- 默认值: true
- 说明: 描述:写出时的表头,列名(s)是否在文件头写入
猜测字段类型
- 类型: 单行文本
- 必须: 是
- 默认值: on
- 说明: 通过TIS提供的的内部算法,尝试读取部分DFS文件内容,猜测对应列的类型,以帮助最大化提高录入表单效率。最后通过分析得到的类型不够准确,需要用户手动微调。
TEXT
- 配置项说明:
字段分隔符
- 类型: 单选
- 必须: 是
- 默认值: comma
- 说明: 描述:读取的字段分隔符,可以用'\t','\001'等字符
压缩格式
- 类型: 单选
- 必须: 是
- 默认值: none
- 说明: 描述:文本压缩类型,默认不填写意味着没有压缩。支持压缩类型为zip、gzip、bzip2。
encoding
- 类型: 单选
- 必须: 是
- 默认值: utf-8
- 说明: 描述:读取文件的编码配置。
空值替代符
- 类型: 单行文本
- 必须: 是
- 默认值: null
- 说明: 描述:文本文件中无法使用标准字符串定义null(空指针),DataX提供nullFormat定义哪些字符串可以表示为null。例如如果用户配置: nullFormat="\N",那么如果源头数据是"\N",DataX视作null字段。
日期格式
- 类型: 单行文本
- 必须: 是
- 默认值: com.qlangtech.tis.plugin.datax.format.BasicPainFormat.defaultNullFormat()
- 说明: 描述:日期类型的数据序列化到文件中时的格式,例如 "dateFormat": "yyyy-MM-dd"。
header
- 类型: 单选
- 必须: 是
- 默认值: true
- 说明: 描述:写出时的表头,列名(s)是否在文件头写入
猜测字段类型
- 类型: 单行文本
- 必须: 是
- 默认值: on
- 说明: 通过TIS提供的的内部算法,尝试读取部分DFS文件内容,猜测对应列的类型,以帮助最大化提高录入表单效率。最后通过分析得到的类型不够准确,需要用户手动微调。
配置模版
- 类型: 富文本
- 必须: 是
- 默认值: com.qlangtech.tis.plugin.datax.DataXDFSReader.getDftTemplate()
- 说明: 无特殊情况请不要修改模版内容,避免不必要的错误
批量写

- 配置项说明:
资源
类型: 单行文本
必须: 是
默认值: 无
说明: DFS服务端连接配置
可选项说明: 可选
AlyiunOSS
,FTP
,Hdfs
,Local Files
以下是详细说明:AlyiunOSS
- 配置项说明:
远端连接
- 类型: 单选
- 必须: 是
- 默认值: 无
- 说明: 无
bucket
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:OSS的bucket
rootPath
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:TIS 查找可用资源文件会从该路径下遍历查找
FTP
- 配置项说明:
远端连接
- 类型: 单选
- 必须: 是
- 默认值: 无
- 说明: FTP服务端连接配置
path
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 描述:FTP文件系统的路径信息,FtpWriter会写入Path目录下属多个文件。
Hdfs
- 配置项说明:
远端连接
- 类型: 单选
- 必须: 是
- 默认值: 无
- 说明: 描述:Hadoop hdfs文件系统namenode节点地址。格式:hdfs://ip:端口;例如:hdfs://127.0.0.1:9000
path
- 类型: 单行文本
- 必须: 是
- 默认值: 无
- 说明: 数据文件保存的路径位置
Local Files
- 配置项说明:
path
类型: 单行文本
必须: 是
默认值: 无
说明:
描述:本地文件系统的路径(绝对路径),必须为目录路径,该目录下存放有目标资源文件
添加元数据
类型: 单行文本
必须: 是
默认值: on
说明:
写数据过程中会在
DFS
目录中写一份source的元数据。当其他环境中需要使用TIS来导入DFS中的数据时,可以利用这份元数据快速生成目标端的数据表结构,省去手动配置元数据的流程。
可选项说明: 可选
off
,on
以下是详细说明:off
on
替换规则
类型: 单选
必须: 是
默认值: truncate
说明:
FtpWriter写入前数据清理处理模式:
truncate: 写入前清理目录下一fileName前缀的所有文件。
append: 写入前不做任何处理,DFS Writer直接使用filename写入,并保证文件名不冲突。
nonConflict: 如果目录下有fileName前缀的文件,直接报错。
fileFormat
类型: 单行文本
必须: 是
默认值: TEXT
说明:
文件写出的格式,包括csv 和text两种,csv是严格的csv格式,如果待写数据包括列分隔符,则会按照csv的转义语法转义,转义符号为双引号。text格式是用列分隔符简单分割待写数据,对于待写数据包括列分隔符情况下不做转义。
可选项说明: 可选
CSV
,TEXT
以下是详细说明:CSV
- 配置项说明:
字段分隔符
- 类型: 单选
- 必须: 是
- 默认值: comma
- 说明: 描述:读取的字段分隔符,可以用'\t','\001'等字符
压缩格式
- 类型: 单选
- 必须: 是
- 默认值: none
- 说明: 描述:文本压缩类型,默认不填写意味着没有压缩。支持压缩类型为zip、gzip、bzip2。
encoding
- 类型: 单选
- 必须: 是
- 默认值: utf-8
- 说明: 描述:读取文件的编码配置。
空值替代符
- 类型: 单行文本
- 必须: 是
- 默认值: null
- 说明: 描述:文本文件中无法使用标准字符串定义null(空指针),DataX提供nullFormat定义哪些字符串可以表示为null。例如如果用户配置: nullFormat="\N",那么如果源头数据是"\N",DataX视作null字段。
日期格式
- 类型: 单行文本
- 必须: 是
- 默认值: com.qlangtech.tis.plugin.datax.format.BasicPainFormat.defaultNullFormat()
- 说明: 描述:日期类型的数据序列化到文件中时的格式,例如 "dateFormat": "yyyy-MM-dd"。
csvConfig
类型: 富文本
必须: 否
默认值: 无
说明:
描述:(读取/写入)CSV类型文件参数配置,Map类型。
写入CSV类型文件使用的CsvWriter进行写入,会有很多配置,不配置则使用默认值。
{ "forceQualifier": true,
"textQualifier": "\"",
"useTextQualifier": true,
"delimiter": ",",
"recordDelimiter": 0,
"comment": "#",
"escapeMode": 1
}读取CSV类型文件使用的CsvReader进行读取,会有很多配置,不配置则使用默认值。
{ "safetySwitch": false,
"skipEmptyRecords": false,
"useTextQualifier": false}所有配置项及默认值,配置时 csvReaderConfig 的map中请严格按照以下字段名字进行配置:
boolean caseSensitive = true;
char textQualifier = 34;
boolean trimWhitespace = true;
boolean useTextQualifier = true;//是否使用csv转义字符
char delimiter = 44;//分隔符
char recordDelimiter = 0;
char comment = 35;
boolean useComments = false;
int escapeMode = 1;
boolean safetySwitch = true;//单列长度是否限制100000字符
boolean skipEmptyRecords = true;//是否跳过空行
boolean captureRawRecord = true;
header
- 类型: 单选
- 必须: 是
- 默认值: true
- 说明: 描述:写出时的表头,列名(s)是否在文件头写入
猜测字段类型
- 类型: 单行文本
- 必须: 是
- 默认值: on
- 说明: 通过TIS提供的的内部算法,尝试读取部分DFS文件内容,猜测对应列的类型,以帮助最大化提高录入表单效率。最后通过分析得到的类型不够准确,需要用户手动微调。
TEXT
- 配置项说明:
字段分隔符
- 类型: 单选
- 必须: 是
- 默认值: comma
- 说明: 描述:读取的字段分隔符,可以用'\t','\001'等字符
压缩格式
- 类型: 单选
- 必须: 是
- 默认值: none
- 说明: 描述:文本压缩类型,默认不填写意味着没有压缩。支持压缩类型为zip、gzip、bzip2。
encoding
- 类型: 单选
- 必须: 是
- 默认值: utf-8
- 说明: 描述:读取文件的编码配置。
空值替代符
- 类型: 单行文本
- 必须: 是
- 默认值: null
- 说明: 描述:文本文件中无法使用标准字符串定义null(空指针),DataX提供nullFormat定义哪些字符串可以表示为null。例如如果用户配置: nullFormat="\N",那么如果源头数据是"\N",DataX视作null字段。
日期格式
- 类型: 单行文本
- 必须: 是
- 默认值: com.qlangtech.tis.plugin.datax.format.BasicPainFormat.defaultNullFormat()
- 说明: 描述:日期类型的数据序列化到文件中时的格式,例如 "dateFormat": "yyyy-MM-dd"。
header
- 类型: 单选
- 必须: 是
- 默认值: true
- 说明: 描述:写出时的表头,列名(s)是否在文件头写入
猜测字段类型
- 类型: 单行文本
- 必须: 是
- 默认值: on
- 说明: 通过TIS提供的的内部算法,尝试读取部分DFS文件内容,猜测对应列的类型,以帮助最大化提高录入表单效率。最后通过分析得到的类型不够准确,需要用户手动微调。
配置模版
- 类型: 富文本
- 必须: 是
- 默认值: com.qlangtech.tis.plugin.datax.DataXDFSWriter.getDftTemplate()
- 说明: 无特殊情况请不要修改模版内容,避免不必要的错误