文档首页 > > 用户指南> 操作指南> 作业管理> 创建Flink SQL边缘作业

创建Flink SQL边缘作业

分享
更新时间: 2019/12/03 GMT+08:00

本章节介绍如何新建Flink SQL边缘作业。Flink SQL边缘作业是一种处理边缘设备产生大量的数据时,为了减少数据上云的数据量或提高数据处理实时性,在靠近数据产生的地方对其进行分析处理的作业。

该作业是实时流计算服务与智能边缘平台结合,通过在边缘节点上部署系统提供的流计算应用,将实时流计算能力从云端延伸到边缘。然后通过实时流计算服务编辑流处理作业并下发到边缘执行,可以帮助用户在边缘快速实现对流数据的实时、快速、准确地分析处理。

前提条件

  • 已开通智能边缘平台服务。
  • 已成功创建一个ECS节点,推荐配置为4核8G以上。具体操作步骤,请参见《弹性云服务器快速入门》“购买并登录Linux弹性云服务器”章节。
  • 已成功创建边缘节点和纳管边缘节点。具体操作步骤,请参见《智能边缘平台用户指南》边缘节点
  • 已成功部署边缘流计算应用edge-cs。具体操作步骤,请参见《智能边缘平台用户指南》应用部署

    通过系统模板部署应用时容器规格不得小于默认值,否则会部署实例失败。

创建Flink SQL边缘作业

  1. 新建Flink SQL边缘作业的入口有3个,分别是在“总览”页面、“作业管理”页面和“作业编辑”页面。

    • “总览”页面新建作业。
      1. 在CS管理控制台的左侧导航栏中,单击“总览”,进入“总览”页面。
        图1 “总览”页面新建作业
      2. 单击“新建作业”,弹出“新建作业”页面。
    • “作业管理”页面新建作业。
      1. 在CS管理控制台的左侧导航栏中,单击作业管理,进入“作业管理”页面。
        图2 “作业管理”页面新建作业
      2. 单击“新建作业”,弹出“新建作业”页面。
    • “作业编辑”页面新建作业。
      1. 在CS管理控制台的左侧导航栏中,单击作业管理,进入“作业管理”页面。
      2. 选择一个已创建好的Flink SQL边缘作业,在操作列中单击“编辑”,进入作业编辑页面。
        图3 “作业编辑”页面新建Flink SQL边缘作业
      3. 单击“更多 > 另存为”,弹出作业另存为页面。

  2. 配置作业信息。

    图4 新建Flink SQL边缘作业
    表1 作业配置信息

    参数

    参数说明

    类型

    Flink SQL边缘作业:用户采用编辑SQL语句来启动作业。

    名称

    作业名称,只能由字母、中文、数字、中划线和下划线组成,并且长度为1~57字节。

    说明:

    作业名称必须是唯一的。

    描述

    作业的相关描述,且长度为0~512字节。

    模板

    用户可以选择样例模板或自定义的作业模板。关于模板的详细信息,请参见作业模板

  3. “企业项目”的下拉列表中,选择用户已经在企业管理中创建的企业项目。

    关于如何在企业管理中创建企业项目,请参见《企业管理用户指南》“创建企业项目”章节。

    系统还内置了一个缺省的企业项目“default”,如果用户没有为作业选择企业项目,将使用缺省项目“default”

    在作业创建过程中,如果作业与企业项目绑定成功,则作业创建成功,如果绑定失败,系统会发送告警,作业就会创建失败。

    当删除作业时,与企业项目的关联关系也会被自动删除。

  4. (可选)如果要为作业添加标签,请填写以下参数。标签不是必填参数,如果不需要,可以跳过这一步。

    表2 标签配置参数

    参数

    参数说明

    标签键

    您可以选择:

    • 在输入框的下拉列表中选择预定义标签键。
      说明:

      如果添加预定义标签,用户需要预先在标签管理服务中创建好预定义标签,然后在“标签键”的下拉框中进行选择。用户可以通过单击“查看预定义标签”进入标签管理服务的“预定义标签”页面,然后单击“创建标签”来创建新的预定义标签,具体请参见《标签管理服务用户指南》中的“创建预定义标签”章节。

    • 在输入框中输入标签键名称。
      说明:

      标签键的最大长度为36个字符 ,不能包含“=”,“*”,“,”,“<”,“>”,“\”,“|”,“/”,且首尾字符不能为空格。

    标签值

    您可以选择:

    • 在输入框的下拉列表中选择预定义标签值。
    • 在输入框中输入标签值。
      说明:

      标签值的最大长度为43个字符,不能包含“=”,“*”,“,”,“<”,“>”,“\”,“|”,“/”,且首尾字符不能为空格。

    • 最多支持10个标签。
    • 一个“键”只能添加一个“值”。
    • 每个资源中的键名不能重复。

  5. 单击“确,进入编辑页面。
  6. 编辑作业。

    根据需要编辑Flink SQL边缘作业,处理边缘设备数据。当前支持edgehub类型 、encode为json或csv的输入输出,具体SQL语法可参考《实时流计算服务SQL语法参考》

    参考示例:功能为输出学生成绩大于或者等于80分的姓名和成绩。

    create source stream student_scores(name string, score int) with ( 
        type = "edgehub", 
        topic = "abc",    
        encode = "json", 
        json_config = "score = student.score; name=student.name" 
      ); 
      create sink stream excellent_students(name string, score int) with ( 
        type = "edgehub", 
        topic = "abcd", 
        encode = "csv", 
        field_delimiter = "," 
      ); 
      insert into excellent_students select name, score from student_scores where score >= 80;

  7. 单击“语义校验”,确保语义校验成功。

    • 只有语义校验成功后,才可以执行“调试”“提交”“启动”作业的操作。
    • 如果校验成功,提示“SQL语义校验成功”。
    • 如果校验失败,会在错误的SQL语句前面显示红色的“X”记号,鼠标移动到“X”号上可查看详细错误,请根据错误提示修改SQL语句。

  8. 设置作业运行参数。

    图5 设置Flink SQL边缘作业运行参数
    表3 作业运行参数说明

    参数

    参数说明

    并行数

    并行数是指同时运行CS作业的任务数。

    说明:

    并行数不能大于计算单元SPU数的4倍。

    作业所属边缘节点

    选择作业所属的边缘节点。

    • 边缘节点是您自己的边缘计算设备,用于运行边缘应用,处理您的数据,并安全、便捷地和云端应用进行协同。边缘应用是您需要在边缘节点上运行的功能模块。
    • CS服务支持选择多个边缘节点部署作业,通过作业所属边缘节点的绑定,将CS服务作业与IEF服务进行结合。

  9. 单击“保存”,保存作业和相关参数。
  10. 单击“提交”,进入“作业配置清单”页面,单击“确认”,将作业提交并启动。

    提交作业后,系统将自动跳转到作业管理页面,新创建的作业将显示在作业列表中,在状态列中可以查看作业状态。作业提交成功后,状态将由提交中变为运行中

    如果作业状态为提交失败运行异常,表示作业提交或运行失败。用户可以在作业列表中的状态列中,将鼠标移动到状态图标上查看错误信息,单击可以复制错误信息。根据错误信息解决故障后,重新提交。

    其他功能按钮说明如下:

    • 调试:对作业进行调试。具体操作请参见调试作业
    • SQL格式化:将SQL格式化,将SQL语句格式化后,需要重新编辑SQL语句。
    • 更多 > 名称和描述修改:修改作业名称和描述。
    • 更多 > 另存为:将新建作业另存为一个新作业。
    • 更多 > 设为模板:将新创建的作业设置为作业模板。
    • 更多 > 主题设置:设置页面主题,可以设置字体大小,自动换行和页面风格。
    • 更多 > 帮助:帮助中心,为用户提供SQL语法参考。

验证作业运行效果

  1. 在智能边缘平台中,登录任一节点(该节点需与边缘节点网络互通),安装mosquitto软件。

    mosquitto软件的下载请参见https://mosquitto.org/download/

  2. 本示例使用以下命令发送数据到边缘节点。

    mosquitto_pub -h 边缘节点IP -t abc -m '{"student":{"score":90,"name":"1bc2"}}';

    abc为作业中定义的topic名称。

  3. 打开新的窗口,使用命令监听输出。输入以下命令,可查询到成绩大于或者等于80的学生姓名和成绩。

    mosquitto_sub -h 边缘节点IP -t abcd

    abcd为作业中定义的topic名称。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区