LogHub(SLS)单表实时同步至OSS-HDFS数据湖

数据集成目前支持将Kafka、LogHub等源头的数据单表实时同步至OSS。本文以LogHub(SLS)为源端、OSS-HDFS为目标端场景为例,为您介绍如何把SLS的单个Logstore数据实时同步到OSS-HDFS数据湖。

前提条件

操作步骤

一、选择同步任务类型

  1. 进入数据集成页面。

    登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据集成 > 数据集成,在下拉框中选择对应工作空间后单击进入数据集成

  2. 在左侧导航栏单击同步任务,然后在页面顶部单击新建同步任务,进入同步任务的创建页面,配置如下基本信息。

    • 数据来源和去向LogHubOSS-HDFS

    • 新任务名称:自定义同步任务名称。

    • 同步类型单表实时

二、网络与资源配置

  1. 网络与资源配置区域,选择同步任务所使用的资源组。您可以为该任务分配任务资源占用CU数。

  2. 来源数据源选择已添加的LogHub数据源,去向数据源选择已添加的OSS-HDFS数据源后,单击测试连通性image

  3. 确保来源数据源与去向数据源均连通成功后,单击下一步

三、配置同步链路

1、配置Kafka来源

在页面上方单击数据来源SLS,编辑SLS来源信息

image

  1. SLS来源信息区域,选择LogHub(SLS)中需要同步的logstore。

  2. 单击右上角的数据采样

    在弹出对话框中指定好开始时间采样条数后,单击开始采集按钮,可以对logstore中的数据进行采样,同时您可以预览logstore中的数据,为后续数据处理节点的数据预览和可视化配置提供输入。

  3. 在选择logstore后,在输出字段配置区域会自动加载该logstore中的数据,生成相应的字段名。可调整数据类型删除以及手动增加输出字段

    说明

    如果配置或者字段在SLS中不存在,则对应字段向下游输出为NULL。

2、编辑数据处理节点

单击image图标可以增加数据处理方式。目前提供5种数据处理方式(数据脱敏字符串替换数据过滤JSON解析字段编辑与赋值),您可根据需要做顺序编排,在任务运行时会按照编排的数据处理先后顺序执行数据处理。

image

每完成一个数据处理节点配置,可以单击右上角的数据输出预览按钮,在弹出对话框中,单击重新获取上游输出,模拟得到logstore采样数据经过当前数据处理节点处理后的结果。

说明

数据输出预览强依赖LogHub(SLS)来源的数据采样,在执行数据输出预览前需要先在LogHub(SLS)来源表单中完成数据采样。

3、配置OSS-HDFS去向信息

在页面上方单击数据去向OSS-HDFS,编辑OSS-HDFS去向信息

image

  1. OSS-HDFS去向信息区域,选择要写入的OSS-HDFS基本信息。

    • 写入格式:支持HudiPaimonlceberg三种写入格式。

    • 选择元数据库自动构建位置:如果您当前账号下开通了DLF产品,支持同步数据入湖时自动在DLF构建对应的元数据库和元数据表信息。

      说明

      不支持跨地域构建元数据。

    • 存储路径选择:选择入湖后数据存储在OSS的哪个路径下。

    • 目标库:选择数据写入的目标数据库,支持您选择新建库,创建DLF元数据库,需指定库名

    • 目标表:选择要写入的OSS表是自动建表还是使用已有表

    • 表名:填写或者选择要写入的OSS表名。

  2. (可选)编辑表结构。

    当选择自动建表时,您需要单击编辑表结构按钮,在弹框中编辑目标表结构。同时,支持您单击根据上游节点输出列重新生成表结构按钮,自动根据上游节点输出列,生成表结构。您可以在自动生成的表结构中选择一列配置为主键。

  3. 配置字段映射。

    系统会自动按照同名映射原则生成上游列与目标表列之间的映射,您可根据需要进行调整,支持一个上游列映射到多个目标表列,不允许多个上游列映射到一个目标表列,当上游列未配置到目标表列的映射时,对应列不会写入目标表。

四、报警配置

为避免任务出错导致业务数据同步延迟,您可以对同步任务设置报警策略。

  1. 单击页面右上方的报警配置,进入实时子任务报警设置页面。

  2. 单击新增报警,配置报警规则。

    说明

    此处定义的报警规则,将对该任务产生的实时同步子任务生效,您可在任务配置完成后,进入实时同步任务运行与管理界面查看并修改该实时同步子任务的监控报警规则。

  3. 管理报警规则。

    对于已创建的报警规则,您可以通过报警开关控制报警规则是否开启,同时,您可以根据报警级别将报警发送给不同的人员。

五、高级参数配置

同步任务提供部分参数可供修改,您可以按需对该参数值进行修改。

说明

请在完全了解对应参数含义的情况下再进行修改,以免产生不可预料的错误或者数据质量问题。

  1. 单击界面右上方的高级参数配置,进入高级参数配置页面。

  2. 高级参数配置页面修改相关参数值。

六、DDL能力配置

来源数据源会包含许多DDL操作,您可以根据业务需求,在界面右上方单击DDL能力配置,进入DDL能力配置页面,对不同的DDL消息设置同步至目标端的处理策略。

说明

不同DDL消息处理策略请参见:DDL消息处理规则

七、资源组配置

您可以单击界面右上方的资源组配置,查看并切换当前的任务所使用的资源组。

八、模拟运行

完成上述所有任务配置后,您可以单击右上角模拟运行,模拟整个任务针对少量采样数据的处理,查看数据写入目标表后的结果。当任务配置错误、模拟运行过程中异常或者产生脏数据时,会实时反馈出异常信息,能够帮助您快速评估任务配置的正确性,以及是否能得到预期结果。

  1. 在弹出的对话框中设置采样参数(开始时间采样条数)。

  2. 单击开始采集得到采样数据。

  3. 单击预览按钮,模拟整个任务针对少量采样数据的处理。

九、执行同步任务

  1. 完成所有配置后,单击页面底部的完成配置

  2. 数据集成 > 同步任务界面,找到已创建的同步任务,单击操作列的启动

  3. 单击任务列表中对应任务的名称/ID,查看任务的详细执行过程。

同步任务运维

查看任务运行状态

创建完成同步任务后,您可以在同步任务页面查看当前已创建的同步任务列表及各个同步任务的基本信息。

image

  • 您可以在操作列启动停止同步任务,在更多中可以对同步任务进行编辑查看等操作。

  • 已启动的任务您可以在执行概况中看到任务运行的基本情况,也可以单击对应的概况区域查看执行详情。

image

LogHub(SLS)到OSS-HDFS的同步任务分为结构迁移实时数据同步两个步骤:

  • 结构迁移:包含目标表的创建方式(已有表或自动建表),如果是自动建表,将会为您展示建表的DDL。

  • 实时数据同步:包含实时同步的统计信息,包含实时的运行信息、DDL记录、报警信息等。

任务重跑

在某些特殊情况下,如果需要修改同步字段、调整目标表字段或表名信息时,您还可以单击同步任务操作列的重跑,系统会将调整的字段、变更的目标包等信息进行同步,之前同步过未修改的表将不会再进行同步。

  • 不修改任务配置,直接单击重跑操作,重新运行一次同步任务。

  • 编辑任务,进行修改操作后,单击完成配置。此时任务的操作会变成应用更新,单击应用更新会直接触发修改后的任务重跑。实时同步任务会按照新的配置运行。