关注我们
1
支持的引擎
SparkFlinkSeaTunnel Zeta
2
主要特性
支持功能和数据类型:
批处理 列投影 并行处理 文件格式类型 文本 CSV JSON Excel
3
描述
4
支持的数据源信息
install-plugin.sh下载,也可以从 Maven 中央仓库获取。
| 数据源 | 支持的版本 | 依赖项 |
提示
${SEATUNNEL_HOME}/lib目录下检查这个 JAR 包是否存在。
5
数据类型映射
| SeaTunnel数据类型 |
6
Source选项
| 名称 | 类型 | 必填 | 默认值 | 描述 |
#file_format_type | ||||
\001,与 Hive 的默认分隔符相同。 | ||||
oss://hadoop-cluster/tmp/seatunnel/parquet/name=tyrantlucifer/age=26那么文件中的每条记录将添加这两个字段:name agetyrantlucifer 26提示:不要在模式选项中定义分区字段。 | ||||
yyyy-MM-ddyyyy.MM.ddyyyy/MM/dd,默认 yyyy-MM-dd。 | ||||
yyyy-MM-dd HH:mm:ssyyyy.MM.dd HH:mm:ssyyyy/MM/dd HH:mm:ssyyyyMMddHHmmss,默认 yyyy-MM-dd HH:mm:ss。 | ||||
HH:mm:ssHH:mm:ss.SSS,默认 HH:mm:ss。 | ||||
skip_header_row_number = 2那么 SeaTunnel 将跳过源文件的前两行。 | ||||
#schema | ||||
file_format_type [字符串]
textcsvparquetorcjsonexcel如果将文件类型指定为
json,需要配置 Schema 模式选项,向连接器说明如何解析数据为你需要所需的 Row。例如:上游数据如下:
{"code": 200, "data": "get success", "success": true}
{"code": 200, "data": "get success", "success": true}
{"code": 300, "data": "get failed", "success": false}
schema {
fields {
code = int
data = string
success = boolean
}
}
| Code | Data | Success |
parquet或 orc,则无需指定模式选项,连接器可以自动查找上游数据的模式。 | ||
text或 csv,则可以选择是否指定模式信息或不指定。 |
tyrantlucifer#26#male
| 内容 |
delimiter = "#"
schema {
fields {
name = string
age = int
gender = string
}
}
| 姓名 | 年龄 | 性别 |
Schema [配置项]
7
如何创建 Sftp 数据同步任务
# 设置要执行的任务的基本配置
env {
execution.parallelism = 1
job.mode = "BATCH"
}
# 创建连接到 Sftp 的源
source {
SftpFile {
host = "sftp"
port = 22
user = seatunnel
password = pass
path = "tmp/seatunnel/read/json"
file_format_type = "json"
result_table_name = "sftp"
schema = {
fields {
c_map = "map<string, string>"
c_array = "array<int>"
c_string = string
c_boolean = boolean
c_tinyint = tinyint
c_smallint = smallint
c_int = int
c_bigint = bigint
c_float = float
c_double = double
c_bytes = bytes
c_date = date
c_decimal = "decimal(38, 18)"
c_timestamp = timestamp
c_row = {
C_MAP = "map<string, string>"
C_ARRAY = "array<int>"
C_STRING = string
C_BOOLEAN = boolean
C_TINYINT = tinyint
C_SMALLINT = smallint
C_INT = int
C_BIGINT = bigint
C_FLOAT = float
C_DOUBLE = double
C_BYTES = bytes
C_DATE = date
C_DECIMAL = "decimal(38, 18)"
C_TIMESTAMP = timestamp
}
}
}
}
}
# 控制台打印读取的 Sftp 数据
sink {
Console {
parallelism = 1
}
}
活动推荐

Apache SeaTunnel Meetup | 9月24日

Apache SeaTunnel
精彩推荐
点击阅读原文了解更多⭐️!

文章转载自SeaTunnel,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




