Apache Doris Sink Connector 部署指南

通过遵循本指南,您将能够轻松部署Doris数据接收连接器,有效地将数据导入Doris,为数据驱动的决策提供强有力的支持

在当今数据驱动的时代,如何高效、准确地处理和分析大数据成为了各行各业面临的共同挑战。Apache Doris,作为一个基于 MPP 架构的高性能、实时的分析型数据库,为大规模数据分析提供了强大的支持。

1709285808680cb7ff8496717ca3bc312746f29d772fc

随着 Doris Connector 的推出,开发者现在可以更加便捷地将数据实时导入 Doris,无论是流数据还是批量数据。本指南将引导您完成 Doris 及其数据接收连接器的部署过程。

Doris

Doris 数据接收连接器支持流式和批量模式,使得数据向 Doris 的传输变得简单高效。它的内部实现采用了批处理缓存和流加载导入,确保了数据处理的灵活性和可靠性。

支持的版本

  • 精确一次 & CDC 支持 Doris 版本 >= 1.1.x

  • 支持数组数据类型 Doris 版本 >= 1.2.x

  • 将在 Doris 版本 2.x 支持映射数据类型

:::

关键特性

配置项

名称类型是否必须默认值
fenodesstring-
usernamestring-
passwordstring-
table.identifierstring-
sink.label-prefixstring-
sink.enable-2pcbooltrue
sink.enable-deleteboolfalse
doris.configmap-

fenodes [string]

Doris 集群的 fenodes 地址,格式为 "fe_ip:fe_http_port, ..."

username [string]

Doris 用户名

password [string]

Doris 用户密码

table.identifier [string]

Doris 表名

sink.label-prefix [string]

流加载导入时使用的标签前缀。在 2pc 场景中,需要全局唯一性以确保 SeaTunnel 的 EOS 语义。

sink.enable-2pc [bool]

是否启用两阶段提交(2pc),默认为 true,以确保精确一次语义。有关两阶段提交的更多信息,请参考这里

sink.enable-delete [bool]

是否启用删除功能。此选项要求 Doris 表启用批量删除功能(0.15+ 版本默认启用),且仅支持唯一模型。更多详情请参考此链接:

https://doris.apache.org/docs/dev/data-operate/update-delete/batch-delete-manual

doris.config [map]

流加载的 data_desc 参数,更多详情请参考此链接:

https://doris.apache.org/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/STREAM-LOAD

支持的导入数据格式

支持的格式包括 CSV 和 JSON。默认值:CSV

示例

使用 JSON 格式导入数据

sink {    Doris {        fenodes = "e2e_dorisdb:8030"        username = root        password = ""        table.identifier = "test.e2e_table_sink"        sink.enable-2pc = "true"        sink.label-prefix = "test_json"        doris.config = {            format="json"            read_json_by_line="true"        }    }}

使用 CSV 格式导入数据

sink {    Doris {        fenodes = "e2e_dorisdb:8030"        username = root        password = ""        table.identifier = "test.e2e_table_sink"        sink.enable-2pc = "true"        sink.label-prefix = "test_csv"        doris.config = {          format = "csv"          column_separator = ","        }    }}

更新日志

2.3.0-beta 2022-10-20 添加 Doris 数据接收连接器

下一版本

[Improve] 更改 Doris 配置前缀 3856

[Improve] 重构一些 Doris 数据接收代码以及支持 2pc 和 CDC 4235

tip

PR 4235 is an incompatible modification to PR 3856. Please refer to PR 4235 to use the new Doris connect.

随着大数据技术的不断进步,Apache Doris 及其数据接收连接器将在数据处理和分析领域发挥越来越重要的作用。通过遵循本指南,您将能够轻松部署 Doris 数据接收连接器,有效地将数据导入 Doris,为数据驱动的决策提供强有力的支持。我们期待看到开发者和企业通过使用 Doris 解锁数据分析的无限潜力。

随着 Doris Connector 的推出,开发者现在可以更加便捷地将数据实时导入 Doris,无论是流数据还是批量数据。本指南将引导您完成 Doris 及其数据接收连接器的部署过程。

Doris

Doris 数据接收连接器支持流式和批量模式,使得数据向 Doris 的传输变得简单高效。它的内部实现采用了批处理缓存和流加载导入,确保了数据处理的灵活性和可靠性。

支持的版本

  • 精确一次 & CDC 支持 Doris 版本 >= 1.1.x

  • 支持数组数据类型 Doris 版本 >= 1.2.x

  • 将在 Doris 版本 2.x 支持映射数据类型

:::

关键特性

配置项

名称类型是否必须默认值
fenodesstring-
usernamestring-
passwordstring-
table.identifierstring-
sink.label-prefixstring-
sink.enable-2pcbooltrue
sink.enable-deleteboolfalse
doris.configmap-

fenodes [string]

Doris 集群的 fenodes 地址,格式为 "fe_ip:fe_http_port, ..."

username [string]

Doris 用户名

password [string]

Doris 用户密码

table.identifier [string]

Doris 表名

sink.label-prefix [string]

流加载导入时使用的标签前缀。在 2pc 场景中,需要全局唯一性以确保 SeaTunnel 的 EOS 语义。

sink.enable-2pc [bool]

是否启用两阶段提交(2pc),默认为 true,以确保精确一次语义。有关两阶段提交的更多信息,请参考这里

sink.enable-delete [bool]

是否启用删除功能。此选项要求 Doris 表启用批量删除功能(0.15+ 版本默认启用),且仅支持唯一模型。更多详情请参考此链接:

https://doris.apache.org/docs/dev/data-operate/update-delete/batch-delete-manual

doris.config [map]

流加载的 data_desc 参数,更多详情请参考此链接:

https://doris.apache.org/docs/dev/sql-manual/sql-reference/Data-Manipulation-Statements/Load/STREAM-LOAD

支持的导入数据格式

支持的格式包括 CSV 和 JSON。默认值:CSV

示例

使用 JSON 格式导入数据

sink {    Doris {        fenodes = "e2e_dorisdb:8030"        username = root        password = ""        table.identifier = "test.e2e_table_sink"        sink.enable-2pc = "true"        sink.label-prefix = "test_json"        doris.config = {            format="json"            read_json_by_line="true"        }    }}

使用 CSV 格式导入数据

sink {    Doris {        fenodes = "e2e_dorisdb:8030"        username = root        password = ""        table.identifier = "test.e2e_table_sink"        sink.enable-2pc = "true"        sink.label-prefix = "test_csv"        doris.config = {          format = "csv"          column_separator = ","        }    }}

更新日志

2.3.0-beta 2022-10-20 添加 Doris 数据接收连接器

下一版本

[Improve] 更改 Doris 配置前缀 3856

[Improve] 重构一些 Doris 数据接收代码以及支持 2pc 和 CDC 4235

tip

PR 4235 is an incompatible modification to PR 3856. Please refer to PR 4235 to use the new Doris connect.

随着大数据技术的不断进步,Apache Doris 及其数据接收连接器将在数据处理和分析领域发挥越来越重要的作用。通过遵循本指南,您将能够轻松部署 Doris 数据接收连接器,有效地将数据导入 Doris,为数据驱动的决策提供强有力的支持。我们期待看到开发者和企业通过使用 Doris 解锁数据分析的无限潜力。