Streaming SQL作业配置

本文介绍Streaming SQL作业配置的操作步骤。

背景信息

在Streaming SQL作业配置过程中,您需要设置依赖库。以下列出了Spark Streaming SQL提供的数据源依赖包的版本信息和使用说明,建议使用最新版本。

库名称

版本

发布日期

引用字符串

详细信息

datasources-bundle

2.0.0(推荐)

2020/02/26

sharedlibs:streamingsql:datasources-bundle:2.0.0

支持数据源:Kafka、Loghub、Druid、TableStore、HBase、JDBC、DataHub、Redis、Kudu和DTS。

1.9.0

2019/11/20

sharedlibs:streamingsql:datasources-bundle:1.9.0

支持数据源:Kafka、Loghub、Druid、TableStore、HBase、JDBC、DataHub、Redis和Kudu。

1.8.0

2019/10/17

sharedlibs:streamingsql:datasources-bundle:1.8.0

支持数据源:Kafka、Loghub、Druid、TableStore、HBase、JDBC、DataHub和Redis。

1.7.0

2019/07/29

sharedlibs:streamingsql:datasources-bundle:1.7.0

支持数据源:Kafka、Loghub、Druid、TableStore、HBase和JDBC。

前提条件

  • 已创建项目,详情请参见项目管理

  • 已获取作业所需的资源和数据文件。例如,JAR包、数据文件名称以及两者的保存路径。

操作步骤

  1. 进入数据开发的项目列表页面。
    1. 通过阿里云账号登录阿里云E-MapReduce控制台
    2. 在顶部菜单栏处,根据实际情况选择地域和资源组
    3. 单击上方的数据开发页签。
  2. 单击待编辑项目所在行的作业编辑
  3. 新建Streaming SQL类型作业。

    1. 在页面左侧,在需要操作的文件夹上单击右键,选择新建作业
    2. 新建作业对话框中,输入作业名称作业描述,从作业类型下拉列表中选择Streaming SQL作业类型。

    3. 单击确定
  4. 编辑作业内容。

    作业内容中,填写提交该作业需要提供的命令行参数。示例如下。

    --- 创建SLS数据表。 
    CREATE TABLE IF NOT EXISTS ${slsTableName} 
      USING loghub 
      OPTIONS ( 
            sls.project = '${logProjectName}', 
           sls.store = '${logStoreName}', 
           access.key.id = '${accessKeyId}', 
           access.key.secret = '${accessKeySecret}', 
           endpoint = '${endpoint}'
      ); 
    --- 导入数据至HDFS。
    INSERT INTO 
       ${hdfsTableName} 
    SELECT 
       col1, col2 
    FROM  ${slsTableName} 
    WHERE ${condition}
    说明

    此类型的作业是通过streaming-sql -f {sql_script}提交的。sql_script中保存着作业编辑器中填写的SQL语句。

  5. 配置依赖库和失败策略。

    1. 单击右上方的作业设置

    2. 分别在共享库流任务设置页签下,配置依赖库和失败处理策略。

      区域

      配置项

      说明

      依赖库

      库列表

      执行作业需要依赖一些数据源相关的库文件。E-MapReduce将这些库以依赖库的形式发布在调度服务的仓库中,在创建作业时需要指定使用哪个版本的依赖库。

      您只需设置相应的依赖库版本,例如sharedlibs:streamingsql:datasources-bundle:2.0.0

      失败处理策略

      当前语句执行失败时

      当前语句执行失败时,支持如下策略:

      • 继续执行下一条语句:如果查询语句执行失败, 继续执行下一条语句。

      • 终止当前作业:如果查询语句执行失败, 终止当前作业。

    3. 单击保存,完成作业内容及相关配置。