Unverified Commit 44ce1e47 authored by xiaoguaiguai's avatar xiaoguaiguai Committed by GitHub

Merge pull request #331 from zhu-mingye/dev

[Optimize-330][docs]  Optimize official documents 
parents 84373b29 9fb5144c
...@@ -92,17 +92,12 @@ Dinky 基于 Apache Flink 实现 Dlink ,增强 Flink 的应用与体验,探 ...@@ -92,17 +92,12 @@ Dinky 基于 Apache Flink 实现 Dlink ,增强 Flink 的应用与体验,探
## 近期计划 ## 近期计划
- 多租户及命名空间 - [ ] 多租户及命名空间
- [ ] 全局血缘与影响分析
- 全局血缘与影响分析 - [ ] 统一元数据管理
- [ ] Flink 元数据持久化
- 统一元数据管理 - [ ] 多版本 Flink-Client Server
- [ ] 整库千表同步
- Flink 元数据持久化
- 多版本 Flink-Client Server
- 整库千表同步
## 参与贡献 ## 参与贡献
......
...@@ -92,17 +92,12 @@ Dinky 基于 Apache Flink 实现 Dlink ,增强 Flink 的应用与体验,探 ...@@ -92,17 +92,12 @@ Dinky 基于 Apache Flink 实现 Dlink ,增强 Flink 的应用与体验,探
## 近期计划 ## 近期计划
- 多租户及命名空间 - [ ] 多租户及命名空间
- [ ] 全局血缘与影响分析
- 全局血缘与影响分析 - [ ] 统一元数据管理
- [ ] Flink 元数据持久化
- 统一元数据管理 - [ ] 多版本 Flink-Client Server
- [ ] 整库千表同步
- Flink 元数据持久化
- 多版本 Flink-Client Server
- 整库千表同步
## 参与贡献 ## 参与贡献
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
- 编译与部署 - 编译与部署
- [编译](/zh-CN/quick_start/build.md) - [编译](/zh-CN/quick_start/build.md)
- [部署](/zh-CN/quick_start/deploy.md) - [部署](/zh-CN/quick_start/deploy.md)
- [dinky概览](/zh-CN/dinky_overview.md) - [Dinky概览](/zh-CN/dinky_overview.md)
- 快速入门指南 - 快速入门指南
- FlinkSQL作业快速入门 - FlinkSQL作业快速入门
- 其他数据源作业快速入门 - 其他数据源作业快速入门
...@@ -85,4 +85,5 @@ ...@@ -85,4 +85,5 @@
- [常见问题](/zh-CN/FAQ.md) - [常见问题](/zh-CN/FAQ.md)
- [致谢](/zh-CN/others/thanks.md) - [致谢](/zh-CN/others/thanks.md)
- [交流与贡献](/zh-CN/others/comminicate.md) - [交流与贡献](/zh-CN/others/comminicate.md)
- [roadmap](/zh-CN/roadmap.md) - [RoadMap](/zh-CN/roadmap.md)
- [近期计划](/zh-CN/others/plans.md)
**在数据开发编辑器内可使用以下快捷键** **在数据开发编辑器内可使用以下快捷键**
| 功能描述 | 快捷键 | 备注 | | 功能描述 | 快捷键 | 备注 |
|---------| -------------------------- | ------ | | ---------------- | -------------------------- | ------ |
| 全屏开发 | `F2` | | | 全屏开发 | `F2` | |
| 关闭弹框及全屏 | `Esc` | | | 关闭弹框及全屏 | `Esc` | |
| 保存 | `Ctrl + S` | | | 保存 | `Ctrl + S` | |
......
当用户查看或者使用数据源中的DDL或者DML,可通过元数据中心获取数据源中的相关DDL或者DML。目前元数据中心包含: 当用户查看或者使用数据源中的 DDL 或者 DML ,可通过元数据中心获取数据源中的相关 DDL 或者 DML。目前元数据中心包含:
- **表信息** - **表信息**
- **字段信息** - **字段信息**
- **SQL生成** - **SQL 生成**
其中在SQL生成中又包括: 其中在SQL生成中又包括:
- **FlinkDDL语句** - **FlinkDDL 语句**
- **SELECT语句** - **SELECT 语句**
- **SQLDDL语句** - **SQLDDL 语句**
首先进入FlinkSQL Studio中的元数据,选择已经配置好的数据源,会出现数据源对应的schema。 首先进入**数据开发**中的**元数据**,选择已经配置好的数据源,会出现数据源对应的schema。
![进入元数据](http://www.aiwenmo.com/dinky/dev/docs/%E8%BF%9B%E5%85%A5%E5%85%83%E6%95%B0%E6%8D%AE.png) ![metadata_page](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/metadata/metadata_page.png)
出现以上 schema 后,查看 schema 下的表,**右键单击 schema 下的表**即可看到表信息,字段信息及 SQL 生成。
![选择源数据](http://www.aiwenmo.com/dinky/dev/docs/%E9%80%89%E6%8B%A9%E6%BA%90%E6%95%B0%E6%8D%AE.png) ### 表信息
![metadata_table_info](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/metadata/metadata_table_info.png)
### 字段信息
![metadata_columns_info](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/metadata/metadata_columns_info.png)
### SQL生成
![metadata_gen_flinkddl](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/metadata/metadata_gen_flinkddl.png)
![schema信息](http://www.aiwenmo.com/dinky/dev/docs/schema%E4%BF%A1%E6%81%AF.png) ![metadata_gen_selectsql](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/metadata/metadata_gen_selectsql.png)
![metadata_gen_createtable_sql](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/metadata/metadata_gen_createtable_sql.png)
出现以上schema后,查看schema下的表,右键单击schema下的表即可看到表信息,字段信息及SQL生成。 **如何配置数据源请参考** [数据源管理](/zh-CN/administrator-guide/registerCenter/datasource_manage.md)
![表信息](http://www.aiwenmo.com/dinky/dev/docs/%E8%A1%A8%E4%BF%A1%E6%81%AF.png)
![字段信息](http://www.aiwenmo.com/dinky/dev/docs/%E5%AD%97%E6%AE%B5%E4%BF%A1%E6%81%AF.png)
![SQL生成](http://www.aiwenmo.com/dinky/dev/docs/SQL%E7%94%9F%E6%88%90.png)
如何配置数据源请参考[数据源管理](/zh-CN/administrator-guide/registerCenter/datasource_manage.md)
当用户提交FlinkSQL作业时,首先要保证安装了Flink集群。Flink当前支持的集群模式包括: 当用户提交 FlinkSQL 作业时,首先要保证安装了 Flink 集群。Flink 当前支持的集群模式包括:
- StandAlone集群 - StandAlone 集群
- Yarn集群 - Yarn 集群
- Kubernetes集群 - Kubernetes 集群
对于以上的三种集群而言,Dinky为用户提供了两种集群管理方式,一种是集群实例管理,一种是集群配置管理。 对于以上的三种集群而言,Dinky 为用户提供了两种集群管理方式,一种是集群实例管理,一种是集群配置管理。
**需要说明的是:** **需要说明的是:**
- StandAlone集群适用于既可以做为查询使用,又可以将作业异步提交到远程集群 - StandAlone 集群适用于既可以做为查询使用,又可以将作业异步提交到远程集群
- Yarn Session和Kubernetes Session适用于既可以做为查询使用,又可以将作业异步提交到远程集群 - Yarn Session 和 Kubernetes Session 适用于既可以做为查询使用,又可以将作业异步提交到远程集群
- Yarn Perjob,Yarn Application和Kubernetes Application适用于异步提交 - Yarn Perjob,Yarn Application 和 Kubernetes Application 适用于异步提交
## 集群实例管理 ## 集群实例管理
集群实例管理适用于StandAlone,Yarn Session和Kubernetes Session这三种类型配置。 集群实例管理适用于 StandAlone,Yarn Session 和 Kubernetes Session 这三种类型配置。
### 集群配置 ### 集群配置
首先进入注册中心的集群管理中的集群实例管理,新建一个集群实例,点击新建,添加Flink集群,参数配置完成后,点击提交即可。 首先进入**注册中心** > **集群管理** > **集群实例管理**,新建一个**集群实例**,点击**新建**,添加Flink集群,参数配置完成后,点击提交即可。
![cluster_manager_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/cluster_manager/cluster_manager_list.png) ![cluster_manager_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/cluster_manager/cluster_manager_list.png)
...@@ -32,11 +32,11 @@ ...@@ -32,11 +32,11 @@
- **JobManager HA地址:** JobManager的RestAPI地址,当有多个RestAPI地址时。采用英文逗号隔开 - **JobManager HA地址:** JobManager的RestAPI地址,当有多个RestAPI地址时。采用英文逗号隔开
- **注释:** 自定义 - **注释:** 自定义
当集群实例配置完成后,点击心跳,会出现检测心跳 当集群实例配置完成后,点击**心跳**,会出现检测心跳
![心跳检查](http://www.aiwenmo.com/dinky/dev/docs/%E5%BF%83%E8%B7%B3%E6%A3%80%E6%9F%A5.png) ![心跳检查](http://www.aiwenmo.com/dinky/dev/docs/%E5%BF%83%E8%B7%B3%E6%A3%80%E6%9F%A5.png)
点击回收,会将过去的集群实例进行回收 点击**回收**,会将过去的集群实例进行回收
![回收](http://www.aiwenmo.com/dinky/dev/docs/%E5%9B%9E%E6%94%B6.png) ![回收](http://www.aiwenmo.com/dinky/dev/docs/%E5%9B%9E%E6%94%B6.png)
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
当集群配置完成后,用户可以对集群实例做编辑修改。 当集群配置完成后,用户可以对集群实例做编辑修改。
首先进入注册中心集群实例管理,在列表中找到对应的集群实例,点击"编辑"后,编辑集群 首先进入**注册中心** > **集群实例管理**,在列表中找到对应的集群实例,点击**编辑**,编辑集群
![集群实例编辑](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E5%AE%9E%E4%BE%8B%E7%BC%96%E8%BE%91.png) ![集群实例编辑](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E5%AE%9E%E4%BE%8B%E7%BC%96%E8%BE%91.png)
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
用户可以对所添加的集群实例进行删除。 用户可以对所添加的集群实例进行删除。
首先进入注册中心中的集群实例管理,在列表中找到对应的集群实例,点击"删除"后,删除集群! 首先进入**注册中心** > **集群实例管理**,在列表中找到对应的集群实例,点击**删除**后,删除集群!
![集群实例删除](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E5%AE%9E%E4%BE%8B%E5%88%A0%E9%99%A4.png) ![集群实例删除](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E5%AE%9E%E4%BE%8B%E5%88%A0%E9%99%A4.png)
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
### 集群配置 ### 集群配置
首先进入注册中心的集群管理中的集群配置管理,点击"新建"后,可以创建集群配置,参数配置完成后,点击"测试"及"完成"即可。 首先进入**注册中心** > **集群管理** > **集群配置管理**,点击**新建**后,可以创建集群配置,参数配置完成后,点击**测试****完成**即可。
![创建集群配置1](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%9B%E5%BB%BA%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE1.png) ![创建集群配置1](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%9B%E5%BB%BA%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE1.png)
...@@ -98,7 +98,7 @@ ...@@ -98,7 +98,7 @@
- **注释:** 自定义 - **注释:** 自定义
- **是否启用:** 默认禁用,需要开启 - **是否启用:** 默认禁用,需要开启
参数配置完成后,点击"测试",会显示测试连接成功。 参数配置完成后,点击**测试**,会显示测试连接成功。
![集群测试](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E6%B5%8B%E8%AF%95.png) ![集群测试](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E6%B5%8B%E8%AF%95.png)
...@@ -108,7 +108,7 @@ ...@@ -108,7 +108,7 @@
当集群配置完成后,用户可以对集群配置做编辑修改。 当集群配置完成后,用户可以对集群配置做编辑修改。
首先进入注册中心集群配置管理,在列表中找到对应的集群名称,点击"编辑"后,维护集群配置 首先进入**注册中心** > **集群配置管理**,在列表中找到对应的集群名称,点击**编辑**后,维护集群配置
![集群配置编辑](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE%E7%BC%96%E8%BE%91.png) ![集群配置编辑](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE%E7%BC%96%E8%BE%91.png)
...@@ -118,7 +118,7 @@ ...@@ -118,7 +118,7 @@
用户可以对所添加的集群配置进行删除。 用户可以对所添加的集群配置进行删除。
首先进入注册中心中的集群配置管理,,在列表中找到对应的集群,点击"删除"后,删除集群 首先进入**注册中心** > **集群配置管理**,,在列表中找到对应的集群,点击**删除**后,删除集群
![集群配置删除](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4.png) ![集群配置删除](http://www.aiwenmo.com/dinky/dev/docs/%E9%9B%86%E7%BE%A4%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4.png)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
![database_manager_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/database_manager/database_manager_list.png) ![database_manager_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/database_manager/database_manager_list.png)
## 创建数据源 ## 创建数据源
当用户使用Dinky做为数据开发工具时,用户首先需要进入<span style=''>注册中心数据源管理</span>,新建数据库连接即可。 当用户使用 Dinky 做为数据开发工具时,用户首先需要进入**注册中心** > **数据源管理**,点击**新建** 即可。
![create_database_jdbc](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/database_manager/create_database_jdbc.png) ![create_database_jdbc](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/database_manager/create_database_jdbc.png)
...@@ -23,10 +23,10 @@ ...@@ -23,10 +23,10 @@
**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)章节。 当前数据库统一使用如上定义的参数名称配置数据源连接。当前支持的数据源可参考 [扩展数据源](/zh-CN/extend/datasource.md)章节。
## 文档管理List ## 文档管理列表
![document_manager_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/document_manager/document_manager_list.png) ![document_manager_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/document_manager/document_manager_list.png)
......
当用户使用jar包提交Flink应用时,可以在jar包管理中对所需程序进行管理。 当用户使用 jar 包提交 Flink 应用时,可以在 j**ar管理**中对所需程序进行管理。
## Jar包配置 ## Jar包配置
首先进入注册中心的jar管理,点击“新建”,进入创建Jar配置界面。 首先进入**注册中心** > **jar管理**,点击 **新建**,进入**创建Jar配置**界面。
![新建](http://www.aiwenmo.com/dinky/dev/docs/%E6%96%B0%E5%BB%BA.png) ![新建](http://www.aiwenmo.com/dinky/dev/docs/%E6%96%B0%E5%BB%BA.png)
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
- **Jar配置:** - **Jar配置:**
- 默认:** User App - 默认:** User App
- **文件路径:** 指定HDFS上的文件路径,即Flink提交的jar包程序 - **文件路径:** 指定 HDFS 上的文件路径,即Flink提交的jar包程序
- **启动类:** 指定可执行 Jar 的启动类,(可选) - **启动类:** 指定可执行 Jar 的启动类,(可选)
- **执行参数:** 指定可执行 Jar 的启动类入参,(可选) - **执行参数:** 指定可执行 Jar 的启动类入参,(可选)
- **基本配置:** - **基本配置:**
...@@ -31,7 +31,7 @@ Jar包配置完成后,就可以正常提交运行。 ...@@ -31,7 +31,7 @@ Jar包配置完成后,就可以正常提交运行。
用户可以对所添加的可执行Jar包配置做编辑修改。 用户可以对所添加的可执行Jar包配置做编辑修改。
首先进入注册中心的jar包管理中,点击编辑,即可对可执行Jar配置进行修改。 首先进入**注册中心** > **jar管理**,点击**编辑**,即可对可执行Jar配置进行修改。
![jar编辑](http://www.aiwenmo.com/dinky/dev/docs/jar%E7%BC%96%E8%BE%91.png) ![jar编辑](http://www.aiwenmo.com/dinky/dev/docs/jar%E7%BC%96%E8%BE%91.png)
...@@ -45,7 +45,7 @@ Jar包配置完成后,就可以正常提交运行。 ...@@ -45,7 +45,7 @@ Jar包配置完成后,就可以正常提交运行。
用户可以对所添加的可执行Jar包配置做删除。 用户可以对所添加的可执行Jar包配置做删除。
首先进入注册中心的jar包管理中,点击删除,即可对可执行Jar配置进行删除。 首先进入**注册中心** > **jar管理**,点击**删除**,即可对可执行Jar配置进行删除。
![jar配置删除](http://www.aiwenmo.com/dinky/dev/docs/jar%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4.png) ![jar配置删除](http://www.aiwenmo.com/dinky/dev/docs/jar%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4.png)
......
如何创建报警实例及报警组,在0.6版本以后,用户可以创建报警实例及报警组,监控FlinkSQL作业。一个报警组可以使用多个报警实例,用户就可以进一步收到报警通知。收到的报警通知如下: 如何创建报警实例及报警组,在0.6版本以后,用户可以创建报警实例及报警组,监控 FlinkSQL 作业。一个报警组可以使用多个报警实例,用户就可以进一步收到报警通知。收到的报警通知如下:
- unknow - unknown
- stop - stop
- cancel - cancel
- finished - finished
首先要进入<span style="">注册中心</span>,选择<span>报警管理</span>,然后选择左侧的报警实例管理,创建一个告警实例。然后选择对应的报警插件(当前支持钉钉及企业微信)。然后选择报警组管理,创建一个报警组。 首先要进入**注册中心** > **报警管理**,然后选择左侧的报警实例管理,创建一个告警实例。然后选择对应的报警插件。然后选择报警组管理,创建一个报警组。
目前Dlinky支持的报警插件有:
- **[钉钉](#钉钉)方式告警 :** WebHook
- **[企业微信](#企业微信)方式告警 :** 包含 **应用** **群聊**
- **[飞书](#飞书)方式告警 :** WebHook
- **[邮箱](#邮箱)方式告警 :** 通过邮件发送报警通知
## 报警实例管理 ## 报警实例管理
新建一个报警实例,选择新建 ### 告警实例列表
![alert_instance_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/alert_instance_list.png) ![alert_instance_list](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/alert_instance_list.png)
### 创建告警实例
**注册中心** > **报警管理**,选择**新建**
![create_alert_instance](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_alert_instance.png) ![create_alert_instance](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_alert_instance.png)
点击<span>钉钉或者企业微信</span>,创建报警实例配置。报警实例配置完成,就可以创建报警组。 点击以上告警实例类型,创建报警实例配置。报警实例配置完成,就可以创建报警组。
## 报警组管理 ## 报警组管理
...@@ -27,7 +34,7 @@ ...@@ -27,7 +34,7 @@
## 钉钉 ## 钉钉
如果用户使用钉钉进行报警,请在报警实例中选择报警实例管理,选择新建<span>钉钉</span>报警实例。钉钉的配置如下: 如果用户使用钉钉进行报警,请进入**注册中心** > **报警管理** > **报警实例管理**,点击**新建** 选择**钉钉**报警实例。
![create_dingdingtalk_alert](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_dingdingtalk_alert.png) ![create_dingdingtalk_alert](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_dingdingtalk_alert.png)
...@@ -35,12 +42,12 @@ ...@@ -35,12 +42,12 @@
- **名称:** 自定义; - **名称:** 自定义;
- **地址:** Webhook,格式如下:https://oapi.dingtalk.com/robot/send?access_token=??????? - **地址:** Webhook,格式如下:https://oapi.dingtalk.com/robot/send?access_token=???????
- **关键字:** 安全设置的自定义关键词,钉钉关键字和dinky中的关键字保持一致即可; - **关键字:** 安全设置的自定义关键词,钉钉关键字和 Dinky 中的关键字保持一致即可;
- **密令:** 安全设置的加签; - **密令:** 安全设置的加签;
- **开启代理:** 默认否(一般默认) - **开启代理:** 默认否(一般默认)
- **@所有人:** 默认禁用,需要开启; - **@所有人:** 默认禁用,需要开启;
- **是否启用:** 默认禁用,需要开启; - **是否启用:** 默认禁用,需要开启;
- **展示方式类型:** 支持MarkDown和文本; - **展示方式类型:** 支持 MarkDown 和文本;
**说明:** 自定义机器人发送消息时,在“被@人列表”里面的人员收到该消息时,会有@消息提醒。 **说明:** 自定义机器人发送消息时,在“被@人列表”里面的人员收到该消息时,会有@消息提醒。
...@@ -48,7 +55,7 @@ ...@@ -48,7 +55,7 @@
## 企业微信 ## 企业微信
如果用户使用企业微信进行报警,请在报警实例中选择报警实例管理,选择新建<span>企业微信</span>报警实例。 如果用户使用企业微信进行报警,请进入**注册中心** > **报警管理** > **报警实例管理**,点击**新建** 选择**企业微信**报警实例。
### 微信企业应用配置 ### 微信企业应用配置
...@@ -63,7 +70,7 @@ ...@@ -63,7 +70,7 @@
- **发送消息:** 接口中定义的msg,如{"touser":"{toUser}","agentid":{agentId}","msgtype":"{showType}","{showType}":{"content":"{msg}"}} - **发送消息:** 接口中定义的msg,如{"touser":"{toUser}","agentid":{agentId}","msgtype":"{showType}","{showType}":{"content":"{msg}"}}
- **代理ID:**询问企业微信管理员即可; - **代理ID:**询问企业微信管理员即可;
- **发送方式:** 应用; - **发送方式:** 应用;
- **展示方式类型:** 支持MarkDown和文本; - **展示方式类型:** 支持 MarkDown 和文本;
- **是否启用:** 默认禁用,需要开启; - **是否启用:** 默认禁用,需要开启;
### 微信企业群聊配置 ### 微信企业群聊配置
...@@ -93,7 +100,7 @@ ...@@ -93,7 +100,7 @@
## 飞书 ## 飞书
如果用户使用飞书进行报警,请在报警实例中选择报警实例管理,选择新建<span>飞书</span>报警实例。 如果用户使用飞书进行报警,请进入**注册中心** > **报警管理** > **报警实例管理**,点击**新建** 选择**飞书**报警实例。
![create_feishu_alert](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_feishu_alert.png) ![create_feishu_alert](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_feishu_alert.png)
...@@ -102,7 +109,7 @@ ...@@ -102,7 +109,7 @@
- **名称:** 自定义; - **名称:** 自定义;
- **发送方式:** 群聊; - **发送方式:** 群聊;
- **WebHook地址:** Webhook地址,如https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxx - **WebHook地址:** Webhook 地址,如https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxx
- **关键字:** 作为发送信息的title 标记; - **关键字:** 作为发送信息的title 标记;
- **@所有人:** 默认禁用,如果@所有人需要开启; - **@所有人:** 默认禁用,如果@所有人需要开启;
- **被@用户:**飞书的用户ID; - **被@用户:**飞书的用户ID;
...@@ -116,7 +123,7 @@ ...@@ -116,7 +123,7 @@
## 邮箱 ## 邮箱
如果用户使用邮箱进行报警,请在报警实例中选择报警实例管理,选择新建<span>邮箱</span>报警实例。 如果用户使用邮箱进行报警,请进入**注册中心** > **报警管理** > **报警实例管理**,点击**新建** 选择**邮箱**报警实例。
![create_email_alert](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_email_alert.png) ![create_email_alert](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/registerCenter/warning/create_email_alert.png)
......
当用户使用 **Application 模式**以及 **RestAPI** 时,需要在 **Flink 设置** 页面进行相关修改。
当用户使用Application模式以及RestAPI时,需要在Flink设置页面进行相关修改 另外**Application 模式** 支持**Yarn****Kubernetes**,启用 **RestAPI** 后,Flink 任务的 savepoint,停止等操作都将会通过 JobManager 的 RestAPI 进行
另外Application模式支持Yarn和Kubernetes,启用RestAPI后,Flink任务的savepoint,停止等操作都将会通过JobManager的RestAPI进行 首先进入**系统设置**中的**Flink设置**,对参数配置进行修改即可
首先进入系统设置中的Flink设置,对参数配置进行修改即可。 ![flink_setting](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/Flink_Setting/flink_setting.png)
![image-20220314221926706](http://www.aiwenmo.com/dinky/dev/docs/image-20220314221926706.png)
**参数配置说明:** **参数配置说明:**
- **提交FlinkSQL的Jar文件路径:** 此参数是为了引入Dinky中提交Application模式的jar包文件,需要上传到相应的HDFS路径,jar包在dinky解压根目录下的jar文件夹下; - **提交 FlinkSQL 的 Jar文件路径:** 此参数是为了引入 Dinky 中提交 **Application 模式**的 jar包文件,
- **提交FlinkSQL的Jar的主类入参:** 默认为空,不需要修改,配合提交FlinkSQL的Jar文件路径使用; - **服务器部署方式:** 需要上传到相应的HDFS路径,jar包在 Dinky 解压根目录下的jar文件夹下;eg: hdfs:///dlink/jar/dlink-app-${dlink-version}-jar-with-dependencies.jar
- **提交FlinkSQL的Jar的主类:** 默认com.dlink.app.MainApp,不需要修改,配合提交FlinkSQL的Jar文件路径使用; - **本地调试方式:** 需要本地 install后 将其设置为eg: $idea_work_dir/dlink/dlink-app/target/dlink-app-${dlink-version}-jar-with-dependencies.jar
- **使用RestAPI:** 默认开启,开启后FlinkSQL停止等操作通过此参数进行; - **提交 FlinkSQL 的 Jar 的主类入参:** 默认为空,不需要修改,配合提交FlinkSQL的Jar文件路径使用;
- **FlinkSQL语句分隔符:** 默认是分号,即";"。多个语句间可以用分号隔开; - **提交 FlinkSQL 的 Jar 的主类:** 默认 com.dlink.app.MainApp,不需要修改,配合提交FlinkSQL的Jar文件路径使用;
\ No newline at end of file - **使用 RestAPI:** 默认开启,开启后 FlinkSQL 停止等操作通过此参数进行;
- **FlinkSQL 语句分隔符:** 默认是分号,即";"。多个语句间可以用分号隔开; 此项支持自定义 eg: **;\r\n**
\ No newline at end of file
系统设置中的用户管理功能,包含添加或删除用户、修改密码等。此用户管理中的用户仅限于登录Dinky界面。 系统设置中的用户管理功能,包含添加或删除用户、修改密码等。此用户管理中的用户仅限于登录 Dinky 界面。
**默认用户名/密码:** admin/admin **默认用户名/密码:** admin/admin
## 用户管理
![user_manager](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/user_manager.png)
## 添加用户 ## 添加用户
当用户使用非admin用户登录时,可以添加一个新用户,通过新用户登录Dinky。 当用户使用非admin用户登录时,可以添加一个新用户,通过新用户登录Dinky。
- **普通用户**创建好后,**默认密码****123456**
- 如果需要修改密码,请查看[修改密码](#密码修改)
首先要进入<span style="">系统设置</span>,选择<span>用户管理</span>,新建 进入 **系统设置**,选择 **用户管理****新建**
![用户新建](http://www.aiwenmo.com/dinky/dev/docs/%E7%94%A8%E6%88%B7%E6%96%B0%E5%BB%BA.png) ![create_user](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/create_user.png)
进入后,会出现用户创建界面
![](http://www.aiwenmo.com/dinky/dev/docs/%E5%88%9B%E5%BB%BA%E7%94%A8%E6%88%B7.png)
**参数配置:** **参数配置:**
...@@ -24,45 +27,44 @@ ...@@ -24,45 +27,44 @@
## 删除用户 ## 删除用户
但用户不使用某个创建的普通用户时,可以进行删除。首先进入<span style="">系统设置</span>,选择<span>用户管理</span>,点击对应用户的删除即可。 但用户不使用某个创建的普通用户时,可以进行删除。首先进入 **系统设置**,选择 **用户管理**,点击对应用户的**删除**即可。
![用户删除](http://www.aiwenmo.com/dinky/dev/docs/%E7%94%A8%E6%88%B7%E5%88%A0%E9%99%A4.png) ![delete_user](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/delete_user.png)
![用户删除1](http://www.aiwenmo.com/dinky/dev/docs/%E7%94%A8%E6%88%B7%E5%88%A0%E9%99%A41.png) ![delete_user_ok](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/delete_user_ok.png)
**说明:** admin用户在dinky是最高权限用户,无法删除,只能修改密码 **说明:** admin 用户在 Dinky 是最高权限用户,无法删除,只能修改密码
## 用户配置及编辑 ## 用户配置及编辑
用户配置或者编辑是为了用户修改用户的基本信息,首先进入<span style="">系统设置</span>,选择<span>用户管理</span>,点击对应用户的配置或者编辑。接下来就可以维护用户信息。 用户配置或者编辑是为了用户修改用户的基本信息,首先进入 **系统设置**,选择 **用户管理**,点击对应用户的**配置**或者**编辑**。接下来就可以维护用户信息。
![用户编辑及配置](http://www.aiwenmo.com/dinky/dev/docs/%E7%94%A8%E6%88%B7%E7%BC%96%E8%BE%91%E5%8F%8A%E9%85%8D%E7%BD%AE.png)
![维护用户](http://www.aiwenmo.com/dinky/dev/docs/%E7%BB%B4%E6%8A%A4%E7%94%A8%E6%88%B7.png) ![update_user](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/update_user.png)
## 密码修改 ## 密码修改
普通用户创建好后,默认密码是123456,admin用户密码是admin。为避免信息泄露,在生产环境建议用户修改密码。 - 普通用户创建好后,**默认密码****123456**
- **admin 用户**密码是 **admin** 。为避免信息泄露,**在生产环境建议用户修改密码**
首先进入<span style="">系统设置</span>,选择<span>用户管理</span>,点击对应用户的密码修改即可。 首先进入 **系统设置**,选择 **用户管理**,点击对应用户的密码修改即可。
![image-20220314235010502](http://www.aiwenmo.com/dinky/dev/docs/image-20220314235010502.png) ![update_passwd](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/update_passwd.png)
![修改密码1](http://www.aiwenmo.com/dinky/dev/docs/%E4%BF%AE%E6%94%B9%E5%AF%86%E7%A0%811.png) ![update_passwd_ok](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/update_passwd_ok.png)
当密码修改成功后,用户可以选择界面右上角的退出登录,既可通过新密码登录Dinky。 当密码修改成功后,用户可以选择界面**右上角****退出登录**,既可通过新密码登录 Dinky。
![image-20220314224207098](http://www.aiwenmo.com/dinky/dev/docs/image-20220314224207098.png) ![loginout](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/loginout.png)
![image-20220314224454102](http://www.aiwenmo.com/dinky/dev/docs/image-20220314224454102.png) ![login](http://www.aiwenmo.com/dinky/docs/zh-CN/administrator-guide/system_setting/user_management/login.png)
......
Dinky平台提供OpenAPI能力,通过调用Dinky的OpenAPI可以使用Dinky的功能,实现应用和Dinky的集成和交互。 Dinky 平台提供 OpenAPI 能力,通过调用 Dinky 的 OpenAPI 可以使用 Dinky 的功能,实现应用和 Dinky 的集成和交互。
### 背景 ### 背景
Dinky的OpenAPI提供了10多种API功能。通过调用API,可以快速进行操作和系统集成对接等工作,提高数据开发效率,满足企业定制化需求。您还可以通过开放平台,轻松获取OpenAPI的使用情况。 Dinky 的O penAPI 提供了 10 多种 API 功能。通过调用 API,可以快速进行操作和系统集成对接等工作,提高数据开发效率,满足企业定制化需求。您还可以通过开放平台,轻松获取 OpenAPI 的使用情况。
当前支持的OpenAPI包括如下: 当前支持的 OpenAPI 包括如下:
| 序号 | 执行模式 | 类型名称 | 作用 | | 序号 | 执行模式 | 类型名称 | 作用 |
| :--: | :------------: | :----------------: | :------------------------------: | | :--: | :------------: | :----------------: | :------------------------------: |
| 1 | explainSql | cancel | 调用取消FlinkSQL作业 | | 1 | explainSql | cancel | 调用取消 FlinkSQL 作业 |
| 2 | explainSql | statement | 调用statement语句 | | 2 | explainSql | statement | 调用 statement 语句 |
| 3 | executeJar | yarn-application | 调用执行yarn-application jar包 | | 3 | executeJar | yarn-application | 调用执行 Yarn-Application jar包 |
| 4 | executeSql | kubernetes-session | 调用执行作业在k8ssession上运行 | | 4 | executeSql | kubernetes-session | 调用执行作业在 K8ssession 上运行 |
| 5 | executeSql | local | 调用执行作业在local上运行 | | 5 | executeSql | local | 调用执行作业在 Local 上运行 |
| 6 | executeSql | yarn-per-job | 调用执行作业在yarn-per-job上运行 | | 6 | executeSql | yarn-per-job | 调用执行作业在 Yarn-per-job 上运行 |
| 7 | executeSql | standalone | 调用执行作业在standalone上运行 | | 7 | executeSql | standalone | 调用执行作业在 Standalone 上运行 |
| 8 | executeSql | yarn-session | 调用执行作业在yarn-session上运行 | | 8 | executeSql | yarn-session | 调用执行作业在 Yarn-session 上运行 |
| 9 | getJobData | | | | 9 | getJobData | | |
| 10 | getJobPlan | statement | 调用获取执行计划 | | 10 | getJobPlan | statement | 调用获取执行计划 |
| 11 | getStreamGraph | statement | 调用获取Flink DAG图 | | 11 | getStreamGraph | statement | 调用获取 Flink DAG 图 |
| 12 | savepoint | | 调用手动保存checkpoints | | 12 | savepoint | | 调用手动保存 Checkpoints |
| 13 | savepointTask | | 调用并触发savepoint | | 13 | savepointTask | | 调用并触发 Savepoint |
| 14 | submitTask | | 作业调度 | | 14 | submitTask | | 作业调度 |
### 示例 ### 示例
**explainSql** **explainSql**
explainSql包括FlinkSQL作业取消和statement语句执行 explainSql 包括 FlinkSQL 作业取消和 statement 语句执行
FlinkSQL作业cancel: FlinkSQL 作业 cancel:
**explainSql** **explainSql**
explainSql包括Fcancel explainSql 包括 cancel
``` ```
http://127.0.0.1:8888/openapi/explainSql http://127.0.0.1:8888/openapi/explainSql
...@@ -55,7 +55,7 @@ http://127.0.0.1:8888/openapi/explainSql ...@@ -55,7 +55,7 @@ http://127.0.0.1:8888/openapi/explainSql
} }
``` ```
statement语句执行: statement 语句执行:
``` ```
http://127.0.0.1:8888/openapi/explainSql http://127.0.0.1:8888/openapi/explainSql
...@@ -80,7 +80,7 @@ statement语句执行: ...@@ -80,7 +80,7 @@ statement语句执行:
**executeJar** **executeJar**
yarn-application jar包调用并提交 Yarn-application jar 包调用并提交
``` ```
http://127.0.0.1:8888/openapi/executeJar http://127.0.0.1:8888/openapi/executeJar
...@@ -114,9 +114,9 @@ yarn-application jar包调用并提交 ...@@ -114,9 +114,9 @@ yarn-application jar包调用并提交
**executeSql** **executeSql**
executeSql提交执行作业包括local,kubernetes-session,yarn-per-job,standalone,yarn-session executeSql 提交执行作业包括 Local,Kubernetes-session,Yarn-per-job,Standalone,Yarn-session
local: Local:
``` ```
http://127.0.0.1:8888/openapi/executeSql http://127.0.0.1:8888/openapi/executeSql
...@@ -145,7 +145,7 @@ local: ...@@ -145,7 +145,7 @@ local:
} }
``` ```
kubernetes-session: Kubernetes-session:
``` ```
http://127.0.0.1:8888/openapi/executeSql http://127.0.0.1:8888/openapi/executeSql
...@@ -175,7 +175,7 @@ kubernetes-session: ...@@ -175,7 +175,7 @@ kubernetes-session:
} }
``` ```
yarn-per-job: Yarn-per-job:
``` ```
http://127.0.0.1:8888/openapi/executeSql http://127.0.0.1:8888/openapi/executeSql
...@@ -214,7 +214,7 @@ http://127.0.0.1:8888/openapi/executeSql ...@@ -214,7 +214,7 @@ http://127.0.0.1:8888/openapi/executeSql
} }
``` ```
yarn-session: Yarn-session:
``` ```
http://127.0.0.1:8888/openapi/executeSql http://127.0.0.1:8888/openapi/executeSql
...@@ -244,7 +244,7 @@ yarn-session: ...@@ -244,7 +244,7 @@ yarn-session:
} }
``` ```
standalone: Standalone:
``` ```
http://127.0.0.1:8888/openapi/executeSql http://127.0.0.1:8888/openapi/executeSql
...@@ -366,4 +366,4 @@ http://127.0.0.1:8888/openapi/savepointTask ...@@ -366,4 +366,4 @@ http://127.0.0.1:8888/openapi/savepointTask
http://127.0.0.1:8888/openapi/submitTask?id=1 http://127.0.0.1:8888/openapi/submitTask?id=1
``` ```
OpenAPI包括元数据、数据开发、数据集成、运维中心、数据质量、数据服务等。其中数据开发已经开发完成,其他根据版本发布会逐步实现。如果您在数据开发过程中需要使用Dinky OpenAPI,使用方式请参见示例。 OpenAPI 包括元数据、数据开发、数据集成、运维中心、数据质量、数据服务等。其中数据开发已经开发完成,其他根据版本发布会逐步实现。如果您在数据开发过程中需要使用 Dinky OpenAPI,使用方式请参见示例。
\ No newline at end of file \ No newline at end of file
![Dinky](http://www.aiwenmo.com/dinky/main/dinky.png) ![Dinky](http://www.aiwenmo.com/dinky/docs/zh-CN/architecture/dinky.png)
# 提交代码 # 提交代码
* 首先从远端仓库 *https://github.com/DataLinkDC/dlink.git* fork一份代码到自己的仓库中 * 首先从远端仓库 *https://github.com/DataLinkDC/dlink.git* fork 一份代码到自己的仓库中
* 远端仓库中目前有三个分支: * 远端仓库中目前有三个分支:
......
## 概述 ## 概述
Dinky做为FlinkSQL的实时计算平台目前可以被部署在本地。充分利用了Flink在SQL上计算的能力,为您提供极致的Dinky使用体验。 Dinky 做为 FlinkSQL 的实时计算平台目前可以被部署在本地。充分利用了 Flink 在 SQL 上计算的能力,为您提供极致的 Dinky 使用体验。
- **开源:** 产品提供多个的Flink版本,与开源Flink接口完全兼容,满足您的平滑迁移业务的需求。 - **开源:** 产品提供多个的 Flink 版本,与开源 Flink 接口完全兼容,满足您的平滑迁移业务的需求。
- **免费:** 平台各组件免费使用,您只需部署Dinky,Flink及相关上下游存储系统即可使用Dinky产品。 - **免费:** 平台各组件免费使用,您只需部署 Dinky,Flink 及相关上下游存储系统即可使用 Dinky 产品。
- **易用:** 提供开箱即用的作业开发平台,以及Metric采集、展示、监控和报警的能力。满足分钟级别搭建平台的需求,节省时间。 - **易用:** 提供开箱即用的作业开发平台,以及 Metric 采集、展示、监控和报警的能力。满足分钟级别搭建平台的需求,节省时间。
[Apache Flink](https://github.com/apache/flink)Apache社区的先进开源项目,主攻流计算领域,具备高吞吐,低延时的特点,已经成为了目前流式处理领域的热门引擎。主要应用功能包括流批一体化及湖仓一体化的建设。 [Apache Flink](https://github.com/apache/flink) Apache 社区的先进开源项目,主攻流计算领域,具备高吞吐,低延时的特点,已经成为了目前流式处理领域的热门引擎。主要应用功能包括流批一体化及湖仓一体化的建设。
Dinky做为实时数据中台,当前也支持各种数据源连接。 Dinky做为实时数据中台,当前也支持各种数据源连接。
...@@ -15,7 +15,7 @@ Dinky做为实时数据中台,当前也支持各种数据源连接。 ...@@ -15,7 +15,7 @@ Dinky做为实时数据中台,当前也支持各种数据源连接。
### FlinkSQL上下游系统 ### FlinkSQL上下游系统
FlinkSQL支持丰富的上下游存储,实时计算平台支持支持Flink1.11、Flink1.12、Flink1.13和Flink1.14四个版本,对应的版本支持所有开源的上下游存储详见具体Connector信息,请参见Flink开源社区: Flink SQL 支持丰富的上下游存储,实时计算平台支持支持 Flink 1.11、Flink 1.12、Flink 1.13 和 Flink 1.14 四个版本,对应的版本支持所有开源的上下游存储详见具体Connector信息,请参见Flink开源社区:
- [Flink1.11](https://nightlies.apache.org/flink/flink-docs-release-1.11/dev/table/connectors/) - [Flink1.11](https://nightlies.apache.org/flink/flink-docs-release-1.11/dev/table/connectors/)
...@@ -23,13 +23,13 @@ FlinkSQL支持丰富的上下游存储,实时计算平台支持支持Flink1.11 ...@@ -23,13 +23,13 @@ FlinkSQL支持丰富的上下游存储,实时计算平台支持支持Flink1.11
- [Flink1.13](https://nightlies.apache.org/flink/flink-docs-release-1.13/docs/connectors/table/overview/) - [Flink1.13](https://nightlies.apache.org/flink/flink-docs-release-1.13/docs/connectors/table/overview/)
- [Flink1.14](https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/connectors/table/overview/) - [Flink1.14](https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/connectors/table/overview/)
另外非Flink官网支持的上下游系统详见github: 另外非 Flink 官网支持的上下游系统详见 github:
- [Flink-CDC](https://github.com/ververica/flink-cdc-connectors/releases/) - [Flink-CDC](https://github.com/ververica/flink-cdc-connectors/releases/)
- [Hudi](https://github.com/apache/hudi/releases) - [Hudi](https://github.com/apache/hudi/releases)
- [Iceberg](https://github.com/apache/iceberg/releases) - [Iceberg](https://github.com/apache/iceberg/releases)
- [Doris:](https://github.com/apache/incubator-doris-flink-connector/tags) 目前只支持sink - [Doris:](https://github.com/apache/incubator-doris-flink-connector/tags) 目前只支持 sink
- [Starrocks](https://github.com/StarRocks/flink-connector-starrocks/releases) - [Starrocks](https://github.com/StarRocks/flink-connector-starrocks/releases)
- [ClickHouse]() - [ClickHouse]()
- [Pulsar](https://github.com/streamnative/pulsar-flink/releases) - [Pulsar](https://github.com/streamnative/pulsar-flink/releases)
...@@ -40,37 +40,40 @@ FlinkSQL支持丰富的上下游存储,实时计算平台支持支持Flink1.11 ...@@ -40,37 +40,40 @@ FlinkSQL支持丰富的上下游存储,实时计算平台支持支持Flink1.11
## 管理控制台介绍 ## 管理控制台介绍
Dinky实时数据中台数据开发模块包括数据开发、运维中心、注册中心和系统设置三大模块。 Dinky 实时数据中台数据开发模块包括 **数据开发****运维中心****注册中心****系统设置**大模块。
1.在浏览器输入Dinky地址; 1.在浏览器输入 Dinky 地址;
2.点击登录进入Dinky管理界面控制台; 2.点击登录进入 Dinky 管理界面控制台;
**点击系统设置**
系统设置包括用户管理和Flink设置
![image-20220327001743513](http://www.aiwenmo.com/dinky/dev/docs/image-20220327001743513.png) ### 数据开发
数据开发包括作业管理、作业配置和运维管理等
![data_ops](http://www.aiwenmo.com/dinky/docs/zh-CN/dinky_overview/data_ops.png)
**点击注册中心**
注册中心包括集群管理、Jar管理、数据源管理、报警管理和文档管理
![image-20220327001833051](http://www.aiwenmo.com/dinky/dev/docs/image-20220327001833051.png)
### 运维中心
![devops_center](http://www.aiwenmo.com/dinky/docs/zh-CN/dinky_overview/devops_center.png)
**点击运维中心**
![image-20220327002124659](http://www.aiwenmo.com/dinky/dev/docs/image-20220327002124659.png) ### 注册中心
注册中心包括集群管理、Jar管理、数据源管理、报警管理和文档管理
![register_center](http://www.aiwenmo.com/dinky/docs/zh-CN/dinky_overview/register_center.png)
**点击数据开发**
数据开发包括作业管理、作业配置和运维管理等
![image-20220327002318869](http://www.aiwenmo.com/dinky/dev/docs/image-20220327002318869.png)
### 系统设置
系统设置包括用户管理和Flink设置
![system_settings](http://www.aiwenmo.com/dinky/docs/zh-CN/dinky_overview/system_settings.png)
# Flink CDC和kafka进行多源合并和下游同步更新 # Flink CDC 和 Kafka 进行多源合并和下游同步更新
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
本文主要是针对 Flink SQL 使用 Flink CDC 无法实现多库多表的多源合并问题,以及多源合并后如何对下游 Kafka 同步更新的问题,因为目前 Flink SQL 也只能进行单表 Flink CDC 的作业操作,这会导致数据库 CDC 的连接数过多。 本文主要是针对 Flink SQL 使用 Flink CDC 无法实现多库多表的多源合并问题,以及多源合并后如何对下游 Kafka 同步更新的问题,因为目前 Flink SQL 也只能进行单表 Flink CDC 的作业操作,这会导致数据库 CDC 的连接数过多。
但是 Flink CDC 的 dataStream API 是可以进行多库多表的同步操作的,本文希望利用 Flink CDC 的 dataStream API 进行多源合并后导入一个总线 Kafka,下游只需连接总线 kafka 就可以实现 Flink SQL 的多源合并问题,资源复用。 但是 Flink CDC 的 DataStream API 是可以进行多库多表的同步操作的,本文希望利用 Flink CDC 的 DataStream API 进行多源合并后导入一个总线 Kafka,下游只需连接总线 Kafka 就可以实现 Flink SQL 的多源合并问题,资源复用。
# 环境 # 环境
...@@ -37,9 +37,9 @@ ConnectRecord{topic='mysql_binlog_source.gmall.spu_info', kafkaPartition=null, k ...@@ -37,9 +37,9 @@ ConnectRecord{topic='mysql_binlog_source.gmall.spu_info', kafkaPartition=null, k
可以看到,这种格式的 JSON,传给下游有很大的问题,要实现多源合并和同步更新,我们要解决以下两个问题。 可以看到,这种格式的 JSON,传给下游有很大的问题,要实现多源合并和同步更新,我们要解决以下两个问题。
**①总线Kafka传来的json,无法识别源库和源表来进行具体的表创建操作,因为不是固定的json格式,建表WHIT配置里也无法指定具体的库和表。** **①总线 Kafka 传来的 Json,无法识别源库和源表来进行具体的表创建操作,因为不是固定的 Json 格式,建表 with 配置里也无法指定具体的库和表。**
**②总线Kafka传来的json如何进行CRUD等事件对Kafka流的同步操作,特别是Delete,下游kafka如何感知来更新ChangeLog。** **②总线 Kafka 传来的 Json 如何进行 CRUD 等事件对 Kafka 流的同步操作,特别是 Delete,下游 kafka 如何感知来更新 ChangeLog。**
# 查看文档 # 查看文档
...@@ -58,7 +58,7 @@ ConnectRecord{topic='mysql_binlog_source.gmall.spu_info', kafkaPartition=null, k ...@@ -58,7 +58,7 @@ ConnectRecord{topic='mysql_binlog_source.gmall.spu_info', kafkaPartition=null, k
那这里就已经解决了问题②。 那这里就已经解决了问题②。
剩下问题①,如何解决传来的多库多表进行指定表和库的识别,毕竟建表语句没有进行where的设置参数。 剩下问题①,如何解决传来的多库多表进行指定表和库的识别,毕竟建表语句没有进行 where 的设置参数。
再往下翻文档: 再往下翻文档:
...@@ -94,9 +94,9 @@ select * from Kafka_Table where origin_database='gmall' and origin_table = 'spu_ ...@@ -94,9 +94,9 @@ select * from Kafka_Table where origin_database='gmall' and origin_table = 'spu_
那这样问题②就解决了。 那这样问题②就解决了。
那我们现在就要做两个事情: 那我们现在就要做两个事情:
**①写一个Flink CDC的dataStream项目进行多库多表同步,传给总线Kafka。** **①写一个Flink CDC 的 DataStream 项目进行多库多表同步,传给总线 Kafka。**
**②自定义总线Kafka的json格式。** **②自定义总线 Kafka 的 json 格式。**
# 新建Flink CDC的dataStream项目 # 新建Flink CDC的dataStream项目
......
Dinky数据源遵循SPI,可随意扩展所需要的数据源。数据源扩展可在dlink-metadata模块中进行可插拔式扩展。现已经支持的数据源包括如下: Dinky 数据源遵循 SPI,可随意扩展所需要的数据源。数据源扩展可在 dlink-metadata 模块中进行可插拔式扩展。现已经支持的数据源包括如下:
- MySQL - MySQL
- Oracle - Oracle
...@@ -11,4 +11,4 @@ ...@@ -11,4 +11,4 @@
使用以上数据源,请查阅注册中心[数据源管理](/zh-CN/administrator-guide/registerCenter/datasource_manage.md),配置数据源连接 使用以上数据源,请查阅注册中心[数据源管理](/zh-CN/administrator-guide/registerCenter/datasource_manage.md),配置数据源连接
**说明:** Dinky不在对Starorcks进行额外扩展,Doris和Starorcks底层并无差别,原则上只是功能区分。经社区测试验证,可采用Doris扩展连接Starrocks。 **说明:** Dinky 不在对 Starorcks 进行额外扩展,Doris 和 Starorcks 底层并无差别,原则上只是功能区分。经社区测试验证,可采用 Doris 扩展连接 Starrocks。
\ No newline at end of file \ No newline at end of file
## 前言 ## 前言
最近有很多小伙伴问,dlink 如何连接 Hive 进行数据开发? 最近有很多小伙伴问,Dlinky 如何连接 Hive 进行数据开发?
关于 dlink 连接 Hive 的步骤同 Flink 的 `sql-client ` ,只不过它没有默认加载的配置文件。下文将详细讲述对 Hive 操作的全过程。 关于 Dlinky 连接 Hive 的步骤同 Flink 的 `sql-client ` ,只不过它没有默认加载的配置文件。下文将详细讲述对 Hive 操作的全过程。
## 准备工作 ## 准备工作
...@@ -11,8 +11,8 @@ ...@@ -11,8 +11,8 @@
我们先来梳理下本教程的各个组件版本: 我们先来梳理下本教程的各个组件版本:
| 组件 | 版本 | | 组件 | 版本 |
| :----: | :----: | |:------:| :----: |
| Dlink | 0.3.2 | | Dlinky | 0.3.2 |
| Flink | 1.12.4 | | Flink | 1.12.4 |
| Hadoop | 2.7.7 | | Hadoop | 2.7.7 |
| Hive | 2.3.6 | | Hive | 2.3.6 |
...@@ -21,10 +21,10 @@ ...@@ -21,10 +21,10 @@
再来梳理下本教程的各个插件版本: 再来梳理下本教程的各个插件版本:
| 所属组件 | 插件 | 版本 | | 所属组件 | 插件 | 版本 |
| :-----------: | :------------------------: | :-------------------: | |:--------------:| :------------------------: | :-------------------: |
| Dlink | dlink-client | 1.12 | | Dlinky | dlink-client | 1.12 |
| Dlink & Flink | flink-sql-connector-hive | 2.3.6_2.11-1.12.3 | | Dlinky & Flink | flink-sql-connector-hive | 2.3.6_2.11-1.12.3 |
| Dlink & Flink | flink-shaded-hadoop-3-uber | 3.1.1.7.2.8.0-224-9.0 | | Dlinky & Flink | flink-shaded-hadoop-3-uber | 3.1.1.7.2.8.0-224-9.0 |
## 部署扩展 ## 部署扩展
...@@ -45,7 +45,7 @@ USE CATALOG myhive; ...@@ -45,7 +45,7 @@ USE CATALOG myhive;
select * from htest select * from htest
``` ```
在 Dlink 编辑器中输入以上 sql ,创建 Hive Catalog,并查询一张表。 在 Dlinky 编辑器中输入以上 sql ,创建 Hive Catalog,并查询一张表。
其中,`hive-conf-dir` 需要指定 `hive-site.xml` 的路径,其他同 Flink 官方解释。 其中,`hive-conf-dir` 需要指定 `hive-site.xml` 的路径,其他同 Flink 官方解释。
......
...@@ -6,4 +6,8 @@ QQ社区群:**543709668**,申请备注 “ Dinky ”,不写不批 ...@@ -6,4 +6,8 @@ QQ社区群:**543709668**,申请备注 “ Dinky ”,不写不批
微信社区群(推荐):添加微信号 wenmo_ai 邀请进群,申请备注 “ Dinky + 企业名 + 职位”,不写不批 微信社区群(推荐):添加微信号 wenmo_ai 邀请进群,申请备注 “ Dinky + 企业名 + 职位”,不写不批
公众号(最新消息获取建议关注):[DataLink数据中台](https://mmbiz.qpic.cn/mmbiz_jpg/dyicwnSlTFTp6w4PuJruFaLV6uShCJDkzqwtnbQJrQ90yKDuuIC8tyMU5DK69XZibibx7EPPBRQ3ic81se5UQYs21g/0?wx_fmt=jpeg) **公众号(最新消息获取建议关注):**
\ No newline at end of file - **微信搜索公众号:** `DataLink数据中台`
- **扫码关注公众号:** 扫下图二维码,关注公众号
![DataLink数据中台](http://www.aiwenmo.com/dinky/docs/zh-CN/others/comminicate/datalink.jpg)
\ No newline at end of file
1.任务生命周期管理 * [ ] 多租户及命名空间
2.作业监控及运维 * [ ] 统一元数据管理
* [ ] 全局血缘与影响分析
3.流作业自动恢复 * [ ] Flink 元数据持久化
* [ ] 多版本 Flink-Client Server
4.作业日志查看 * [ ] 整库千表同步
5.钉钉报警和推送
\ No newline at end of file
...@@ -12,4 +12,4 @@ ...@@ -12,4 +12,4 @@
此外,感谢 [JetBrains](https://www.jetbrains.com/?from=dlink) 提供的免费开源 License 赞助 此外,感谢 [JetBrains](https://www.jetbrains.com/?from=dlink) 提供的免费开源 License 赞助
[![JetBrains](https://github.com/DataLinkDC/dlink/raw/main/dlink-doc/images/main/jetbrains.svg)](https://www.jetbrains.com/?from=dlink) [![JetBrains](http://www.aiwenmo.com/dinky/docs/zh-CN/others/thanks/jetbrains.svg)](https://www.jetbrains.com/?from=dlink)
\ No newline at end of file \ No newline at end of file
...@@ -3,7 +3,9 @@ ...@@ -3,7 +3,9 @@
### 注册 Session 集群 ### 注册 Session 集群
![image-20211128225423360](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6iaAIees3BsUONXbIocdRUI0WWVSzibPpltibBbMmWgfWJ0AklUlPF9Ugw/0?wx_fmt=png) ![register_session_cluster](http://www.aiwenmo.com/dinky/docs/zh-CN/practice/yarnsubmit/register_session_cluster.png)
### 创建 Session 集群
进入集群中心进行远程集群的注册。点击新建按钮配置远程集群的参数。图中示例配置了一个 Flink on Yarn 的高可用集群,其中 JobManager HA 地址需要填写集群中所有可能被作为 JobManager 的 RestAPI 地址,多个地址间使用英文逗号分隔。表单提交时可能需要较长时间的等待,因为 dlink 正在努力的计算当前活跃的 JobManager 地址。 进入集群中心进行远程集群的注册。点击新建按钮配置远程集群的参数。图中示例配置了一个 Flink on Yarn 的高可用集群,其中 JobManager HA 地址需要填写集群中所有可能被作为 JobManager 的 RestAPI 地址,多个地址间使用英文逗号分隔。表单提交时可能需要较长时间的等待,因为 dlink 正在努力的计算当前活跃的 JobManager 地址。
...@@ -15,7 +17,7 @@ ...@@ -15,7 +17,7 @@
### 执行 Hello World ### 执行 Hello World
万物都具有 Hello World 的第一步,当然 dlink 也是具有的。我们选取了基于 datagen 的流查询作为第一行 Flink Sql。具体如下: 万物都具有 Hello World 的第一步,当然 Dlinky 也是具有的。我们选取了基于 datagen 的流查询作为第一行 Flink Sql。具体如下:
```sql ```sql
CREATE TABLE Orders ( CREATE TABLE Orders (
...@@ -32,15 +34,15 @@ select order_number,price,order_time from Orders ...@@ -32,15 +34,15 @@ select order_number,price,order_time from Orders
该例子使用到了 datagen,需要在 dlink 的 plugins 目录下添加 flink-table.jar。 该例子使用到了 datagen,需要在 dlink 的 plugins 目录下添加 flink-table.jar。
点击 Flink Sql Studio 进入开发页面: 点击 **数据开发** 进入开发页面:
![image-20211128230416447](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6RuS3kibG0jJnDjoUicX7sN63UN6j7Osg4lWh5SelOw0hp4Vj6icFAuDkA/0?wx_fmt=png) ![data_devops](http://www.aiwenmo.com/dinky/docs/zh-CN/practice/yarnsubmit/data_devops.png)
在中央的编辑器中编辑 Flink Sql。 在中央的编辑器中编辑 Flink Sql。
右边作业配置: 右边作业配置:
1. 执行模式:选中 yarn-session; 1. 执行模式:选中 Yarn-session;
2. Flink 集群:选中上文注册的测试集群; 2. Flink 集群:选中上文注册的测试集群;
3. SavePoint 策略:选中禁用; 3. SavePoint 策略:选中禁用;
4. 按需进行其他配置。 4. 按需进行其他配置。
...@@ -54,13 +56,13 @@ select order_number,price,order_time from Orders ...@@ -54,13 +56,13 @@ select order_number,price,order_time from Orders
### 预览数据 ### 预览数据
![image-20211128231230335](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6leQx4mfqsdwVftlEUXSFWnEzOTJGrCGHUKo98SpIn11WkZquEwwjpg/0?wx_fmt=png) ![data_devops_showdata](http://www.aiwenmo.com/dinky/docs/zh-CN/practice/yarnsubmit/data_devops_showdata.png)
切换到历史选项卡点击刷新可以查看提交进度。切换到结果选项卡,等待片刻点击获取最新数据即可预览 SELECT。 切换到历史选项卡点击刷新可以查看提交进度。切换到结果选项卡,等待片刻点击获取最新数据即可预览 SELECT。
### 停止任务 ### 停止任务
![image-20211128231523703](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6koYZDQqzsawPOCTP64ycdUZlib5oJA9vo9fpX43DNTmibY60ojZv44zQ/0?wx_fmt=png) ![data_devops_showprocess](http://www.aiwenmo.com/dinky/docs/zh-CN/practice/yarnsubmit/data_devops_showprocess.png)
切换到进程选项卡,选则对应的集群实例,查询当前任务,可执行停止操作。 切换到进程选项卡,选则对应的集群实例,查询当前任务,可执行停止操作。
...@@ -70,7 +72,7 @@ select order_number,price,order_time from Orders ...@@ -70,7 +72,7 @@ select order_number,price,order_time from Orders
进入集群中心——集群配置,注册配置。 进入集群中心——集群配置,注册配置。
![image-20211128231914983](https://mmbiz.qpic.cn/mmbiz_png/dyicwnSlTFTqSas1xKRbibnZdGY1iagC3X6Vcw98k4yfgR2dSo3BUhxdtpRdd8A7NLyXkZhFibhiciarp9DTY415UehQ/0?wx_fmt=png) ![create_cluster_settiong](http://www.aiwenmo.com/dinky/docs/zh-CN/practice/yarnsubmit/create_cluster_settiong.png)
1. Hadoop 配置文件路径:指定配置文件路径(末尾无/),需要包含以下文件:core-site.xml,hdfs-site.xml,yarn-site.xml; 1. Hadoop 配置文件路径:指定配置文件路径(末尾无/),需要包含以下文件:core-site.xml,hdfs-site.xml,yarn-site.xml;
2. Flink 配置 lib 路径:指定 lib 的 hdfs 路径(末尾无/),需要包含 Flink 运行时的所有依赖,即 flink 的 lib 目录下的所有 jar; 2. Flink 配置 lib 路径:指定 lib 的 hdfs 路径(末尾无/),需要包含 Flink 运行时的所有依赖,即 flink 的 lib 目录下的所有 jar;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
### 发行说明 ### 发行说明
dinky 版本的[发行说明](/zh-CN/release_notes/dinky-0.6.1.md) Dinky 版本的[发行说明](/zh-CN/release_notes/dinky-0.6.1.md)
### 当前稳定版本 0.6.1 ### 当前稳定版本 0.6.1
......
...@@ -9,6 +9,8 @@ Dinky 0.6.1 是一个 Bug 修复版本。 ...@@ -9,6 +9,8 @@ Dinky 0.6.1 是一个 Bug 修复版本。
- 新增 savepointTask 的 Open API - 新增 savepointTask 的 Open API
- 新增 WeChat WebHook 报警方式 - 新增 WeChat WebHook 报警方式
- 新增 数据开发全屏的退出按钮 - 新增 数据开发全屏的退出按钮
- 新增 飞书 WebHook 报警方式
- 新增 邮箱 报警方式
## 修复和优化 ## 修复和优化
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment