Flink WebUI提供基于Web的可视化开发平台,用户只需要编写SQL即可开发作业,极大降低作业开发门槛。同时通过作业平台能力开放,支持业务人员自行编写SQL开发作业来快速应对需求,大大减少Flink作业开发工作量。
 
  Flink WebUI特点
  Flink WebUI主要有以下特点:
  
   - 企业级可视化运维:运维管理界面化、作业监控、作业开发Flink SQL标准化等。
    

 
   - 快速建立集群连接:通过集群连接功能配置访问一个集群,需要客户端配置、用户认证密钥文件。
 
   - 快速建立数据连接:通过数据连接功能配置访问一个组件。创建“数据连接类型”为“HDFS”类型时需创建集群连接,其他数据连接类型的“认证类型”为“KERBEROS”需创建集群连接,“认证类型”为“SIMPLE”不需创建集群连接。
    
     
 
     
      “数据连接类型”为“Kafka”时,认证类型不支持“KERBEROS”。
      
      
   - 可视化开发平台:支持自定义输入/输出映射表,满足不同输入来源、不同输出目标端的需求。
 
   - 图形化作业管理:简单易用。
    

 
  
  
 
  Flink WebUI关键能力
  FlinkWebUI关键能力如表1:
  
   
   
    
     表1 Flink WebUI关键能力
    
    
     
      | 
        关键能力分类  | 
      
        描述  | 
     
    
    
     
      | 
        批流一体  | 
      
        | 
     
     
      | 
        Flink SQL内核能力  | 
      
       
        - Flink SQL支持自定义大小窗、24小时以内流计算、超出24小时批处理。
 
        - Flink SQL支持Kafka、HDFS读取;支持写入Kafka、Redis和HDFS;支持Redis维表Join。
 
        - 支持同一个作业定义多个Flink SQL,多个指标合并在一个作业计算。当一个作业是相同主键、相同的输入和输出时,该作业支持多个窗口的计算。
 
        - 支持AVG、SUM、COUNT、MAX和MIN统计方法。
 
         | 
     
     
      | 
        Flink SQL可视化定义  | 
      
       
        - 集群连接管理,配置Kafka、Redis、HDFS等服务所属的集群信息。
 
        - 数据连接管理,配置Kafka、Redis、HDFS等服务信息。
 
        - 数据表管理,定义Sql访问的数据表信息,用于生成DDL语句。
 
        - Flink SQL作业定义,根据用户输入的Sql,校验、解析、优化、转换成Flink作业并提交运行。
 
         | 
     
     
      | 
        Flink作业可视化管理  | 
      
       
        - 支持可视化定义流作业和批作业。
 
        - 支持作业资源、故障恢复策略、Checkpoint策略可视化配置。
 
        - 流作业和批作业的状态监控。
 
        - Flink作业运维能力增强,包括原生监控页面跳转。
 
         | 
     
     
      | 
        性能&可靠性  | 
      
       
        - 流处理支持24小时窗口聚合计算,毫秒级性能。
 
        - 批处理支持90天窗口聚合计算,分钟级计算完成。
 
        - 支持对流处理和批处理的数据进行过滤配置,过滤无效数据。
 
        - 读取HDFS数据时,提前根据计算周期过滤。
 
        - Flink作业里的数据来源于Redis,Flink作业已设置“故障恢复策略”,计算时,数据从Redis读入,作业故障无数据丢失。
 
        - 作业定义平台故障、服务降级,不支持再定义作业,但是不影响已有作业计算。
 
        - 作业故障有自动重启机制,重启策略可配置。
 
         | 
     
    
   
   
  
 
  Flink WebUI应用流程
  Flink WebUI应用流程参考如下步骤:
  
   图1 Flink WebUI应用流程
   
   
  
   
    
     表2 Flink WebUI应用流程说明
    
    
     
      | 
        阶段  | 
      
        说明  | 
      
        参考章节  | 
     
    
    
     
      | 
        创建应用  | 
      
        通过应用来隔离不同的上层业务。  | 
      
        创建应用  | 
     
     
      | 
        创建集群连接  | 
      
        通过集群连接配置访问不同的集群。  | 
      
        创建集群连接  | 
     
     
      | 
        创建数据连接  | 
      
        通过数据连接,访问不同的数据服务,包括HDFS、Kafka、Redis等。  | 
      
        创建数据连接  | 
     
     
      | 
        创建流表  | 
      
        通过数据表,定义源表、维表、输出表的基本属性和字段信息。  | 
      
        创建流表  | 
     
     
      | 
        创建SQL/JAR作业(流式/批作业)  | 
      
        定义Flink作业的API,包括Flink SQL和Flink Jar作业。  | 
      
        创建作业  | 
     
     
      | 
        作业管理  | 
      
        管理创建的作业,包括作业启动、开发、停止、删除和编辑等。  | 
      
        创建作业  |