实时数据采集方案支持您将源数据库的增量数据实时采集至消息队列。该方案场景适用于您将源端增量数据同步至目标端数据源库表中,且增量数据较大或者存在波峰波谷时,建议您先进行数据缓存的中间步骤。您可根据实际场景进行选择使用。
本文将为您介绍如何创建实时采集方案。
1 使用限制 实时整库同步解决方案在读取 MongoDB 数据时,服务端 MongoDB 仅支持 4.0 及以上的版本。 实时数据采集解决方案同时支持选择的源表数量目前上限为 10000 张,但建议先以 100 张以下表数量来试用。
2 前置操作 已开通并创建 DataLeap 项目,创建的全量增量任务均会同步到该项目下。详见新建项目 。 已开通全域数据集成(DataSail)产品。详见服务开通 。 已创建合适资源规格的独享数据集成资源组,并将其绑定至创建成功的 DataLeap 项目下。且独享集成资源组已和 DataSail 做网络配置打通。
资源组购买操作详见资源组管理 ,项目绑定操作详见数据集成资源组 ,网络操作详见 DataSail 网络配置 。 已完成来源和目标端的数据源准备,创建数据源操作详见 MySQL 数据源配置 、DataSail 数据源配置 。
3 数据源配置 在配置实时数据采集方案前,您需在数据源管理 界面中,配置来源端和目标端相应的数据源。详见配置数据源 。
独享数据集成资源组所在的 VPC 需要和来源端、目标端数据库实例所在的 VPC 保持一致,火山引擎 RDS 数据库类型需要将 VPC 中的 IPv4 CIDR 地址,加入到 RDS 数据库的白名单下,保证资源组与数据源之间的网络互通; 若资源组和数据源实例不在同一 VPC 环境时,您可通过公网或者通过专线形式进行互通。网络配置详见网络连通解决方案 。
4 新建实时数据采集 数据源配置前置操作准备完成后,您可开始进行实时数据采集方案配置:
登录 DataSail 控制台 。 在左侧导航栏中选择数据同步方案 ,进入数据同步解决方案配置界面。 单击目录树上方项目选择入口,选择已创建的 DataLeap 项目。 单击右上角新建数据同步解决方案 按钮,下拉选择实时数据采集 按钮,进入实时数据采集方案配置界面。按照以下配置,完成方案新建。 进入配置界面后,您可按实际场景需求,完成方案的基本配置、映射配置 等流程。
5 基本配置 实时数据采集方案基本配置参数说明如下。
5.1 基本配置 基本配置参数说明如下表所示。其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
配置项
说明
*链路类型
下拉选择来源和目标端数据源类型。
来源支持类型:MySQL、PostgreSQL、SQLServer、Oracle、VeDB、MongoDB、DataSail(内置Topic)、Kafka、BMQ 目标支持类型:DataSail(内置Topic)、LAS、Kafka、BMQ、Print、Hive *方案名称
输入整库实时同步方案名称。只允许字母、数字、下划线、连字符,且仅允许输入 1~63 个字符。
方案描述
输入此方案的描述信息,方便后续维护管理。
*保存至
单击选择框,在弹窗中选择方案保存路径,此路径为数据开发项目中的任务路径。创建方式详见任务目录树管理 。
*写入模式
当目标端为 LAS、Hive 数据源类型时,实时数据采集方案支持“实时写入日志表 ”模式,表示源端所有表的变更记录写入一张 log 表里,log 表由平台自动生成。您可将 log 表与准实时解决方案关联绑定,组合生成全增量表。
5.2 网络与资源配置 在网络与资源配置中,配置数据来源/目标端数据源信息、集成资源组信息。其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
配置项
说明
*数据来源
在数据来源框中,选择数据源管理中创建成功的数据源,支持选择多个。
若此前仍未创建相应数据源或需修改数据配置:
您可单击下方新建数据源 按钮,在右侧弹窗的数据源管理界面,进行数据源的创建。 也可在对应数据源名称后,单击编辑 按钮,进行数据源配置编辑操作。
具体数据源配置详见配置数据源 。
说明
目前对于 JDBC 类火山引擎数据源类型,您可通过批量新增数据源 的方式,进行批量创建,单次最多创建 200 个数据源:
单击批量新建数据源 按钮,进入新建窗口。 单击下载模板 按钮,在 Excel 模版中,配置数据源相关的数据源名、RDS 实例ID、数据库名、用户名密码等信息。 Excel 中数据源信息填写完成后,单击立即上传 > 确定新增 ,完成数据源批量新增。 *数据目标
下拉选择数据源管理中创建成功的目标端数据源名称。
*实时集成任务资源组
下拉选择 DataLeap 项目控制台中已绑定的独享数据集成资源组:
选择的资源组,需要确保能与源端、中间缓存数据源、目标端数据源连通,您可单击下方的测试连通性 按钮,测试选择的资源组是否可以和各数据源连通成功。
您可以将鼠标移动至测试连通性 按钮上方,单击查看详情 ,可查看各数据源的连通性详情与测试结果信息。 您也可以单击资源组管理 按钮,前往资源组管理界面进行资源组的查看或新建等操作,详见资源组管理 。
5.3 资源组高级配置 您可在资源组高级配置中,配置实时采集同步信息。
其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
配置项
说明
*实时集成任务资源组
默认选择在网络与资源配置 中选择好的独享数据集成资源组。您也可下拉选择已在 DataLeap 项目控制台中绑定的其他独享数据集成资源组。
说明
选择的资源组,需要确保能与源端、目标端数据源连通。 您也可以单击资源组管理 按钮,前往资源组管理界面进行资源组的查看或新建等操作,详见资源组管理 。 *资源设置
实时任务的资源设置支持默认 和自定义 两种配置方式,可设定单 TaskManager CPU 数量 、单 TaskManager 内存大小 、JobManager CPU 数量 等参数。
其中自定义方式设置时,平台会按固定比例协助您合理分配资源:例如,您选择 “单 TaskManager CPU 数” 或 “JobManager CPU 数” 后,平台会展示对应不同规格的内存大小供选择。
说明
默认设置中,各运行资源设置如下:
单 TaskManager CPU 数:2 单 TaskManager 内存:4096 MB 单 TaskManager slot 数:4 JobManager CPU 数:1 JobManager 内存:2048 MB *镜像版本
全域数据集成产品版本更新速度相对较快,解决方案中的实时增量任务需配置流式镜像版本号,建议您下拉选择当前推荐 标签的镜像版本号。
说明
历史解决方案建议及时升级到新的镜像版本,您便可以使用新版本的功能和特性,保障任务的稳定性和执行效率,降低运维成本。
更多镜像版本说明及注意事项详见全域集成引擎版本升级管理 。
集成高级参数设置
打开高级参数输入按钮,根据实际业务要求,以 Key\Value 形式,在编辑框中输入实时任务所需的高级参数。支持参数详见高级参数 。
Flink 运行参数设置
支持输入 Flink 相关的动态参数和执行参数,具体参数设置详见 Flink 官方文档 。
资源组高级配置完成后,单击配置窗口右上角关闭 按钮,退出配置窗口,并检查基本配置 所有参数无误后,单击右下角下一步 按钮,进行方案的映射配置。
6 映射配置 在映射配置界面中,您需完成数据来源库表与库表映射规则匹配策略:
6.1 数据源配置 进行来源库表的选择,其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
配置项
说明
*数据源
默认展示在网络与资源配置 中选择的数据来源名称。
您也可单击下拉框中的新建数据源 按钮,在右侧弹窗的数据源管理界面,进行数据源的创建。 也可在对应数据源名称后,单击编辑 按钮,进行数据源配置编辑操作。 *订阅格式
下拉选择数据订阅格式,不同源端数据类型支持格式不同,您可根据实际情况进行选择。
*源库、源 Schema、源表/集合选择限定条件
您可通过设置源库、源 Schema、源表的限定条件,来获取源表信息。
单击添加规则 按钮,完成限定条件规则的添加,支持添加多个规则,取合集;
限定条件:您可通过指定源库、源表的名称来限定,也可通过正则表达式匹配的方式,快速获取源端库表信息。 类型:依据限定条件中输入的条件,下拉选择匹配的类型,支持正则 和个例 类型配置。 源表限定条件,可支持批量输入,单击批量输入 按钮,在弹窗中输入限定条件表达式,示例如下:[{"filterPattern":"table_name","filterType":"FULL","filterAction":"INCLUDE"}
filterType 可选:个例-FULL、正则-REG filterAction 可选:INCLUDE 注意
当前批量输入的内容将会全量替换已手动添加的规则,请谨慎操作!
删除:您也可以单击操作 列下的删除按钮,完成规则删除。 表/集合
单击获取源表/获取源集合 按钮,平台根据源库、源表/集合限定条件的设置,自动加载符合条件的表/集合。
注意
当前获取源表/集合数量上限为 10000,超出部分将不再进行更精确的筛选。 当源端为 MongoDB 数据源时,仅显示数据源中已配置用户有权限的集合,其余集合将不显示。更多 MongoDB 权限操作详见3 使用前提 。
6.2 目标库表映射配置 来源库表选择完成后,您便可进行后续的库表映射规则配置。
6.2.1 高级配置 展开高级配置 按钮,进行解决方案 DML、高级参数等相关配置,其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。
配置项
说明
DML 配置
解决方案执行过程中,支持同步 DML 事件类型,支持插入、更新、删除 事件类型。
说明
若取消勾选 DML 事件类型,则源端进行相应操作时,解决方案将不同步对应操作类型的数据; 若在任务高级参数中配置了 DML 相关语句过滤,则以高级参数中的配置为准,此处勾选不生效。 源表和目标刷新配置
整库离线方案配置的源表和目标表数量较多时,您可设置单次拉取表数量 ,来分批进行表映射配置,默认单次拉取数量为 100 张表,您可根据实际情况进行调整,填写范围 1~2000。
高级参数配置
您可为同步解决方案配置全局的高级参数,打开开关按钮后,可通过以下方式配置:
单表编辑模式,需要设置参数 Key 和 value 值; 脚本编辑模式,需要输入 json 格式的参数。 如单表编辑模式,您可通过设置参数:storage_dialect_type=MYSQL,来设定 ByteHouse CDW 表为 MySQL 属性表。
6.2.2 库/表名映射配置 单击库/表名映射配置 按钮,在弹窗中配置库表匹配策略,支持选择与来源库表同名和自定义方式匹配:
来源库表名同名:目前暂时不支持。 自定义:您可通过自定义匹配方式,设置源端与目标库名/表名/ Topic 名称的转换规则,或在目标名称框中输入相应的名称信息。
您可在规则输入框中,通过变量参数来实现分流到多个不同 Topic 或 表名,如: ${db_name_src_transed}、${table_name_src_transed}。自定义配置示例详见9.3 自定义库表匹配策略示例 。说明
目标类型为 LAS、Hive 时,暂不支持自动创建与源端同名的目标数据库,您需先在目标端中创建好对应的数据库。 若目标 Topic/表还未创建,则采集方案将会自动根据此处的命名来新建 Topic 或表名称。
映射规则配置完成后,单击弹窗右上角关闭 按钮,即规则映射配置完成。
6.2.3 刷新逻辑表和目标表映射 库/表映射配置完成后,您可单击刷新源表和目标表映射 按钮,自动加载源表和目标表信息,您可以在列表中进行以下操作:
操作项
说明
逻辑表名
单击逻辑表名信息,可查看所选的源库表信息。
Topic/表建立方式
Topic/表建立方式分为使用已有表、自动建表 和数据表不存在 几种方式:
使用已有表:当映射配置检查,目标端存在与源端表同名的表名时,则会直接使用已有表,来执行方案。 自动建表:当映射配置检查,目标端不存在与源端表同名的表名时,将会通过任务,以定义的目标表名,自动创建目标表。 数据表不存在:当目标端无法通过 DataSail 自动建表时,您需要进入目标端数据库中,手动创建数据表后,再继续配置解决方案。 配置
您可为采集方案配置映射高级参数,以 key-value 的形式输入。
常用参数示例:
Topic 分区数:solution.writer.common.topic.partition_num = 5 Topic TTL 时间:solution.writer.common.topic.ttl = 7,单位天
6.3 提交方案 目标库表映射配置完成后,单击右下角提交方案 按钮,进行方案的提交,在弹窗中,您可根据实际情况勾选方案是否立即执行 ,并单击确定 按钮,完成实时数据同步解决方案的创建。
7 实时整库方案运维 采集方案创建完成后,进入到方案列表界面,便可查看方案的执行概况,同时您也可以在列表界面进行以下操作:
7.1 解决方案筛选 在创建众多的解决方案后,您可在方案列表界面通过搜索或筛选的方式进行快速定位方案。
您可通过方案名称、方案 ID、数据来源名称、数据目标名称等信息,输入搜索的方式进行筛选。 您也可通过下拉选择方案操作状态、方案类型、数据来源名称、数据目标类型、创建人等选项进行任务的定位操作。
7.2 解决方案运维 在方案列表的运维 列中,您可操作执行方案运维相关内容:
注意
启动中的解决方案不支持进行提交执行、方案编辑、方案删除、运行监控操作。
运维操作
说明
执行详情
单击运维 操作列的执行详情 按钮,进入解决方案执行详情界面,查看方案的具体执行步骤,如目标表创建,采集流任务创建、发布、启动等一系列详情步骤。
在具体步骤的右侧,您可单击单个步骤的执行详情 按钮,您可进入查看各步骤中的任务操作状态、耗时及前往任务运维 界面等操作。 单击云监控 页签,前往查看采集方案的实时集成读写指标、CDC 监控指标信息、资源组使用率等监控信息。您可根据实际场景,自定义时间来查看方案相关的执行指标。 相关任务:
单击相关任务 页签,可查看该方案下所有相关任务的执行情况;也可通过该界面,快速查看具体执行任务的日志详情。
实时数据采集解决方案可查看实时任务列表进行以下操作:
在操作 列中单击详情 按钮,跳转至实时任务运维界面的详情页中,查看任务基础信息、配置信息、运行监控、执行日志、操作日志 等信息。详见4.2 任务详情 。 在操作列中单击 Application Url 按钮,可进入查看 Flink 的 Web UI 执行日志详细信息。 云监控:
单击监控 页签,前往查看解决方案的实时集成读写指标、CDC 延迟指标信息。您可根据实际场景,自定义时间来查看方案相关的执行指标。各指标说明详见实时任务监控指标及告警配置 。
提交执行
未在启动中 的任务,您可单击运维 操作列的提交执行 按钮,将任务提交到运行状态,开启实时数据采集任务的运行。
方案调整后,第二次提交执行时,若任务之前的位点已不存在或想直接从最新位点开始执行时,则您需要在增量流任务位点重置 步骤中,人工确认是否需要重置位点开关。重置时您可输入 Binlog 文件名、 Binlog 位点、gtids 等信息进行位点重置。 在采集流任务启动 的执行详情中,单击更多 按钮,您可进行前往运维 、查看操作日志 、查看 Application Url 等操作。
方案查看
单击运维 操作列更多 中的方案查看 按钮,可对当前采集方案的各个配置步骤进行查看。
方案编辑
单击运维 操作列更多 中的方案编辑 按钮,可对当前采集方案的方案名称、数据来源端、目标端、运行配置步骤进行修改编辑。
方案复制
对已创建成功的采集方案任务,您可单击运维 操作列更多 中的方案复制 按钮,对当前采集方案进行复制操作,生成一个新的采集方案。
修改责任人
单击运维 操作列更多 中的修改责任人 按钮,在弹窗的下拉框中,选择对应的责任人,单击确定 按钮,完成责任人修改操作。修改完成后,您也可前往下方的操作历史 中查看修改记录。
注意
目前创建解决方案的用户默认是该解决方案的责任人。若要修改责任人,则必须是项目管理员 ,或是当前解决方案的责任人 且在项目内具备开发 角色的用户来执行修改操作。 当前修改责任人操作,不会修改解决方案对应生成的任务责任人,若需要批量修改任务责任人,您可前往任务开发 > 批量操作 或 任务运维 > 修改 > 修改责任人 ,进行批量修改。详见3.3 批量操作类型 、3.3 批量操作列 。 方案解绑
解决方案提交后,在 DataLeap 数据开发 界面均会生成相应的集成任务。
如果要在数据开发界面中对生成的集成任务进行编辑时,建议先进行解决方案的方案解绑 操作,使解决方案界面中的任务处于已解绑 (只读)状态。之后,集成任务的编辑、维护等操作需移步至数据开发界面进行,以确保两个界面中的同一任务配置一致。
说明
方案解绑后,无法在解决方案列表中再次恢复,也不能在该列表里进行方案提交执行、编辑、复制等操作。您可前往数据开发或运维中心界面进行后续维护。
运行监控
单击运维 操作列更多 中的运行监控 按钮,为当前实时数据采集方案配置实时采集任务的运行监控。
在运行监控界面,单击新增规则 按钮,平台自动为您创建一条监控规则,您可在操作 列中,单击配置监控 按钮,前往运维中心,查看监控详情。更多运行监控配置操作详见实时监控规则 。
强制重启
单击运维 操作列更多 中的强制重启 按钮,将之前创建的采集方案进行重启操作,区别于提交执行,强制重启会位点初始化、采集流任务停止等操作。
提交停止
单击运维 操作列更多 中的提交停止 按钮,可将处于正常运行中 的采集流任务进行停止操作。
操作历史
单击运维 操作列更多 中的操作历史 按钮,您可查看当前同步方案的操作历史情况,如创建方案、重启方案、提交停止等操作,均会记录在操作历史中。您可单击操作 列中的查看详情 按钮,对历史版本的操作进行查看。
8 后续步骤 方案提交完成,任务处于运行中后,您也可以前往运维中心>实时任务运维 界面,对实时采集任务进行一系列运维操作,如对任务配置监控报警,开启停止任务等操作。运维操作详见实时任务运维 。