datax Ftp数据源 压缩包
DataX介绍
DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。
简单说:就是可以将任意数据同步到你想要的数据结构中去
DataX下载地址:点击下载
FtpReader
FtpReader提供了读取远程FTP文件系统数据存储的能力。在底层实现上,FtpReader获取远程FTP文件数据,并转换为DataX传输协议传递给Writer。ftp服务器协议,目前支持传输协议有ftp和sftp
配置样例
{
"setting": {},
"job": {
"setting": {
"speed": {
"channel": 2
}
},
"content": [
{
"reader": {
"name": "ftpreader",
"parameter": {
"protocol": "sftp",
"host": "127.0.0.1",
"port": 22,
"username": "xx",
"password": "xxx",
"path": [
"/home/hanfa.shf/ftpReaderTest/data"
],
"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"
}
],
"encoding": "UTF-8",
"fieldDelimiter": ","
}
},
"writer": {
"name": "ftpWriter",
"parameter": {
"path": "/home/hanfa.shf/ftpReaderTest/result",
"fileName": "shihf",
"writeMode": "truncate",
"format": "yyyy-MM-dd"
}
}
}
]
}
}
注意:每种数据源的配置文件都是不同的。
报错信息:
code:[Framework-12],Description:Datax插件初始化错误,该问题通常是由于Datax安装错误引起请联系您的运维解决at com.a ibaba.dataxcommon exception,dataxException asDataxException(DataXException,java:30)at com.alibaba.dataxcore.util.Configparser,parsepluginConfig(Configparser .java:142)at com.alibaba.datax.core.util.ConfigParser.parse(ConfigParser java:63)at com.alibaba.datax.core.Engine.entry(Engine.java:131)at com.alibaba.datax.core.Engine.main(Engine.java:201)
解决方案:
如果安装正确,并且插件目录能存在插件;错误就是json配置文件有错误,仔细检查最好将上面的json复制修改后执行
FtpReader支持压缩文件的读取和写入
FTP Reader:支持压缩格式为gzip、bzip2、zip、lzo和lzo_deflate
FTP Writer:支持压缩格式为:支持gzip和bzip2两种压缩形式。
乱码:
解决方案:配置参数compress
compress
- 描述:文本压缩类型,默认不填写意味着没有压缩。支持压缩类型为zip、gzip、bzip2。
- 必选:否
- 默认值:没有压缩
修改encoding参数值为源文件的编码格式:
encoding
- 描述:读取文件的编码配置。
- 必选:否
- 默认值:utf-8
DataX 动态参数
DataX 动态参数是指在执行 DataX 任务时,可以通过外部传入参数来动态修改 DataX 脚本中的数据源、目标、配置等参数。
DataX 动态参数的使用方法如下:
在 DataX 脚本中,使用 {} 来表示动态参数。 2. 在执行 DataX 任务时,通过 -D
参数来传入动态参数。 例如,以下 DataX 脚本使用 {starttime}和${endtime}
来表示动态参数:
在执行 DataX 任务时,可以通过以下命令来传入动态参数:
datax -Dstarttime=2023-12-01 00:00:00 -Dendtime=2023-12-02 00:00:00 job.json
该命令会将 starttime 参数的值设置为 2023-12-01 00:00:00,将 endtime 参数的值设置为 2023-12-02 00:00:00。
DataX 支持传入多个动态参数,动态参数的名称可以任意指定。
DataX 动态参数可以用于以下场景:
指定数据同步的起始时间和结束时间。
指定数据同步的目标表名。
指定数据同步的配置参数。
DataX 动态参数可以使 DataX 任务更加灵活,可以根据实际需求进行配置。
datax文档地址:https://github.com/alibaba/DataX
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »