Commit 23e544d1 authored by wenmo's avatar wenmo

update 0.6.0 markdown

parent 05a0f6f5
<font size=7>English|[简体中文](README.zh-CN.md)</font>
# Dinky # Dinky
Dinky is a visual, lightweight and interactive Studio based on Apache Flink,You can develop, complete, verify, execute, and preview FlinkSQL online, and support all official Flink syntax and its enhanced syntax.In addition, operation and maintenance operations such as submitting, stopping, and saving points can be performed on multiple Flink cluster instances at the same time.
Learn more about Dinky at http://www.dlink.top [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)
[![Total Lines](https://tokei.rs/b1/github/DataLinkDC/dlink?category=lines)](https://github.com/DataLinkDC/dlink)
[![CN doc](https://img.shields.io/badge/文档-中文版-blue.svg)](README_zh_CN.md)
[![EN doc](https://img.shields.io/badge/document-English-blue.svg)](README.md)
[![Stargazers over time](https://starchart.cc/DataLinkDC/dlink.svg)](https://starchart.cc/DataLinkDC/dlink)
## 简介
实时即未来,Dlink 为 Apache Flink 而生,让 Flink SQL 纵享丝滑,并致力于实时计算平台建设。
Dinky 基于 Apache Flink 实现 Dlink ,增强 Flink 的应用与体验,探索流式数仓。即站在巨人肩膀上创新与实践,Dinky 在未来批流一体的发展趋势下潜力无限。
最后,Dinky 的发展皆归功于 Apache Flink 等其他优秀的开源项目的指导与成果。
## 特点
一个基于 `Apache Flink` 二次开发且 `易扩展``一站式` 开发运维 `FlinkSQL``SQL` 的实时计算平台。致力于解决 `实时``离线` 数据开发、数仓建设流程中大量复杂的 `数据口径`,使 `实时、准实时、离线一体`的数据开发平台在数据治理流程中`开箱即用`
其主要目标如下:
- 可视化交互式 FlinkSQL 和 SQL 的数据开发平台:自动提示补全、语法高亮、调试执行、语法校验、语句美化、全局变量等
- 支持全面的多版本的 FlinkSQL 作业提交方式:Local、Standalone、Yarn Session、Yarn Per-Job、Kubernetes Session、Kubernetes Application
- 支持 Apache Flink 所有的 Connector、UDF、CDC等
- 支持 FlinkSQL 语法增强:兼容 Apache Flink SQL、表值聚合函数、全局变量、CDC多源合并、执行环境、语句合并、共享会话等
- 支持易扩展的 SQL 作业提交方式:ClickHouse、Doris、Hive、Mysql、Oracle、Phoenix、PostgreSql、SqlServer 等
- 支持实时调试预览 Table 和 ChangeLog 数据及图形展示
- 支持语法逻辑检查、作业执行计划、字段级血缘分析等
- 支持 Flink 元数据、数据源元数据查询及管理
- 支持实时任务运维:作业上线下线、作业信息、集群信息、作业快照、异常信息、作业日志、数据地图、即席查询、历史版本、报警记录等
- 支持作为多版本 FlinkSQL Server 的能力以及 OpenApi
- 支持易扩展的实时作业报警及报警组:钉钉、微信企业号等
- 支持完全托管的 SavePoint 启动机制:最近一次、最早一次、指定一次等
- 支持多种资源管理:集群实例、集群配置、Jar、数据源、报警组、报警实例、文档、用户、系统配置等
- 更多隐藏功能等待小伙伴们探索
## 原理
![dinky_principle](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/main/dinky_principle.png)
## 精彩瞬间
> FlinkSQL Studio
![flinksqlstudio](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/flinksqlstudio.png)
> 实时调试预览
![selectpreview](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/selectpreview.png)
> 语法和逻辑检查
![checksql](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/checksql.png)
> JobPlan
![jobplan](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/jobplan.png)
> 字段级血缘分析
![lineage](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/lineage.png)
> BI 展示
![charts](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/charts.png)
> 元数据查询
![metadata](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/metadata.png)
> 实时任务监控
![monitor](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/monitor.png)
> 实时作业信息
![jobinfo](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/jobinfo.png)
> 数据地图
![datamap](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/datamap.png)
> 数据源注册
![datasource](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/060/datasource.png)
## 功能
详见 [功能](https://github.com/DataLinkDC/dlink/blob/dev/docs/zh-CN/feature.md)
## 近期计划
- 多租户及命名空间
- 全局血缘与影响分析
- 统一元数据管理
- Flink 元数据持久化
- 多版本 Flink-Client Server
- 整库千表同步
## 参与贡献
欢迎您为社区贡献自己的力量,共建共赢,贡献流程请参考: [[参与贡献]()]
## 如何部署
详见 [编译](https://github.com/DataLinkDC/dlink/blob/dev/docs/zh-CN/quick_start/build.md)[安装](https://github.com/DataLinkDC/dlink/blob/dev/docs/zh-CN/quick_start/deploy.md)
## 如何升级到最新
执行 sql 目录下的 dlink_history.sql 中的部分升级语句,依据是通过版本号与日期来判断从何处开始执行,请不要直接执行全部 sql。
## 感谢
站在巨人的肩膀上,Dinky 才得以诞生。对此我们对使用的所有开源软件及其社区表示衷心的感谢!我们也希望自己不仅是开源的受益者,也能成为开源的贡献者,也希望对开源有同样热情和信念的伙伴加入进来,一起为开源献出一份力!致谢列表如下:
## Main features
## Compile
See [Compilation](https://github.com/DataLinkDC/dlink/blob/dev/docs/zh-CN/quick_start/build.md)
## install
See [install](https://github.com/DataLinkDC/dlink/blob/dev/docs/zh-CN/quick_start/deploy.md)
## Technology
[Apache Flink](https://github.com/apache/flink) [Apache Flink](https://github.com/apache/flink)
[Mybatis Plus](https://github.com/baomidou/mybatis-plus) [Apache Dolphinscheduler](https://github.com/apache/dolphinscheduler)
[ant-design-pro](https://github.com/ant-design/ant-design-pro) [Ant-Design-Pro](https://github.com/ant-design/ant-design-pro)
[Mybatis Plus](https://github.com/baomidou/mybatis-plus)
[Monaco Editor](https://github.com/Microsoft/monaco-editor) [Monaco Editor](https://github.com/Microsoft/monaco-editor)
[SpringBoot]() [SpringBoot]()
## License 感谢 [JetBrains](https://www.jetbrains.com/?from=dlink) 提供的免费开源 License 赞助。
## thanks
Thanks to [JetBrains](https://www.jetbrains.com/?from=dlink) for sponsoring a free open source license [![JetBrains](https://raw.githubusercontent.com/DataLinkDC/dlink/main/dlink-doc/images/main/jetbrains.svg)](https://www.jetbrains.com/?from=dlink)
## 获得帮助
[![JetBrains](https://gitee.com/DataLinkDC/dlink/raw/main/dlink-doc/images/main/jetbrains.svg)](https://www.jetbrains.com/?from=dlink) 1.提交 issue
## recent plan 2.进入微信用户社区群(推荐,添加微信号 wenmo_ai 邀请进群)和QQ用户社区群(**543709668**)交流,申请备注 “ Dinky + 企业名 + 职位”,不写不批
1.Task Lifecycle Management 3.关注微信公众号获取相关内容的文章(最新消息获取建议关注):[DataLink数据中台](https://mmbiz.qpic.cn/mmbiz_jpg/dyicwnSlTFTp6w4PuJruFaLV6uShCJDkzqwtnbQJrQ90yKDuuIC8tyMU5DK69XZibibx7EPPBRQ3ic81se5UQYs21g/0?wx_fmt=jpeg)
2.Job monitoring and operation and maintenance 4.关注 bilibili UP 主(是文末呀)获取最新视频教学
3.Streaming Job Automatic Recovery 5.访问 [GithubPages](https://datalinkdc.github.io/dlink/#/)[官网](http://www.dlink.top/#/) 网址,阅读最新文档手册
4.Job log view ## 版权
5.Dingding alarm and push 请参考 [LICENSE](https://github.com/DataLinkDC/dlink/blob/main/LICENSE) 文件。
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* [master](/zh-CN/introduce.md) * [master](/zh-CN/introduce.md)
* [下载](/zh-CN/quick_start/download.md) * [下载](/zh-CN/quick_start/download.md)
* 开发者 * 开发者
* [如何贡献](/zh-CN/developer-guide/how_contribute.md) * [参与贡献](/zh-CN/developer-guide/how_contribute.md)
* [本地调试](/zh-CN/developer-guide/local_debug.md) * [本地调试](/zh-CN/developer-guide/local_debug.md)
* [远程调试](/zh-CN/developer-guide/remote_debug.md) * [远程调试](/zh-CN/developer-guide/remote_debug.md)
* 用户案例 * 用户案例
......
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
- [DolphinScheduler集成](/zh-CN/extend/dolphinscheduler.md) - [DolphinScheduler集成](/zh-CN/extend/dolphinscheduler.md)
- [DataSphereStudio集成](/zh-CN/extend/dataspherestudio.md) - [DataSphereStudio集成](/zh-CN/extend/dataspherestudio.md)
- 开发者指南 - 开发者指南
- [如何贡献](/zh-CN/developer-guide/how_contribute.md) - [参与贡献](/zh-CN/developer-guide/how_contribute.md)
- [本地调试](/zh-CN/developer-guide/local_debug.md) - [本地调试](/zh-CN/developer-guide/local_debug.md)
- [远程调试](/zh-CN/developer-guide/remote_debug.md) - [远程调试](/zh-CN/developer-guide/remote_debug.md)
- 常见问题 - 常见问题
......
# 如何贡献 ## 如何贡献
​ Dinky0.6基本功能已经全部开发完成,已经达到生产可用级别。为了Dinky社区生态更加完善,社区希望有更多的人参与进来。不管是小白还是大佬,Dinky社区欢迎你的加入,未来共同建设Dinky生态体系。 首先非常感谢大家选择和使用 Dinky & Apache Flink,真诚地欢迎大家加入 Dinky 社区与 Apache Flink 中文社区,融入开源世界,打造新一代实时计算框架与平台,共建共赢!
​ Dinky目前围绕Flink已经初步建设完成,其他数据源也在不断扩展中,当前支持的MySQL,Doris等数据库,更多数据源支持请查阅[扩展数据源](/zh-CN/extend/datasource.md)。后续还会有更多的功能,如数据集成,数据治理等。 我们鼓励任何形式的参与社区,如:
那对于参与进来的伙伴如何贡献呢?那么贡献的方式有如下3种方式: - 将遇到的问题通过 github 上 [issue](https://github.com/DataLinkDC/dlink/issues) 的形式反馈出来
- 回答别人遇到的 [issue](https://github.com/DataLinkDC/dlink/issues) 问题
- 讨论新 Feature 的实现方案
- 帮助完善文档及官网
- 帮助项目增加测试用例
- 为代码添加注释
- 为代码添加国际化
- 提交修复 Bug 或者 Feature 的 PR
- 发表应用案例实践、扩展组件分享或者与 Flink SQL 相关的技术文章
- 帮助推广 Dinky,基于 Dinky 实践参与其他社区文章发表、技术大会或者 meetup 的分享等
- 提供或赞助云服务器资源搭建云 Dinky 学习环境
- 代码贡献; 欢迎加入贡献的队伍,加入开源从提交第一个 PR 开始
- 文档类贡献;
- 问题解答;
为了方便更多人参与进社区,不管你是代码贡献者还是文档贡献者,Dinky社区方便大家开发,准备了文档贡献和代码贡献的开发者指南 - 比如添加代码注释或找到带有 ”easy to fix” 标记或一些非常简单的 issue(拼写错误等)等等,先通过第一个简单的 PR 熟悉提交流程
## 文档贡献 注:贡献不仅仅限于 PR,对促进项目发展的都是贡献
首先要下载[Dinky源码](https://github.com/DataLinkDC/dlink/tree/dev),下载完成后,需要安装nodejs和npm。详细安装步骤可以查阅本地调试。由于Dinky文档是有[docsify](https://docsify.js.org/#/zh-cn/quickstart)维护。因此需要在dinky根目录执行如下命令,在本地方可启动: 相信参与 Dinky,一定会让您从开源中受益匪浅!
``` ## 参与文档贡献
#推荐全局安装 docsify-cli 工具
首先要下载 [Dinky源码](https://github.com/DataLinkDC/dlink/tree/dev) ,下载完成后,需要安装nodejs和npm。详细安装步骤可以查阅本地调试。由于Dinky文档是有 [docsify](https://docsify.js.org/#/zh-cn/quickstart) 维护。因此需要在dinky根目录执行如下命令,在本地方可启动:
```shell
# 推荐全局安装 docsify-cli 工具
npm i docsify-cli -g npm i docsify-cli -g
#运行 docsify serve 启动一个本地服务器 # 运行 docsify serve 启动一个本地服务器
docsify serve docs docsify serve docs
``` ```
可以方便地实时预览效果。默认访问地址 [http://localhost:3000](http://localhost:3000/) 可以方便地实时预览效果。默认访问地址 [http://localhost:3000](http://localhost:3000/)
## 代码贡献 ## 参与代码贡献
调试请查阅 [本地调试](/zh-CN/developer-guide/local_debug.md)[远程调试](/zh-CN/developer-guide/remote_debug.md)
贡献参考[参与贡献 Issue 需知](),[参与贡献 Pull Request 需知](),[参与贡献 CommitMessage 需知]()
## 如何领取 Issue,提交 Pull Request
请查阅[本地调试](/zh-CN/developer-guide/local_debug.md)[远程调试](/zh-CN/developer-guide/remote_debug.md) 如果你想实现某个 Feature 或者修复某个 Bug。请参考以下内容:
## 开发者须知 - 所有的 Bug 与新 Feature 建议使用 Issues Page 进行管理。
- 如果想要开发实现某个 Feature 功能,请先回复该功能所关联的 Issue,表明你当前正在这个 Issue 上工作。 并在回复的时候为自己设置一个最后期限,并添加到回复内容中。
- 你应该新建一个分支来开始你的工作,分支的名字参考[参与贡献 Pull Request 需知]()。比如,你想完成 feature 功能并提交了 Issue demo,那么你的 branch 名字应为 feature-demo。 功能名称可与导师讨论后确定。
- 完成后,发送一个 Pull Request 到 Dinky 的 dev 分支,提交过程具体请参考下面《[提交代码流程]()》。
开发不同的代码需要不同的分支 如果是想提交 Pull Request 完成某一个 Feature 或者修复某个 Bug,这里都建议大家从小处做起,完成一个小功能就提交一次,每次别改动太多文件,改动文件太多也会给 Reviewer 造成很大的心理压力,建议通过多次 Pull Request 的方式完成。
- 如果要基于二进制包进行开发,需要切换到对应的分支代码,如0.5.1; 注意:本文档参考了《 [DolphinScheduler Contribute](https://dolphinscheduler.apache.org/zh-cn/community/development/contribute.html) 》,非常感谢 DolphinScheduler 社区的支持。
- 如果想要开发新代码,切换到dev分支即可;
This diff is collapsed.
## Dinky介绍 ## Dinky介绍
实时即未来,Dinky 为 Apache Flink 而生,让 Flink SQL 纵享丝滑,并致力于实时计算平台建设。
Dinky 架构于 Apache Flink,增强 Flink 的应用与体验,探索流式数仓。即站在巨人肩膀上创新与实践,Dinky 在未来批流一体的发展趋势下潜力无限。 实时即未来,Dlink 为 Apache Flink 而生,让 Flink SQL 纵享丝滑,并致力于实时计算平台建设。
Dinky 基于 Apache Flink 实现 Dlink ,增强 Flink 的应用与体验,探索流式数仓。即站在巨人肩膀上创新与实践,Dinky 在未来批流一体的发展趋势下潜力无限。
最后,Dinky 的发展皆归功于 Apache Flink 等其他优秀的开源项目的指导与成果。 最后,Dinky 的发展皆归功于 Apache Flink 等其他优秀的开源项目的指导与成果。
......
...@@ -2,19 +2,20 @@ ...@@ -2,19 +2,20 @@
### 发行说明 ### 发行说明
dinky 版本的[发行说明](/zh-CN/release_notes/dinky-0.5.1.md) dinky 版本的[发行说明](/zh-CN/release_notes/dinky-0.6.0.md)
### 当前稳定版本 0.5.1 ### 当前稳定版本 0.5.1
| 发布版 | 链接 | | | 发布版 | 链接 | |
| ---------- | ------------------------------------------------------------ | ---- | | ---------- |----------------------------------------------------------------------------------------------------------------------| ---- |
| 二进制程序 | [dlink-release-0.5.1.tar.gz](https://github.com/DataLinkDC/dlink/releases/download/0.5.1/dlink-release-0.5.1.tar.gz) | | | 二进制程序 | [dlink-release-0.6.0.tar.gz](https://github.com/DataLinkDC/dlink/releases/download/0.6.0/dlink-release-0.6.0.tar.gz) | |
| source | [Source code (zip)](https://github.com/DataLinkDC/dlink/archive/refs/tags/0.5.1.zip) | | | source | [Source code (zip)](https://github.com/DataLinkDC/dlink/archive/refs/tags/0.6.0.zip) | |
### 旧版本 ### 旧版本
| 发布版 | 二进制程序 | Source | 发行说明 | | 发布版 | 二进制程序 | Source | 发行说明 |
| ------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -------- | |-------|----------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------|---------------------------------------------|
| 0.5.1 | [dlink-release-0.5.1.tar.gz](https://github.com/DataLinkDC/dlink/releases/download/0.5.1/dlink-release-0.5.1.tar.gz) | [Source code (zip)](https://github.com/DataLinkDC/dlink/archive/refs/tags/0.5.1.zip) | [发行说明](/zh-CN/release_notes/dinky-0.5.1.md) |
| 0.5.0 | [dlink-release-0.5.0.tar.gz](https://github.com/DataLinkDC/dlink/releases/download/0.5.0/dlink-release-0.5.0.tar.gz) | [Source code (zip)](https://github.com/DataLinkDC/dlink/archive/refs/tags/0.5.0.zip) | [发行说明](/zh-CN/release_notes/dinky-0.5.0.md) | | 0.5.0 | [dlink-release-0.5.0.tar.gz](https://github.com/DataLinkDC/dlink/releases/download/0.5.0/dlink-release-0.5.0.tar.gz) | [Source code (zip)](https://github.com/DataLinkDC/dlink/archive/refs/tags/0.5.0.zip) | [发行说明](/zh-CN/release_notes/dinky-0.5.0.md) |
| 0.4.0 | [dlink-release-0.4.0.tar.gz](https://github.com/DataLinkDC/dlink/releases/download/0.4.0/dlink-release-0.4.0.tar.gz) | [Source code (zip)](https://github.com/DataLinkDC/dlink/archive/refs/tags/0.4.0.zip) | [发行说明](/zh-CN/release_notes/dinky-0.4.0.md) | | 0.4.0 | [dlink-release-0.4.0.tar.gz](https://github.com/DataLinkDC/dlink/releases/download/0.4.0/dlink-release-0.4.0.tar.gz) | [Source code (zip)](https://github.com/DataLinkDC/dlink/archive/refs/tags/0.4.0.zip) | [发行说明](/zh-CN/release_notes/dinky-0.4.0.md) |
## Dinky发行说明
Dinky 0.6.0 是一个新功能版本,主要包括运维中心。
## 新功能
- 新增作业目录树关键字搜索框
- 新增 F2 全屏开发
- 新增 K8S 集群配置
- 新增 Doris 数据源注册、元数据、查询和执行
- 新增 SqlServer 数据源注册、元数据、查询和执行
- 新增 Oracle 数据源注册、元数据、查询和执行
- 新增 Phoenix 数据源注册、元数据、查询和执行
- 新增 Hive 数据源注册、元数据、查询和执行
- 新增元数据生成 FlinkSQL 和 SQL
- 新增 CDCSOURCE 多源合并任务语法支持
- 新增作业生命周期管理
- 新增 FlinkJar Dialect 的管理
- 新增 Batch 引擎
- 新增数据源的连接信息片段机制自动注入
- 新增用户密码修改
- 新增报警模块(实例和组)
- 新增钉钉报警
- 新增微信企业号报警
- 新增运维中心任务实例功能
- 新增运维中心任务实时监控功能
- 新增运维中心任务监控的 FlinkWebUI、智能停止、SavePoint 等操作
- 新增运维中心任务监控的作业总览
- 新增运维中心任务监控的配置信息
- 新增运维中心任务监控的智能重启和报警推送
- 新增实时自动告警
- 新增 Application 模式自增修正 checkpoint 和 savepoint 存储路径
- 新增作业发布时进行语法校验和逻辑检查
- 新增作业上下线自动提交和停止任务
- 新增作业生命周期与任务实例同步联动
- 新增运维中心的作业实例与历史切换
- 新增运维中心的异常信息实现
- 新增运维中心的 FlinkSQL 实现
- 新增运维中心的报警记录实现
- 新增运维中心血缘分析——字段级
- 新增作业剪切和粘贴
- 新增实时任务监控容错机制
## 修复和优化
- 升级 SpringBoot 至 2.6.3
- 升级 Flink 1.13.5 至 1.13.6
- 优化 sql 美化
- 优化默认启用数据预览等
- 修复前端 state 赋值 bug
- 修复异常预览内容溢出 bug
- 修复数据预览特殊条件下无法获取数据的 bug
- 优化 SQL 编辑器性能
- 修复全屏开发退出后 sql 不同步
- 优化作业配置查看及全屏开发按钮
- 优化异常日志的捕获、反馈与持久化
- 优化元数据数据源的的类型转换和连接管理
- 优化 K8S Application 提交配置
- 优化 PerJob 和 Application 作业的 JID 提交检测
- 修复集群配置参数项为空时无法正常提交 perjob 任务的bug
- 优化语法检测建议的结果提示
- 修复 Oracle 无法正确获取元数据的 bug
- 修复报警组刷新当前页面时无法正常显示下拉报警实例
- 优化当提交作业无法获取 JID 时变为提交失败
- 优化 IDEA 调试时的依赖配置
- 修复用户未登录时后台报错及鉴权问题
- 修复用户逻辑删除 bug
- 修复 kubernetes 集群配置相关显示 bug
- 优化 Studio 血缘分析为字段级
- 修复 Doris 无法获取到列的主键信息
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