ElasticSearch 数据源

最近更新时间:2024-09-04 20:44:31

我的收藏
数据集成提供了 Elasticsearch 的实时写入能力,本文为您介绍 Elasticsearch 实时数据同步当前能力支持情况。

支持版本

目前数据集成支持 Elasticsearch 整库级实时写入,使用实时写入能力需遵循以下版本限制:
类型
版本
Elasticsearch
5.x, 6.x, 7.x

使用限制

目前仅支持 TDSQL-C MySQL > Elasticsearch 一条实时整库链路。
Elasticsearch 主键取值默认生成 _id 值,不允许修改。
当前仅支持文档的 _id 作为分区列。
Elasticsearch 当前采用动态字段映射建表,DDL 变更策略不支持自动修改列类型,不支持删除列,修改列名会变为新增列。
不支持开启 Kerberos 认证的 Elasticsearch。

实时整库写入配置

支持的数据来源

当前支持将以下来源类型的数据实时整库同步到 Elasticsearch 目标端:

数据目标配置

Elasticsearch 6.x 以上(包含)版本和以下版本在配置上有些差异:
6.x 以上(包含)版本配置内容如下:



6.x 以下版本配置内容如下:



参数
说明
数据去向
选择需要同步的目标数据源。
ES 版本
根据选择的数据源自动显示对应的版本
写入模式
Upsert:更新写入,更新每行记录所有字段(当前仅支持此模式)。
索引/类型匹配策略
ES 中索引以及类型的名称匹配规则:
6.x 以上(包含)版本索引默认与来源表同名;类型默认为_doc,不支持修改;
6.x 以下版本索引默认与来源库同名;类型默认与来源表同名;
自定义:支持使用内置参数和字符串组合生成目标索引/类型名称。
说明:
示例:如来源表名称为 table1,映射规则为 ${table_name_di_src}_inlong,则 table1 的数据将被最终映射写入至 table1_inlong 中。
逐渐取值方式
当前仅支持默认生成 _id 值

日志采集写入节点配置




参数
说明
数据源
选择当前项目中可用的 Elasticsearch 数据源。
索引
Elasticsearch 数据源中的索引名称。
type
根据索引自动识别,7.X 版本的 ElasticSearch 默认 type 为 _doc。
写入模式
ElasticSearch 仅支持按行更新,更新每行记录所有字段。
主键取值方式
支持三种取值方式:
源表主键: document 的 id 使用源表的主键。
联合主键: document 的 id 使用源表的多个列共同确定。
无主键: 默认生成 _id 值。
开启路由
Elasticsearch 是否开启路由分区索引数据。开启路由功能后,可控制在 ElasticSearch 中使用哪个分区来存储文档。
高级设置(可选)
可根据业务需求配置参数。

写入数据类型转换支持

内部类型
JSON 类型
CHAR / VARCHAR / STRING
string
BOOLEAN
boolean
BINARY / VARBINARY
string with encoding: base64
DECIMAL
number
TINYINT
number
SMALLINT
number
INT
number
BIGINT
number
FLOAT
number
DOUBLE
number
DATE
string with format: date
TIME
string with format: time
TIMESTAMP
string with format: date-time
TIMESTAMP_WITH_LOCAL_TIME_ZONE
string with format: date-time (with UTC time zone)
INTERVAL
number
ARRAY
array
MAP / MULTISET
object
ROW
object