Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dlink
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhaowei
dlink
Commits
85b7386b
Commit
85b7386b
authored
Apr 05, 2022
by
wenmo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[Document-336][doc] Modify document
parent
76e3ad81
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
309 additions
and
222 deletions
+309
-222
_sidebar.md
docs/zh-CN/_sidebar.md
+5
-5
component_introduce.md
...r-guide/Studio/development_control/component_introduce.md
+25
-16
function_introduce.md
...or-guide/Studio/development_control/function_introduce.md
+5
-5
env_config.md
docs/zh-CN/administrator-guide/Studio/job_dev/env_config.md
+33
-16
flinksql_job_dev.md
...r-guide/Studio/job_dev/flinksql_guide/flinksql_job_dev.md
+27
-35
flinksql_job_submit.md
...uide/Studio/job_dev/flinksql_guide/flinksql_job_submit.md
+19
-22
job_debug.md
...istrator-guide/Studio/job_dev/flinksql_guide/job_debug.md
+35
-24
job_hosting.md
docs/zh-CN/administrator-guide/Studio/job_dev/job_hosting.md
+76
-7
job_manage.md
docs/zh-CN/administrator-guide/Studio/job_manage.md
+21
-42
cluster_manage.md
...h-CN/administrator-guide/registerCenter/cluster_manage.md
+35
-38
datasource_manage.md
...N/administrator-guide/registerCenter/datasource_manage.md
+11
-11
local_debug.md
docs/zh-CN/developer-guide/local_debug.md
+16
-0
introduce.md
docs/zh-CN/introduce.md
+1
-1
No files found.
docs/zh-CN/_sidebar.md
View file @
85b7386b
<!-- docs/zh-CN/_sidebar.md -->
-
[
Dinky简介
](
/zh-CN/introduce.md
)
-
[
Dinky
简介
](
/zh-CN/introduce.md
)
-
概念和架构
-
[
系统架构
](
/zh-CN/architecture.md
)
-
[
基本概念
](
/zh-CN/concept.md
)
...
...
@@ -9,7 +9,7 @@
-
编译与部署
-
[
编译
](
/zh-CN/quick_start/build.md
)
-
[
部署
](
/zh-CN/quick_start/deploy.md
)
-
[
Dinky概览
](
/zh-CN/dinky_overview.md
)
-
[
Dinky
概览
](
/zh-CN/dinky_overview.md
)
-
快速入门指南
-
FlinkSQL作业快速入门
-
其他数据源作业快速入门
...
...
@@ -18,11 +18,11 @@
-
项目空间管理
-
权限管理
-
数据开发
-
开发控制台
介绍
-
基本
介绍
-
[
功能介绍
](
/zh-CN/administrator-guide/Studio/development_control/function_introduce.md
)
-
[
组件
介绍
](
/zh-CN/administrator-guide/Studio/development_control/component_introduce.md
)
-
[
方言
介绍
](
/zh-CN/administrator-guide/Studio/development_control/component_introduce.md
)
-
作业开发
-
[
作业
托管
概述
](
/zh-CN/administrator-guide/Studio/job_dev/job_hosting.md
)
-
[
作业概述
](
/zh-CN/administrator-guide/Studio/job_dev/job_hosting.md
)
-
[
环境配置
](
/zh-CN/administrator-guide/Studio/job_dev/env_config.md
)
-
FlinkSQL开发指南
-
[
概述
](
/zh-CN/administrator-guide/Studio/job_dev/flinksql_guide/summary.md
)
...
...
docs/zh-CN/administrator-guide/Studio/development_control/component_introduce.md
View file @
85b7386b
数据开发是基于React JavaScript库开发的SQL交互式界面工具。目前在Dinky中支持的方言有:
-
FlinkSQL
-
FlinkSQLEnv
-
MySQL
-
PostgreSQL
目前支持的方言有:
-
FlinkSql
-
FlinkJar
-
FlinkSqlEnv
-
Mysql
-
PostGreSql
-
Oracle
-
S
QL
Server
-
S
ql
Server
-
Phoenix
-
Hive
-
Doris(Star
r
ocks)
-
Click
h
ouse
-
j
ava
-
Doris(Star
R
ocks)
-
Click
H
ouse
-
J
ava
**FlinkSQL支持**
## FlinkSql
FlinkSQL作为Flink上的SQL计算引擎,结合Dinky中的数据开发。使得FlinkSQL开发更加简化,不需要写一行Java或者Scala代码。
只要FlinkSQL本身支持的语法,SQL-Client支持的语法,Dinky数据开发上也完全支持。
支持 Apache Flink sql-client 的绝大多数 FlinkSQL 语法,其中部分语法被优化,详见。
**Java支持**
## FlinkJar
当写一些UDF及UDTF函数时,可以在Studio上编写代码,并可以在local模式下测试,并最终发布。当前Java只适合一些UDF及UDTF函数
。
支持用户自定义的 Flink Jar 任务的配置,详见
。
**数据库支持**
## FlinkSqlEnv
支持将 FlinkSQL 封装为执行环境,供 FlinkSQL 任务使用,详见。在执行 FlinkSQL 时,会先执行 FlinkSqlEnv 内的语句。
## DB sql
支持对应数据源的原生 sql 方言,详见。
## Java
支持书写 Java 的 UDF 等,并自动加载至 Local 模式。(当前存在 Bug,请不要使用)
目前支持的数据库,都可以在数据开发上做ETL及通过OpenAPI做周期性调度。
docs/zh-CN/administrator-guide/Studio/development_control/function_introduce.md
View file @
85b7386b
数据开发控制台提供了开源Flink全球统一的开发控制平台。您可以在数据开发控制台一站式完成作业的开发、提交和运维
。
Data Studio 提供了 Apache Flink 及其他 DBSQL 的开发、提交和运维能力
。
## 作业管理
您可以在数据开发控制台创建目录、创建作业等,
详情请参考
[
作业管理
](
/zh-CN/administrator-guide/Studio/job_manage.md
)
创建目录、创建作业等,
详情请参考
[
作业管理
](
/zh-CN/administrator-guide/Studio/job_manage.md
)
## 作业开发
您可以在数据开发控制台开发作业、检查语法、发布作业等,
详情请参考
[
作业开发
](
)
开发作业、检查语法、发布作业等,
详情请参考
[
作业开发
](
)
## 运维管理
您可以在数据开发控制台
配置作业信息、保存savepoint等,详情请参考
[
运维管理
](
)
配置作业信息、保存savepoint等,详情请参考
[
运维管理
](
)
## 作业监控
您可以在数据开发控制台
查看作业信息、作业进程、作业历史等,详情请参考
[
作业监控
](
)
查看作业信息、作业进程、作业历史等,详情请参考
[
作业监控
](
)
docs/zh-CN/administrator-guide/Studio/job_dev/env_config.md
View file @
85b7386b
## Flink 环境配置
###
Session 集群
###
Local
Session 集群适用于非生产环境的开发测试环境,您可以使用 Session 集群模式部署或调试作业,提高作业 Job Manager 的资源使用率
。
只需要在 Dinky 根目录下的 plugins 文件夹下添加 Flink lib 与 connector 等 Jar 即可
。
如何创建 Session 集群,请参考注册中心
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群实例管理
### Standalone 集群
### Per-job 集群
根据 Flink 官网手动部署一个 Flink Standalone 集群,并注册到
**集群实例**
中。
Per-job 集群适用于生产环境,您可以使用 Per-job 集群模式部署或提交作业
如何注册 Standalone 集群,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群实例管理。
如何创建 Session 集群,请参考注册中心
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群配置管理
### Yarn Session 集群
### Application 集群
根据 Flink 官网手动部署一个 Flink Yarn Session 集群,并注册到
**集群实例**
中。
Per-job 集群适用于生产环境,您可以使用 Per-job 集群模式部署或提交作业
如何注册 Yarn Session 集群,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群实例管理。
如何创建 Session 集群,请参考注册中心
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群配置管理
### Yarn Per-Job 集群
在
**注册中心 > 集群管理 > 集群配置管理**
中注册 Hadoop 与 Flink 相关配置。
### 说明
如何注册 Yarn Per-Job 的集群配置,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群配置管理。
如果是 Session 集群有如下建议:
### Yarn Application 集群
-
对于单并发的小作业,建议整个集群的作业总数不超过100个;
-
对于复杂作业,建议单作业最大并发数不超过512,64个并发的中等规模作业单集群不多于32个。否则可能会出现心跳超时等问题影响集群稳定性。此时,您需要增大心跳间隔和心跳超时时间;
-
如果您需要同时运行更多的任务,则需要增加 Session 集群的资源配置;
1.
在
**注册中心 > 集群管理 > 集群配置管理**
中注册 Hadoop 与 Flink 相关配置;
2.
将 dlink-app.jar 上传到
**系统设置 > Flink 设置**
中的
**提交 FlinkSQL 的 Jar 文件路径**
的 hdfs 配置地址。
如何注册 Yarn Application 的集群配置,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群配置管理。
### Kubernetes Session 集群
根据 Flink 官网手动部署一个 Flink Kubernetes Session 集群,并暴露
**NodePort**
, 注册到
**集群实例**
中。
如何注册 Kubernetes Session 集群,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群实例管理。
### Kubernetes Application 集群
1.
在
**注册中心 > 集群管理 > 集群配置管理**
中注册 Kubernetes 与 Flink 相关配置;
2.
将 dlink-app.jar 打包成完整的 Flink 镜像,在
**系统设置 > Flink 设置**
中的
**提交 FlinkSQL 的 Jar 文件路径**
的配置 dlink-app.jar 的 local 地址。
如何注册 Kubernetes Application 的集群配置,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群配置管理。
## 其他数据源环境配置
Dinky 虽然是在 Flink 基础之上开发而言,为了让用户一站式开发,扩展了额外的数据源。极大的方便了用户进行 FlinkSQL 的编写
。
手动部署外部数据源,然后注册到
**数据源管理**
。
如何创建外部数据源,请参考注册中心的
[
数据源管理
](
/zh-CN/administrator-guide/registerCenter/datasource_manage.md
)
。当前 Dinky 支持的数据源请参考功能扩展中的
[
扩展数据源
](
/zh-CN/extend/datasource.md
)
\ No newline at end of file
如何注册外部数据源,请参考
[
数据源管理
](
/zh-CN/administrator-guide/registerCenter/datasource_manage.md
)
。当前 Dinky 支持的数据源请参考功能扩展中的
[
扩展数据源
](
/zh-CN/extend/datasource.md
)
\ No newline at end of file
docs/zh-CN/administrator-guide/Studio/job_dev/flinksql_guide/flinksql_job_dev.md
View file @
85b7386b
下面为您介绍Dinky托管FlinkSQL作业开发的一些限制和操作步骤。
## 说明
## **限制说明**
-
SQL 编辑器编辑的 FlinkSQL 作业,当前仅支持 Flink1.11、Flink1.12、Flink1.13、Flink1.14 版本的语法。
-
FlinkSQL 支持的上下游存储,请参考
[
上下游存储
](
)
-
SQL编辑器编辑的FlinkSQL作业,当前仅支持Flink1.11、Flink1.12、Flink1.13、Flink1.14版本。
-
FlinkSQL支持的上下游存储,请参考开发参考中的
[
上下游存储
]
## FlinkSQL 操作步骤
## FlinkSQL操作步骤
为了方便您编写和管理Flink SQL作业,提高作业开发效率,Dinky为您提供FlinkSQL的一些功能,包括元数据中心和SQL编辑器等。
1.
进入 Dinky 的 Data Studio
1.
首先登录Dinky数据开发控制台
2.
在左侧菜单栏,右键
**目录**
2.
在左侧菜单栏,单击
**目录**
3.
新建目录和作业,请参考作业运维中的
**[作业管理](/zh-CN/administrator-guide/Studio/job_devops/job_manage.md)**
3.
新建目录或作业,请参考作业运维中的
**[作业管理](/zh-CN/administrator-guide/Studio/job_devops/job_manage.md)**
4.
在新建文件的对话框,填写作业信息
|
参数 | 说明
| 备注 |
|
:------: | :-----------------------------------------------------------
| :----------------------------------------------------------- |
|
文件名称 | 作业的名称:作业名称在当前项目中必须保持
**唯一**
| |
|
文件类型 | 流作业和批作业均支持以下文件类型:
<br/>
FlinkSQL:支持
**SET、DML、DDL**
语法
<br/>
FlinkSQLEnv:
支持
**SET、DDL**
语法 | FlinkSQLEnv 场景适用于所有作业
<br/>
的SET、DDL语法统一管理的场景,
<br/>
当前FlinkSQLEnv 在SQL编辑器的语
<br/>
句限制在1000行以内 |
|
参数 | 说明
| 备注 |
|
:----:|:---------------------------------------------------------------------------------------
| :----------------------------------------------------------- |
|
作业名称 | 作业名称在当前项目中必须保持
**唯一**
| |
|
作业类型 | 流作业和批作业均支持以下作业类型:
<br/>
FlinkSQL:支持
**SET、DML、DDL**
语法
<br/>
FlinkSQLEnv:
支持
**SET、DDL**
语法 | FlinkSQLEnv 场景适用于所有作业
<br/>
的SET、DDL语法统一管理的场景,
<br/>
当前FlinkSQLEnv 在SQL编辑器的语
<br/>
句限制在1000行以内 |
5.
在作业开发 SQL 编辑器,编写 DDL 和 DML 代码
...
...
@@ -53,29 +50,24 @@ from datagen_source;

6.
在作业开发页面右侧,单击
**执行配置**
,填写配置信息
| 参数 | 说明 | 备注 |
| :------: | :------------- | :----------------------------------------------------------- |
| 作业配置 | 执行模式 | 选择作业需要部署的集群,
<br/>
支持以下三种集群模式:
<br/>
**Per-job 集群**
<br/>
**Session 集群**
<br/>
**Application 集群**
<br/>
这3种集群的区别请参考:
[
作业托管概述
](
/zh-CN/administrator-guide/Studio/job_dev/job_hosting.md
)
|
| 作业配置 | Flink 集群配置 | Flink 集群配置请参考:注册中心的
<br/>
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
|
| 作业配置 | FlinkSQL 环境 | 选择创建的FlinkSQLEnv文件,如果
<br/>
没有则不选 |
| 作业配置 | 任务并行度 | SET优先于作业配置 |
| 作业配置 | Insert 语句集 | 默认禁用,开启后在SQL编辑器中
<br/>
编写多个 Insert 语句 |
| 作业配置 | 全局变量 | 默认禁用 |
| 作业配置 | 批模式 | 默认禁用,开启后 FlinkSQL为离线计算 |
| 作业配置 | SavePoint 策略 | 默认禁用,策略包括:
<br/>
**最近一次**
<br/>
**最早一次**
<br/>
**指定一次**
|
| 作业配置 | 报警组 | 报警组配置请参考:
<br/>
注册中心的
[
告警管理
](
docs/zh-CN/administrator-guide/registerCenter/warning.md
)
|
| 作业配置 | 其他配置 | SET优先于作业配置,具体可选参数
<br/>
请参考
[
Flink 官网
](
https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/deployment/config/
)
|
6.
在作业开发页面右侧
**执行配置**
,填写配置信息
| 类型 | 配置项 | 备注 |
|:----:|:-------------|:-------------------------------------------------------------------------------------------------------------------------|
| 作业配置 | 执行模式 | 区别请参考:
[
作业托管概述
](
/zh-CN/administrator-guide/Studio/job_dev/job_hosting.md
)
|
| 作业配置 | 集群实例 | Standalone 和 Session 执行模式需要选择集群实例,请参考:
[
集群实例管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage?id=集群实例管理
)
|
| 作业配置 | 集群配置 | Per-Job 和 Application 执行模式需要选择集群配置,请参考:
[
集群配置管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage?id=集群配置管理
)
|
| 作业配置 | FlinkSQL 环境 | 选择已创建的 FlinkSQLEnv,如果没有则不选 |
| 作业配置 | 任务并行度 | 指定作业级任务并行度,默认为 1 |
| 作业配置 | Insert 语句集 | 默认禁用,开启后将 SQL编辑器中编写的多个 Insert 语句合并为一个 JobGraph 进行提交 |
| 作业配置 | 全局变量 | 默认禁用,开启后可以使用数据源连接配置变量、自定义变量等 |
| 作业配置 | 批模式 | 默认禁用,开启后启用 Batch Mode |
| 作业配置 | SavePoint 策略 | 默认禁用,策略包括:
<br/>
**最近一次**
<br/>
**最早一次**
<br/>
**指定一次**
|
| 作业配置 | 报警组 | 报警组配置请参考
[
告警管理
](
docs/zh-CN/administrator-guide/registerCenter/warning.md
)
|
| 作业配置 | 其他配置 | 其他的 Flink 作业配置,具体可选参数,请参考
[
Flink 官网
](
https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/deployment/config/
)
|
作业配置如下图:

7.
单击
**保存**
。
8.
单击
**验证**
。
9.
单击
**上线**
。
完成作业开发和语法检查后,即可发布作业并上线作业。
\ No newline at end of file
**注意:**
请及时手动保存作业信息,以免丢失
\ No newline at end of file
docs/zh-CN/administrator-guide/Studio/job_dev/flinksql_guide/flinksql_job_submit.md
View file @
85b7386b
完成作业开发和上线后,您需要在数据开发页面启动作业至运行阶段。此外,作业在暂停或者停止后需要恢复时,需要启动作业。
## 限制说明
-
异步提交后,无法接收告警信息,而发布上线后可以接收告警信息,自动恢复作业等;
-
异步提交后,无法及时看到作业的详细情况,而发布上线可以看到作业的详细情况;
## 启动场景
-
**上线后启动:**
您可以全新启动(无状态)。
-
**暂停后启动:**
暂停作业时,如果你选择了Savepoint策略。系统将按照以下情况进行处理
-
如果您选择 Savepoint 策略,在暂停前执行一次Savepoint,则作业暂停后启动恢复时,系统会从最新的Savepoint状态恢复;
-
如果您禁用 Savepoint 策略,则作业暂停后启动恢复时,系统会从最新的Checkpoint状态恢复;
-
**停止后启动:**
停止作业时,根据您选择 Savepoint 策略,作业在停止时是否执行一次Savepoint,系统将按照以下情况进行处理:
-
如果选择 Savepoint 策略,那么作业会先进行Savepoint后进入停止流程。在作业停止后,系统会自动清除作业相关的Checkpoint信息;
-
如果 Savepoint 策略禁用,那么作业会进入停止流程。在作业停止后,系统会自动清除作业相关的Checkpoint信息;
作业停止后启动时,您可以全新启动(无状态);或者从所选Savepoint开始恢复作业。
## 功能说明
-
**执行当前的 SQL:**
提交执行未保存的作业配置,并可以同步获取 SELECT、SHOW 等执行结果,常用于 Local、Standalone、Session 执行模式;
-
**异步提交:**
提交执行最近保存的作业配置,可用于所有执行模式;
-
**发布**
发布当前作业的最近保存的作业配置,发布后无法修改;
-
**上线**
提交已发布的作业配置,可触发报警;
-
**下线**
停止已上线的作业,并触发 SavePoint;
-
**停止**
只停止已提交的作业;
-
**维护**
使已发布的作业进入维护状态,可以被修改;
-
**注销**
标记作业为注销不可用状态。
## 常用场景
-
**查看 FlinkSQL 执行结果:**
执行当前的 SQL。
-
**提交作业:**
异步提交。
-
**上线作业:**
SavePoint 最近一次 + 上线。
-
**下线作业:**
下线。
-
**升级作业:**
下线后上线。
-
**全新上线作业:**
SavePoint 禁用 + 上线。
## Flink作业启动操作步骤
...
...
@@ -29,12 +30,8 @@

作业启动发布上线如下图:

有关发布上线的详细内容,请参考运维中心
docs/zh-CN/administrator-guide/Studio/job_dev/flinksql_guide/job_debug.md
View file @
85b7386b
您可以选择使用 Session 集群在开发测试环境对作业调试,如作业运行、检查结果等。提升开发效率。调试可以包含多个 SELECT 或 INSERT 的复杂作业。配置
Session 集群请参考注册中心中
[
集群管理
](
docs/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群实例管理。
可以选择使用 Standalone 或 Session 集群在开发测试环境对作业调试,如作业运行、检查结果等。配置 Standalone 或
Session 集群请参考注册中心中
[
集群管理
](
docs/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
的集群实例管理。
## FlinkSQL作业调试步骤
也可以调试普通的 DB SQL 作业。
1.
首先登录 Dinky 数据开发控制台
## FlinkSQL作业调试步骤
2.
点击
**目录 > 新建目录 > 新建作业**
1.
进入 Data Studio
3.
填写完作业信息后,单击
**确认**
,作业类型必须选择 FlinkSQL
2.
点击
**目录 > 新建目录 > 新建作业**
4.
分别注册 Source 表和 Sink 表
3.
填写完作业信息后,单击
**确认**
,作业类型选择 FlinkSQL
分别编写源表和结果表 SQL 代码后,单击
**执行当前的SQL**
4.
编写完整的 FlinkSQL 语句,包含 CREATE TABLE 等
示例代码如下:
...
...
@@ -22,35 +22,46 @@ CREATE TABLE datagen_source(
)
WITH
(
'connector'
=
'datagen'
);
--创建结果表blackhole_sink
CREATE
TABLE
blackhole_sink
(
id
BIGINT
,
name
STRING
)
WITH
(
'connector'
=
'blackhole'
);
--将源表数据插入到结果表
INSERT
INTO
blackhole_sink
SELECT
id
BIGINT
,
name
STRING
from
datagen_source
;
from
datagen_source
```
5.
单击
**保存**
6.
单击
**语法检查**
7.
单击
**执行当前的SQL**
7.
配置
**执行配置**
| 配置项 | 说明 |
|:----:|:-----------------------:|
| 预览结果 | 默认开启,可预览 FlinkSQL 的执行结果 |
| 打印流 | 默认禁用,开启后将展示 ChangeLog |
| 最大行数 | 默认 100,可预览的执行结果最大的记录数 |
| 自动停止 | 默认禁用,开启后达到最大行数将停止作业 |
**注意:**
预览聚合结果如 count 等操作时,关闭打印流可合并最终结果。
8.
单击
**执行当前的SQL**
9.
**结果**
或者
**历史 > 预览数据**
可以手动查询最新的执行结果
## FlinkSQL 预览结果的必要条件
1.
执行模式必须是 Local、Standalone、Yarn Session、Kubernetes Session 其中的一种;
2.
必须关闭
**Insert 语句集**
;
3.
除 SET 和 DDL 外,必须只提交一个 SELECT 或 SHOW 或 DESC 语句;
8.
配置调试数据
4.
必须开启
**预览结果**
;
如果你想要实时预览数据,如计算count(1)统计等。可以点击
**执行配置**
5.
作业必须是提交成功并且返回 JID,同时在远程集群可以看到作业处于 RUNNING 或 FINISHED 状态;
| 配置项 | 说明 |
| :------: | :------------------------------------: |
| 实时预览 | 默认开启 |
| 打印流 | 默认禁用,如果您想要实时打印数据可开启 |
6.
Dinky 重启后,之前的预览结果将失效
确定好调试数据后,单击
**执行当前的SQL**
,会在SQL编辑器下方显示结果
## DB SQL 调试
选择对应数据源,并书写其 sql 执行即可。
\ No newline at end of file
docs/zh-CN/administrator-guide/Studio/job_dev/job_hosting.md
View file @
85b7386b
Dinky 做为一站式的实时计算平台,可以托管
数据库及 Flink。全托管的 Flink 集群模式支持 local、Session、Per-job 和 Application 四种模式,四种模式有如下区别:
Dinky 做为一站式的实时计算平台,可以托管
Flink 和数据库的作业。
-
**local:**
Flink自带,无需任何配置,一个简单的 Mini 集群;
-
**Session 集群:**
多个作业可以复用相同的JM,可以提高JM资源利用率。因此适用于大量占用资源比较小或任务启停比较频繁的小并发作业,可以有效节约资源开销。Yarn 和 K8S 均适用;
-
**Per-job 集群:**
作业之间资源隔离,每个作业都需要一个独立的JM,因为小任务JM的资源利用率较低,因此适用于占用资源比较大或持续稳定运行的作业。Yarn 适用;
-
**Application 集群:**
在 Application 模式下,每个作业创建一个集群,这些作业会被视为属于同一个应用,在同一个集群中执行(如果在 Per-Job 模式下,就会启动多个集群)。可见,Application 模式本质上是 Session 和 Per-Job 模式的折衷。Yarn 和 K8S 均适用;
## FlinkSQL
Dinky 上如何托管 Flink 集群,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
### Local
其他数据库的托管请参考
[
数据源管理
](
/zh-CN/administrator-guide/registerCenter/datasource_manage.md
)
\ No newline at end of file
Dinky 内置的 Flink MiniCluster,如果提交任务至 Local 模式则将在 Dinky 内部运行该作业。
**特点:**
不需要外部 Flink 集群,资源受限。
**适用于:**
语法校验、查看 JobPlan、查看字段级血缘、执行资源占用非常小的批作业。
**注意:**
请不要提交流任务至 Local,如果提交了,你将无法关闭它,只能重启 Dinky。
### Standalone
Dinky 将通过 JobManager 的 Rest 端口提交 FlinkSQL 作业至外部的 Flink Standalone 集群。
**特点:**
作业资源共享,启动快,不依赖 Yarn 或 K8S。
**适用于:**
批作业、Flink OLAP 查询、资源占用小的流作业。
### Yarn Session
Dinky 将通过 JobManager 的 Rest 端口提交 FlinkSQL 作业至外部的 Flink Yarn Session 集群。
**特点:**
作业资源共享,启动快。
**适用于:**
作业资源共享,启动快,批作业、Flink OLAP 查询、资源占用小的流作业。
**注意:**
需要手动启动 Yarn Session 集群并注册到 Dinky 的集群实例,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
。
### Yarn Per-Job
Dinky 将通过 Yarn 来创建 Flink Yarn Per-Job 集群。
**特点:**
作业资源隔离,启动慢,每个 JobGraph 创建一个集群。
**适用于:**
资源占用较多的批作业和流作业。
**注意:**
需要在 Dinky 的集群配置中注册相关的 Hadoop 和 Flink 配置,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
。
### Yarn Application
Dinky 将通过 Yarn 来创建 Flink Yarn Application 集群。
**特点:**
作业资源隔离,启动慢,节约网络资源,所有 JobGraph 只创建一个集群。
**适用于:**
资源占用较多的批作业和流作业。
**注意:**
需要在 Dinky 的集群配置中注册相关的 Hadoop 和 Flink 配置,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
。
### Kubernetes Session
Dinky 将通过暴露的 NodePort 端口提交 FlinkSQL 作业至外部的 Flink Kubernetes Session 集群。
**特点:**
作业资源隔离,启动快,动态扩容。
**注意:**
需要在 Dinky 的集群配置中注册相关的 Kubernetes 和 Flink 配置,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
。
**适用于:**
作业资源隔离,启动快,动态扩容,批作业、Flink OLAP 查询、资源占用小的流作业。
### Kubernetes Application
Dinky 将通过 dlink-app 镜像创建的 Flink Kubernetes Application 集群。
**特点:**
作业资源隔离,启动慢,动态扩容,节约网络资源,所有 JobGraph 只创建一个集群。
**适用于:**
作业资源隔离,启动慢,动态扩容,节约网络资源,资源占用较多的批作业和流作业。
**注意:**
需要在 Dinky 的集群配置中注册相关的 Kubernetes 和 Flink 配置,请参考
[
集群管理
](
/zh-CN/administrator-guide/registerCenter/cluster_manage.md
)
。
## DB SQL
Dinky 将把 sql 提交到对应的数据源执行。
**适用于:**
原生 SQL 查询、执行。
**注意:**
需要在数据源中心注册数据库,请参考
[
数据源管理
](
/zh-CN/administrator-guide/registerCenter/datasource_manage.md
)
\ No newline at end of file
docs/zh-CN/administrator-guide/Studio/job_manage.md
View file @
85b7386b
目前您可以在Dinky数据开发控制台对您的作业进行管理操作,包括目录创建和删除、作业创建和删除等。由于社区在作业管理还在完善中,后期会以命名空间的方式管理作业。
## 创建目录
## 创建根目录
首先右键单击
**数据开发>目录>创建
目录**
**数据开发 > 目录 > 创建目录 > 创建新
目录**

右键单击
**创建目录> 创建新目录**

## 创建根目录
创建根目录前提是需要在创建目录后,再次创建子目录,然后再同级目录下方可创建根目录。
首先右键单击
**创建根目录> 创建新目录**
或者点击引导页下方的
**+**
号按钮
**右键目录或作业 > 创建根目录 > 创建新目录**
或者点击引导页下方的
**+**
号按钮

...
...
@@ -28,17 +14,19 @@

## 创建目录
**创建目录 > 创建新目录**
## 创建作业

Dinky数据开发控制台,目前支持的数据源作业开发详情请参考开发控制台中的
[
组件介绍
](
)
## 创建作业
首先右键单击
**创建作业>
创建新作业**
**创建作业 >
创建新作业**

创建
新作业默认是FlinkSQL,您也可以选择其他数据源创建新
作业
创建
作业默认是 FlinkSQL,也可以创建其他类型的
作业

...
...
@@ -46,11 +34,9 @@ Dinky数据开发控制台,目前支持的数据源作业开发详情请参考

## 重命名
重命名包括对目录重命名和作业重命名
## 重命名目录或作业
首先右键单击
**重命名>
重命名目录**
**右键目录 > 重命名 >
重命名目录**

...
...
@@ -60,52 +46,45 @@ Dinky数据开发控制台,目前支持的数据源作业开发详情请参考

当重命名作业时,会提示重命名作业。
**右键作业 > 重命名 > 重命名作业**
## 移动
## 移动
目录或作业
您如果想移动目录或者移动作业,可以将目录或者作业移动到其他目录下。
如果所在的目录下有作业,在您移动成功后,会将作业也会一并移动到相应目录下。
首先右键单击
**
剪切**
**右键目录或作业 >
剪切**

然后
右键单击
**粘贴**
到指定目录下
然后
**右键目录或作业 > 粘贴**

剪切粘贴
成功
作业移动
成功

## 搜索
当您作业比较多的时候,可以通过搜索功能,找到对应的作业或者目录。不管是搜索作业还是搜索目录都很方便。
## 高亮模糊搜索

## 删除
删除包括删除作业和删除目录。
在删除作业时,会提示删除作业。
## 删除目录或作业
首先右键单击
**删除>删除作业>确定
**
**右键目录或作业 > 删除
**

当删除目录时,会提示删除
目录。
**说明:**
如果目录下有很多子目录或者作业,先要删除所有子目录或者作业,才能进一步删除父
目录。
## 作业其他功能
右键单击可以打开作业(或者双击作业)、异步提交作业
**打开作业**
和
**异步提交**

**说明:**
如果目录下有很多子目录或者作业,先要删除子目录或者作业,才能进一步删除父目录。
docs/zh-CN/administrator-guide/registerCenter/cluster_manage.md
View file @
85b7386b
当用户
提交 FlinkSQL 作业时,首先要保证安装了 Flink 集群。Flink 当前支持的集群模式包括:
提交 FlinkSQL 作业时,首先要保证安装了 Flink 集群。Flink 当前支持的集群模式包括:
-
Stand
A
lone 集群
-
Stand
a
lone 集群
-
Yarn 集群
-
Kubernetes 集群
...
...
@@ -8,17 +8,17 @@
**需要说明的是:**
-
Stand
A
lone 集群适用于既可以做为查询使用,又可以将作业异步提交到远程集群
-
Stand
a
lone 集群适用于既可以做为查询使用,又可以将作业异步提交到远程集群
-
Yarn Session 和 Kubernetes Session 适用于既可以做为查询使用,又可以将作业异步提交到远程集群
-
Yarn Per
job,
Yarn Application 和 Kubernetes Application 适用于异步提交
-
Yarn Per
-job,
Yarn Application 和 Kubernetes Application 适用于异步提交
## 集群实例管理
集群实例管理适用于 Stand
Alone,Yarn Session 和 Kubernetes Session 这三种类型配置
。
集群实例管理适用于 Stand
alone,Yarn Session 和 Kubernetes Session 这三种集群实例的注册
。
###
集群配置
###
注册集群实例
首先进入
**注册中心**
>
**集群管理**
>
**集群实例管理**
,新建一个
**集群实例**
,点击
**新建**
,添加Flink集群,参数配置完成后,点击提交即可。
**注册中心 > 集群管理 > 集群实例管理 > 新建**

...
...
@@ -26,27 +26,28 @@
**参数配置说明:**
-
**名称
:
**
自定义(必填)
-
**别名
:**
自定义
-
**类型:**
支持
StandAlone,Yarn Session和Kubernetes Session三种类型
-
**JobManager HA地址
:**
JobManager的RestAPI地址,当有多个RestAPI地址时。
采用英文逗号隔开
-
**注释
:
**
自定义
-
**名称
:
**
自定义(必填)
-
**别名
:**
自定义,默认同名称
-
**类型:**
支持
Standalone,Yarn Session 和 Kubernetes Session 三种类型的集群提交任务,其他类型的集群只能查看作业信息
-
**JobManager HA地址
:**
JobManager 的 RestAPI 地址,当 HA 部署时,将可能出现的多个 RestAPI 地址均写入,且
采用英文逗号隔开
-
**注释
:
**
自定义
当集群实例配置完成后,点击
**心跳**
,会
出现检测心跳
当集群实例配置完成后,点击
**心跳**
,会
更新最新的集群实例信息

点击
**回收**
,会将
过去
的集群实例进行回收
点击
**回收**
,会将
提交 Per-Job 和 Application 任务时自动注册且已经注销
的集群实例进行回收

**注意:**
心跳与回收需要手动触发
### 集群实例编辑
当集群配置完成后,用户可以对集群实例做编辑修改。
首先进入
**注册中心**
>
**集群实例管理**
,在列表中找到对应的集群实例,点击
**编辑**
,编辑集群
首先进入
**注册中心 > 集群实例管理**
,在列表中找到对应的集群实例,点击
**编辑**
,编辑集群

...
...
@@ -56,7 +57,7 @@
用户可以对所添加的集群实例进行删除。
首先进入
入
**注册中心**
>
**集群实例管理**
,在列表中找到对应的集群实例,点击
**删除**
后
,删除集群!
首先进入
**注册中心 > 集群实例管理**
,在列表中找到对应的集群实例,点击
**删除**
,删除集群!

...
...
@@ -70,11 +71,11 @@
## 集群配置管理
集群配置管理适用于
Yarn Perjob,Yarn Application和Kubernetes Application
这三种类型配置。
集群配置管理适用于
Yarn Per-job,Yarn Application 和 Kubernetes Application
这三种类型配置。
### 集群配置
首先进入
**注册中心
**
>
**集群管理**
>
**集群配置管理**
,点击
**新建**
后,可以创建集群配置,参数配置完成后,点击
**测试**
及
**完成**
即可。
首先进入
**注册中心
> 集群管理 > 集群配置管理**
,点击
**新建**
后,可以创建集群配置,参数配置完成后,点击
**测试**
及
**完成**
即可。

...
...
@@ -82,23 +83,23 @@
**参数配置说明:**
-
**类型:**
支持
Flink on Yarn和
Flink on Kubernetes
-
**hadoop配置**
-
**配置文件路径
:**
hadoop
配置文件路径,指定配置文件路径(末尾无/),需要包含以下文件:core-site.xml,hdfs-site.xml,yarn-site.xml
-
**自定义配置(高优先级)**
-
**ha.zookeeper.quorum
:**
zookeeper
访问地址
-
**其他配置
:**
zookeeper的参数配置(默认不填写)
-
**Flink配置**
-
**lib 路径
:
**
指定 lib 的 hdfs 路径(末尾无/),需要包含 Flink 运行时的依赖
-
**配置文件路径
:**
指定 flink-conf.yaml 的具体路径(末尾无/),
必填
-
**自定义配置(高优先级)
:
**
Flink参数配置
-
**类型:**
支持
Flink on Yarn 和
Flink on Kubernetes
-
**hadoop
配置**
-
**配置文件路径
:**
hadoop
配置文件路径,指定配置文件路径(末尾无/),需要包含以下文件:core-site.xml,hdfs-site.xml,yarn-site.xml
-
**自定义配置(高优先级
,目前不生效,请跳过
)**
-
**ha.zookeeper.quorum
:**
zookeeper
访问地址
-
**其他配置
:**
hadoop 的其他参数配置(默认不填写)
-
**Flink
配置**
-
**lib 路径
:
**
指定 lib 的 hdfs 路径(末尾无/),需要包含 Flink 运行时的依赖
-
**配置文件路径
:**
指定 flink-conf.yaml 的具体路径(末尾无/),
必填
-
**自定义配置(高优先级)
:
**
Flink参数配置
-
**基本配置**
-
**标识:**
唯一英文标识
(必填)
-
**名称:**
自定义
-
**标识:**
唯一英文标识
(必填)
-
**名称:**
自定义
,默认同标识
-
**注释:**
自定义
-
**是否启用:**
默认禁用,需要开启
参数配置完成后,点击
**测试**
,会显示测试连接成功。
参数配置完成后,点击
**测试**
,会显示测试连接成功。

...
...
@@ -108,7 +109,7 @@
当集群配置完成后,用户可以对集群配置做编辑修改。
首先进入
**注册中心**
>
**集群配置管理**
,在列表中找到对应的集群名称,点击
**编辑**
后,维护集群配置
首先进入
**注册中心 > 集群配置管理**
,在列表中找到对应的集群名称,点击
**编辑**
后,维护集群配置

...
...
@@ -118,20 +119,16 @@
用户可以对所添加的集群配置进行删除。
首先进入
**注册中心**
>
**集群配置管理**
,,在列表中找到对应的集群,点击
**删除**
后,删除集群
首先进入
**注册中心 > 集群配置管理**
,在列表中找到对应的集群,点击
**删除**
后,删除集群


### 搜索
当用户集群配置完成后,配置的信息会显示在列表中,用户可以通过名称,别名,创建时间对配置的作业进行查找。

**说明:**
当集群配置的作业异步提交成功,可以看到所作业提交后的实例,并如果集群实例一样,可以对所在的集群实例进行回收,删除,编辑等操作。集群实例的操作步骤请查看集群实例管理部分。
**说明:**
当集群配置的作业异步提交成功,可以看到所作业提交后的实例。同集群实例一样,可以对所在的集群实例进行回收,删除,编辑等操作。集群实例的操作步骤请查看集群实例管理部分。
docs/zh-CN/administrator-guide/registerCenter/datasource_manage.md
View file @
85b7386b
...
...
@@ -3,30 +3,30 @@

## 创建数据源
当用户使用 Dinky 做为数据开发工具时
,用户首先需要进入
**注册中心**
>
**数据源管理**
,点击
**新建**
即可。
当用户使用 Dinky 做为数据开发工具时
,用户首先需要进入
**注册中心 > 数据源管理**
,点击
**新建**
即可。


**名称
:**
输入英文唯一标识;
**名称
:**
输入英文唯一标识
**别名:**
自定义
;
**别名:**
自定义
,默认同名称
**分组类型
:**
包括来源,数仓,应用,备份,其他;
**分组类型
:**
包括来源、数仓、应用、备份、其他
**url
:**
数据库连接地址,如 jdbc: mysql://127.0.0.1:3306/dlink;
**url
:**
数据库连接地址,如 jdbc:mysql://127.0.0.1:3306/dlink
**用户名
:**
连接数据库的用户名;
**用户名
:**
连接数据库的用户名
**密码
:**
连接数据库的密码;
**密码
:**
连接数据库的密码
**Flink
连接配置:**
避免私密信息泄露,同时复用连接配置,在FlinkSQL中可使用${名称}来加载连接配置,如${ods},说明:名称指的是英文唯一标识,即如图所示的名称。注意需要开启全局变量(原片段机制);
**Flink
连接配置:**
避免私密信息泄露,同时作为全局变量复用连接配置,在FlinkSQL中可使用
**${名称}**
来加载连接配置,如
**${ods}**
。说明:名称指的是英文唯一标识,即如图所示的名称。注意需要开启全局变量(原片段机制)
**Flink
连接模板:**
Flink连接模板作用是为生成FlinkSQL DDL而扩展的功能。其中
**${schemaName}动态获取数据库**
,
**${tableName}动态获取表名称**
。更多参数请参考
[
Flink官网
](
https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/table/overview/
)
;
**Flink
连接模板:**
Flink 连接模板作用是为生成 FlinkSQL DDL 而扩展的功能。其中
**${schemaName}**
动态获取数据库,
**${tableName}**
动态获取表名称。更多参数请参考
[
Flink 官网
](
https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/table/overview/
)
**注释
:**
自定义;
**注释
:**
自定义
**是否启用
:**
默认禁用,需要开启;
**是否启用
:**
默认禁用,需要开启
当前数据库统一使用如上定义的参数名称配置数据源连接。当前支持的数据源可参考
[
扩展数据源
](
/zh-CN/extend/datasource.md
)
章节。
docs/zh-CN/developer-guide/local_debug.md
View file @
85b7386b
...
...
@@ -299,6 +299,22 @@ Dlink 的官网实现,大佬们可以修改或贡献 markdown。多多分享
同步执行/异步提交 ==> StudioService ==> JobManager ==> Executor ==> LocalStreamExecutor ==> CustomTableEnvironmentImpl ==> LocalEnvironment
### Standalone
注册集群实例 ==> 同步执行/异步提交 ==> StudioService ==> JobManager ==> Executor ==> RemoteStreamExecutor ==> CustomTableEnvironmentImpl ==> RemoteEnvironment ==> JobGraph ==> Flink Standalone Cluster
### Yarn Session
注册集群实例 ==> 同步执行/异步提交 ==> StudioService ==> JobManager ==> Executor ==> RemoteStreamExecutor ==> CustomTableEnvironmentImpl ==> RemoteEnvironment ==> JobGraph ==> Flink Yarn Session Cluster
### Yarn Per-Job
注册集群配置 ==> 异步提交 ==> StudioService ==> JobManager ==> Executor ==> JobGraph ==> Gateway ==> YarnPerJobGateway==> YarnClient ==> Flink Yarn Per-Job Cluster
### Yarn Application
注册集群配置 ==> 异步提交 ==> StudioService ==> JobManager ==> Executor ==> TaskId & JDBC ==> Gateway ==> YarnApplicationGateway==> YarnClient ==> dlink-app.jar ==> Executor ==> AppStreamExecutor ==> CustomTableEnvironmentImpl ==> LocalEnvironmentFlink Yarn Application Cluster
## 说明
以为内容是 Dinky在IDEA 部署调试步骤,并简单介绍了各模块的作用,也清晰的描述了各执行模式下 FlinkSQL 实现免 Jar 提交的代码思路。在了解以上内容后,可以动手改造 Dinky。
...
...
docs/zh-CN/introduce.md
View file @
85b7386b
...
...
@@ -17,7 +17,7 @@ Dinky(原 Dlink):
## 特点
一个
`开箱即用`
、
`易扩展`
,以
`Apache Flink`
为基础,连接
`OLAP`
和
`数据湖`
等众多框架的
`一站式`
实时计算平台,致力于
`流批一体`
和
`湖仓一体`
的建设与实践。
一个
**开箱即用**
、
**易扩展**
,以
**Apache Flink**
为基础,连接
**OLAP**
和
**数据湖**
等众多框架的
**一站式**
实时计算平台,致力于
**流批一体**
和
**湖仓一体**
的建设与实践。
其主要目标如下:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment