湖仓一体分析服务 (LAS)数据源,通过数据集成同步任务,为您提供离线任务的读取和写入 LAS、实时任务写入 LAS的能力,实现不同数据源与 LAS 之间的数据传输。
本文将为您介绍 LAS 数据同步的能力支持情况。
DataSail 目前前仅支持离线读、离线写和实时写入 LAS 能力。
数据类型 | 是否支持 | 描述 | 范围 |
---|---|---|---|
INTEGER | 支持 | 带符号的四字节整数 | [-2 ^ 31, 2^ 31-1] |
BIGINT | 支持 | 带符号的八字节整数 | [-2 ^ 63, 2^ 63-1] |
DOUBLE | 支持 | 双精度浮点数 | { |
Decimal(precision,scale) | 支持 | 可选择精度的精确数字类型 | 1 <= precision <= 38 |
DATE | 支持 | 日历日期(年、月、日) | 0000-01-01 ~ 9999-12-31 |
TIMESTAMP | 支持 | 时间戳类型 | 0000-01-01 00:00:00.000 ~ |
STRING | 支持 | 字符串 | 8MB |
BINARY | 支持 | 二进制数据类型 | 8MB |
BOOLEAN | 支持 | 布尔类型 | True/False |
Array | 支持 | 数组类型 | 8 MB |
新建数据源操作详见配置数据源,以下为您介绍 LAS 数据源配置相关信息:
参数 | 说明 |
---|---|
基本配置 | |
数据源类型 | LAS |
接入方式 | 火山引擎 LAS |
数据源名称 | 数据源的名称,可自行设置,仅支持中文,英文,数字,“_”,100个字符以内。 |
描述 | 对当前新建数据源的注释说明,便于后续管理。 |
参数配置 | |
LAS Schema | |
Accesskey ID | 进入火山引擎,访问控制台的密钥管理界面,复制 Accesskey ID 填写到此处。如果为子用户的 AK/SK 信息,可联系主账号获取或创建子用户密钥。详见秘钥管理。 说明 参数配置的 AK\SK 信息,需确保要有 LAS Schema 的 read、write 或 Developer(同时拥有读写)权限,方能执行同步任务。 |
Accesskey Secret | 与 AccessKey ID 配套使用,类似登录密码,用于签名您的访问参数,以防被篡改。 |
LAS 数据源测试连通性成功后,进入到数据开发界面,开始新建 LAS 相关通道任务。
新建任务方式详见离线数据同步、流式数据同步。
任务创建成功后,您可根据实际场景,配置 LAS 批式读、LAS 批式写、LAS 流式写等通道任务。
数据来源端选择 LAS,并完成以下相关参数配置:
其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。
参数 | 说明 |
---|---|
*目标类型 | 数据去向目标类型选择 LAS。 |
*数据源名称 | 已在数据源管理界面注册的 LAS 数据源,下拉可选。 |
*数据表 | 选择对应数据源 Schema 下所需要采集的数据表信息,下拉可选。 说明 暂不支持读取和写入 LAS 视图形式。 |
*分区设置 |
|
LAS 批式写目标端配置与批示读端配置一致,详见上方读端配置说明。
流式任务写入 LAS,数据目标端选择 LAS,并完成以下相关参数配置:
其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数。
参数 | 说明 |
---|---|
*目标类型 | 数据去向目标类型选择 LAS。 |
*数据源名称 | 已在数据源管理界面注册的 LAS 数据源,下拉可选。 |
*数据表 | 选择对应数据源 Schema 下所需要写入的数据表信息,下拉可选。
说明 暂不支持写入 LAS 视图形式。 |
*分区频率 | 支持选择天级或小时级的分区频率:
说明 数据跟随 LAS 分区生成的时间产出,并非实时写入。 |
*分区设置 |
|
数据来源和目标端配置完成后,需要指定来源和目标端的字段映射关系,根据字段映射关系,数据集成任务将源端字段中的数据,写入到目标端对应字段中。
您可通过以下三种方式操作字段映射关系:
LAS 数据源支持使用脚本模式(DSL)的方式进行配置。
在某些复杂场景下,或当数据源类型暂不支持可视化配置时,您可通过任务脚本的方式,按照统一的 Json 格式,编写 LAS Reader 和 LAS Writer 参数脚本代码,来运行数据集成任务。
进入 DSL 模式操作流程,可详见 MySQL 数据源-4.4.1 进入DSL 模式。
进入 DSL 模式编辑界面后,您可根据实际情况替换相应参数,LAS Reader 脚本示例如下:
{ // [required] dsl version, suggest to use latest version "version": "0.2", // [required] exection mode, supoort streaming / batch now "type": "batch", // reader config "reader": { "type": "las_volc", "datasource_id": 13128, "parameter": { "partition": "date=20230222", "reader_parallelism_num": 2, "table_name": "source_table", "columns": [ { "name": "id", "type": "string" } ] } }, // writer config "writer": { ... }, // common config "common": { ... } }
Reader 参数说明,其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数:
参数名称 | 参数含义 |
---|---|
*type | Reader type,默认固定值 las_volc |
*datasource_id | 注册的 LAS 数据源 ID。可以在项目控制台 > 数据源管理界面中查找。 |
*table_name | 需要读取的 LAS 表名信息。 |
*partition | 需要读取的 LAS 表分区,支持用表达式:${date}、${hour} 等参数变量表示。 |
*columns | 所配置的表中,需要同步的列名集合,使用 JSON 的数组描述字段信息。
|
reader_parallelism_num | 指定读取并发度 |
根据实际情况替换 LAS Writer 相应参数,脚本示例如下:
{ // [required] dsl version, suggest to use latest version "version": "0.2", // [required] exection mode, supoort streaming / batch now "type": "batch", // reader config "reader": { ... }, // writer config "writer": { "type": "las", "datasource_id": 13128, "parameter": { "table_name": "target_table", "partition": "date=${date},city_temp='3'", "columns": [ { "name": "id", "type": "string" } ], "job.writer.write_mode":"overwrite" } }, // common config "common": { ... } }
Writer 参数说明,其中参数名称前带 * 的为必填参数,名称前未带 * 的为可选填参数:
参数名称 | 参数含义 |
---|---|
*type | writer type, 默认固定值 las |
*datasource_id | 注册的 LAS 数据源 ID。可以在项目控制台 > 数据源管理界面中查找。 |
*table_name | 需要写入的目标 LAS 表名信息。 |
*columns | 所配置的表中需要同步的列名集合,使用 JSON 的数组描述字段信息。
注意
|
*partition | 填写数据写入的分区信息,支持用表达式:${date}、${hour} 等参数变量表示。 |
batch_size | 每次 flush 写入的条数,默认1024 |
writer_parallelism_num | 指定写入并发度 |
job.writer.write_mode | 指定数据写入 LAS 的模式,支持 insert into、overwrite 方式写入,默认为 overwrite 写入方式。 |
对于可视化通道任务,读参数需要加上 job.reader.
前缀,写参数需要加上 job.writer.
前缀,如下图所示:
对于 DSL 任务,读参数请配置到 reader.parameter
下,写参数请配置到 writer.parameter
下,直接输入参数名称和参数值。如下图所示:
批式写 LAS 支持以下高级参数,您可根据实际情况进行配置:
参数名 | 描述 | 默认值 |
---|---|---|
job.writer.write_mode | LAS 的数据写入模式,写入方式支持 insert、overwrite。 注意 写入模式仅对批式写入 LAS 有效。 | overwrite |