普元数据开发平台 普元数据开发平台
产品介绍
安装部署
快速入门
操作指南
应用集成
运维指南
  • MinIO Sink 组件使用说明
  • 组件说明
  • 配置项说明
  • FAQ

# MinIO Sink 组件使用说明

  • 组件说明
  • 配置项说明
  • 使用示例
    • 关系型数据库往MinIO输入数据
  • FAQ

# 组件说明

MinIO Sink 用于将数据写入到 MinIO(兼容 S3 API 的对象存储)。

# 配置项说明

配置名称 数据类型 是否必填 默认值 描述
节点名称 String 是 MinIO 当前创建的节点名称,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。
节点编码 String 是 自动生成 当前创建的节点编码,以此标识此组件,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。
自定义文件名 Boolean 否 - 否:使用系统默认文件名;
是:需要设置“文件表达式”、“文件名时间格式”。
文件表达式 String 是 ${transactionId} 设置文件名的表达式。
文件名时间格式 String 是 yyyy.MM.dd 设置文件名的带时间的格式。
选择数据源 String 是 - 从下拉选项中选择列出的当前项目已经关联的数据源。
选择文件 String 是 - 从列表中选择对象/文件。
文件路径 String 是 - 源文件路径。可以是完整路径,比如:/home/dws/infile/orderinfo.xls,也可以是不带具体文件名的路径,比如:/home/dws/infile/,然后通过"文件过滤正则表达式"进行过滤。
文件类型 String 是 json 支持:text、csv、parquet、orc、json、excel、xml、binary 八种文件类型。
注意:选择 excel 文件时,请务必删除表头,只保留数据。
压缩算法 String 否 none lzo 适用于 txt、json、csv;
orc 和 parquet 会自动识别压缩类型,无需设置;
none 为不需要压缩/解压缩。
字段分隔符 String 否 - 设置数据字段分隔符。
行分隔符 String 否 - 设置数据行分隔符。
跳过文件 Int 否 0 当选择文件类型为text/csv时,需要配置,用于跳过文件前多少行。
sheet名称 String 否 - 当选择文件类型为excel时,选择 sheet 名称。
excel读取引擎 String 否 POI 当选择文件类型为excel时,选择 excel 读取引擎名称。
XML根标签 String 否 RECORDS 当选择文件类型为xml时,指定XML根标签名称。
XML行标签 String 否 RECORD 当选择文件类型为xml时,指定XML文件中数据行的标记名称。
是否使用属性格式 Boolean 否 否 当选择文件类型为xml时,指定是否使用标记属性格式处理数据。
写入字段 String 是 - 获取的上游字段的信息。可以点击【获取字段】按钮自动获取全部字段名称及类型,也可以点击【增加字段】手工输入字段名称及类型。
是否分区 Boolean 否 - 是否启用分区。
批次大小 Int 否 1000000 批次大小。
目录处理方法 String 否 目录不存在时创建 对于目录的情况,处理方式有四种:
- 重新创建目录
- 目录不存在时创建
- 目录不存在时报告错误
- 忽略对目录的处理 。
数据处理方法 String 否 追加数据 支持三种模式:
1、追加数据:数据统一追加到目标表中;
2、同步前删除数据:先清空目标表数据,然后再给目标表添加数据;
3、当存在数据时,报告错误:当目标表存在相同数据时,报告错误,不会添加数据。
可选参数 - 否 - 其他参数,用户可以根据需求进行配置。

# FAQ

Q1: 写入时出现 UnknownHostException 或连接超时 原因: 网络不通或 Endpoint 填写错误。 解决:

  • 确保 SeaTunnel 所在容器/服务器能 ping 通 MinIO 域名/IP。
  • 使用 MinIO 的内部 K8s Service 名称或完整 IP。
  • 如果 MinIO 开启 HTTPS,需要设置 fs.s3a.connection.ssl.enabled = "true"。

Q2: 报错 The bucket you are attempting to access must be addressed using the specified endpoint 原因: 没有设置 path_style_access = true。

解决:

path_style_access: true

并且在 hadoop_s3_properties 中同时设置:

"fs.s3a.path.style.access" = "true"

Q3: 权限错误 Access Denied

原因: Access Key/Secret Key 错误,或该用户没有对 Bucket 的读写权限。

解决:

  • 检查密钥。
  • 在 MinIO Console 中为该 Access Key 设置 Bucket 的 ReadWrite 策略。

Q4: SeaTunnel 找不到 S3File 插件

原因: 缺少插件包。

解决:

# 确认 $SEATUNNEL_HOME/connectors/ 目录下有 seatunnel-connector-xxx-s3file.jar
# 如果没有,从官方下载或执行:
wget https://repo.maven.apache.org/.../seatunnel-connector-xxx-s3file-2.3.x.jar

← MaxCompute Neo4j →