概述
数据摄入指把数据从一个数据源(如 MySQL)同步到数据仓库(如 Apache Doris)。Recurve 的数据同步功能可以支持多源异构的数据交换,如数据库、数据仓库、FTP、对象存储等。
在 Recurve 中,你可以创建一个高级管道,使用 Transfer Operator 节点来实现数据同步。通常包含以下三个主要步骤:
数据获取(Dump):将数据从数据源中取出
数据转换(Transform):经过数据处理
数据导入(Load):将数据写入到目标数据库中
数据获取(Dump)
将数据从指定的数据源中取出,支持数据库、数仓、FTP 等多种连接源类型。
通过设置分片和并发数,能够支持并行地对不同分片进行提取,从而减少整个数据转移所需的时间。
数据转换(Transform)
常见的转换操作如时区转换、从 JSON 提取字段等。Recurve 支持自定义 Python 代码来实现复杂的数据转换,输入一行数据,返回若干(可以是 0、1 或多)条处理后的数据。
在 Transfer Operator 中,部分 Task type 没有 Transform 相关配置项,取决于数据获取的类型
更多使用说明,详见 数据转换(Transform)
数据导入(Load)
将数据导入到目标数据源,支持数据库、数仓及对象存储系统等多种数据源类型
数据库及数仓的数据导入分为三种模式:
OVERWRITE: 全表覆盖,用于全量数据同步。
MERGE: 合并,一般用于大表的增量同步,当目标数据和新增数据存在重复时,会根据主键字段更新为新增的数据。
APPEND: 追加,一般适用于日志型数据,重复导入可能会产生重复数据,请谨慎使用。
连接源类型
不同连接源的配置项各有不同,具体请查看 连接源类型
Last updated