且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何使用实时计算提交和管理 Flink 任务|学习笔记

更新时间:2022-02-25 20:44:55

开发者学堂课程【《实时计算 Flink 版中级课程》:如何使用实时计算提交和管理 Flink 任务】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/806/detail/13882


如何使用实时计算提交和管理 Flink 任务

目录
1.VVP 基本概念 

2.JAR 任务提交

3.SQL 任务提交

4.Metrics & Log


一、VVP 基本概念 

基本概念-

Deployment

·作业描述

·任务类型(IAR 和 SQL)

· flink 版本和配置(flink configuration)

·CPU 和内存 Uobmanager/askmanager)

·恢复策略 (Restore Strategy)

·期望状态(Desired)和实际状态(Current)

· RUNNING, CANCELED, SUSPENDED

· TRANSTIONING, FINISHED, FAILED

基本概念-Draft

·任务的开发态

·新建 Draft->上线(转 Deployment)->运维(其他操作)

基本概念-Job

·源自 Deployment(Deployment 的一个作业实例)

·对应一个具体的 EIink Job


二、JAR 任务提交

Jar 打包上传

·社区 top window 代码本地打包

https:/github com/apachefink/tree/master/flink-examples/link-examples-streaming

·htps://repol.maven org/mavenZ/org/apache/flink

/flink-examples-streaming2111.12.2/ink-examples-streaming 211-1122-TopSpeedWindowingiar

·artifacts 上传,删除,覆盖

上线 Draft

·点击"上线"

Deployment 基本操作

·作业的启停

·Deployment 详情页概览

Deployment 配置

·模版模式(基础、高级)YAML 模式编辑

Deployment 其他操作

·基本操作

· sart, cancdl. wvpend, wepont, fox、dee

·升级与恢复

·restore(svepoint hedpoint, none)

·作业换照的使用,从历史 yavepcim 恢复(从 sp fok)

·运堆

·详情页 Metic

 ·Flnk UI

基本概念-Session Cluster

·资源共享,复用 JobManager,节省小作业资源消耗

·任务启动速度快,适用于作业运行时间较短的场景

品 Session 集群

提交任务到 Session 集群

·系统管理->Session 集群

·Deployment 的部署目标选择 Session 集群

3. SQL 任务提交

基本概念-SQL 分类

·DDL

·数据定义语言(create table/view/index/syn/cluster)

.DQL

· 数据查询语言(select* from xx where xx)

·DML

·数据操纵语言(insert/update/delete)

·DCL

·数据控制语言(grant/rollack/commit)

基本概念-Catalog

·管理元数据

·表 Catalog.DB.Table

·函数∶UDFUDTFUDAF

语法说明-注册函数

● 上传 UDF JAR包

●可下载 http//fa2020.osS-cn-bejingaliyuncscom/ud10jar 到本地再上传

●CREATE FUNCTION`MyScalarfunc AS'com.test.MyScalarFunc'

语法说明-使用函数

内置函数

INSERT INTO blackhole_sink

SELECT UPPER(name), score FROM datagen_source

自定义函数

INSERT INTO blackhole_sink

SELECT MyScalarfunc(name), score FROM datagen_source

语法说明-Temporary Table

语法说明- Temporary View

语法说明- Statement Set

应用范围

· Create Table

·会注册到系统 Catalog(默认是 VvpCatalog)中,进行持久化

·适合多个 query 共享元数据的情况

· Create Temporary Table · 会使用内存的 Catalog,不会持久化

· 适合不需要共享元数据的场景只给当前 query 使用。例如测试任务。

· Create Temporary View

·简化 SQL 语句

· Statement Set

· 适合需要输出到多个下游(多sink表)的场景

自定义 Connector & Format

·实现接口

· ​​DynamicTableSourceFactory

·DynamicTableSinkFactory

·接口描述文件∶ META-INF/services/org.apache.fink.table,factories.Factory

·上传 JAR 包进行注册

·可下载 htp//n2020oscn-bellinglvunccom/mydatken-printe10Jar 到本地再上传

使用自定义 Connector

SQL Preview

· 配置某个 Session 集群作为 SQL Preview 使用的集群· 该 session 集群需要是运行状态

· 直接运行 DQL 语句

·​​ SELECT UPPER(name), score FROM datagen_source;

Metrics- reporter

·默认使用 PrometheusReporter

·自定义 metrics reporter

·编辑 Deployment -> 高级配置->其他配置

Metrics- grafana

LOG

·自定义 Log Level

· root INFO

· org.apache.fink: DEBUG

·自定义 Logging Profile ,

· oss

· sls