本文为您介绍EasyStream实时开发中SQL任务调试的限制和操作步骤。

使用限制

  • 任务类型限制:仅有SQL任务可进行调试操作。

操作步骤

1. 新建SQL任务

  1. 登录 EasyStream实时计算平台
  2. 快捷导航栏 选择 实时开发 ,若 快捷导航栏 中无相关选项可参考 快速导航栏 进行操作。
  3. 切换至目标 工作空间
  4. 单击 新建SQL任务 ,在弹出窗口中填写任务配置信息。
  5. 单击 确定

2. 编写FlinkSQL代码

CREATE TABLE datagen (
  `id`   VARCHAR,
  `name` VARCHAR
) WITH (
  'connector' = 'datagen',
  'rows-per-second' = '5'
);

CREATE TABLE blackhole (
  `id` VARCHAR,
  `name` VARCHAR
) WITH (
  'connector' = 'blackhole'
);

CREATE TABLE blackhole_cnt(
  `cnt` BIGINT
) WITH (
  'connector' = 'blackhole'
);

insert into blackhole
  select *
    from datagen;

insert into `blackhole_cnt`
  select count(*)
    from datagen;

3. 从数据采样

上方代码案例中使用的为'datagen'数据源直接仿造数据,若数据来源为Kafka等,可以参考此步骤进行数据样本的采集、编辑、保存。

  1. 在SQL任务中添加source块,选择数据源类型、数据库、表,并可在配置中设置set参数。
    SQL任务调试 - 图1

  2. 单击 调试 按钮,下方出现 调试 日志和结果。在结果页面双击任意值,可对值进行编辑;单击保存,采样结果将被保存为正式样本,并可用于后续代码调试。
    SQL任务调试 - 图2

  3. 在调试过程中单击 停止调试 按钮即可强制取消调试。

4. SQL调试

  1. 单击 SQL 块的 调试 按钮,在调试样本选择侧边栏中为每个源端表选择调试数据后单击确定。
    SQL任务调试 - 图3
  2. 调试结果将展示在SQL下方,不会真实写入目标表。任务调试后可将调试结果保存为公共样本。保存时样本名称按照[任务名称]_[目标表名称]自动生成,重复保存时同名样本将被更新。
说明:语法检查与SQL调试逻辑为“从第一块内容调试至此块”:若存在三块SQL内容,在第2块单击调试时,将会执行1、2两块代码内容。
样本选择 说明
调试样本 通过数据源采样保存的数据样本。
上传样本 可下载所选Source表结构的CSV模版,本地编辑样本数据后上传使用。
在线采样 拉取Source对应物理表数据进行在线采样,Kafka类源表将根据SQL代码中设定的消费方式进行消费,若代码中无特殊设定,将默认以 latest-offset 进行消费。