docs: 补充hudi command文档
250
README.md
@@ -19,8 +19,17 @@
|
|||||||
* [脚本生成](#脚本生成)
|
* [脚本生成](#脚本生成)
|
||||||
* [启动上传服务](#启动上传服务)
|
* [启动上传服务](#启动上传服务)
|
||||||
* [编译打包项目](#编译打包项目)
|
* [编译打包项目](#编译打包项目)
|
||||||
|
* [启动应用](#启动应用)
|
||||||
* [运维](#运维)
|
* [运维](#运维)
|
||||||
* [命令行](#命令行)
|
* [命令行](#命令行)
|
||||||
|
* [配置操作](#配置操作)
|
||||||
|
* [查看配置信息](#查看配置信息)
|
||||||
|
* [新增配置信息](#新增配置信息)
|
||||||
|
* [批量新增配置信息](#批量新增配置信息)
|
||||||
|
* [任务操作](#任务操作)
|
||||||
|
* [查看同步任务状态](#查看同步任务状态)
|
||||||
|
* [启停同步任务](#启停同步任务)
|
||||||
|
* [批量启停同步任务](#批量启停同步任务)
|
||||||
* [Web](#web)
|
* [Web](#web)
|
||||||
* [概览](#概览)
|
* [概览](#概览)
|
||||||
* [表任务](#表任务)
|
* [表任务](#表任务)
|
||||||
@@ -361,6 +370,32 @@ uploader
|
|||||||
|
|
||||||
将文件服务的url补充到`bin/library.sh`中,执行`bin/build-all.sh`,打包编译全部模块并上传到文件服务。
|
将文件服务的url补充到`bin/library.sh`中,执行`bin/build-all.sh`,打包编译全部模块并上传到文件服务。
|
||||||
|
|
||||||
|
## 启动应用
|
||||||
|
|
||||||
|
在`cloud`路径下有已经生成好的服务启动脚本,`deploy-service`开头的脚本为启动脚本,脚本默认包含更新并启动,保证每次都可以使用最新的jar包启动。
|
||||||
|
|
||||||
|
应用包含多个服务,为了方便及时监控应用启动状态,建议按照如下顺序启动:
|
||||||
|
|
||||||
|
- service-gateway、service-queue
|
||||||
|
- service-web
|
||||||
|
- service-api
|
||||||
|
- 各种query
|
||||||
|
- service-cloud-query
|
||||||
|
- service-flink-query
|
||||||
|
- service-hudi-query
|
||||||
|
- service-info-query
|
||||||
|
- service-pulsar-query
|
||||||
|
- service-yarn-query
|
||||||
|
- service-zookeeper-query
|
||||||
|
- service-launcher-*
|
||||||
|
- service-executor-manager
|
||||||
|
- service-monitor
|
||||||
|
- service-scheduler
|
||||||
|
|
||||||
|
由于scheduler包含定时任务,通常放在最后确认整个项目都没问题,或者同步已经启动并正常运行之后,再启动压缩调度模块。
|
||||||
|
|
||||||
|
可以配合web页面和grafana日志监控保证服务启动正常,通常服务启动完成一个再启动下一个,避免服务启动失败,导致服务间调用雪崩。
|
||||||
|
|
||||||
# 运维
|
# 运维
|
||||||
|
|
||||||
应用提供三部分运维方案:
|
应用提供三部分运维方案:
|
||||||
@@ -371,6 +406,221 @@ uploader
|
|||||||
|
|
||||||
## 命令行
|
## 命令行
|
||||||
|
|
||||||
|
为了避免页面网络不同导致无法运维操作,同时也为了方便运维人员在脚本中直接操作hudi服务,提供了命令行工具用于操作hudi同步任务。
|
||||||
|
|
||||||
|
### 配置操作
|
||||||
|
|
||||||
|
用于增加同步表配置信息,涉及到`tb_app_flink_job_config`和`tb_app_collect_table_info`两张表,由于涉及配置项较多,特别提供命令行工具做基本的配置。
|
||||||
|
|
||||||
|
_但由于开发和运维的脱钩,往往命令行工具的配置类型不能完全满足运维同事组织同步表的模式,具体的表配置,还是由运维同事自行发挥,或者统一开发再进行配置操作。_
|
||||||
|
|
||||||
|
#### 查看配置信息
|
||||||
|
|
||||||
|
其中搜索模式包括`REGEX(正则表达式)`、`CONTAINS(包含)`、`UN_CONTAINS(不包含)`、`EQUALS(全等)`、`UN_EQUALS(不全等)`
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
job-all - 显示 Flink job 配置信息
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
job-all [[--type] type] [[--pattern] string]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--type type
|
||||||
|
搜索模式
|
||||||
|
[Optional, default = CONTAINS]
|
||||||
|
|
||||||
|
--pattern string
|
||||||
|
搜索值 (除了 REGEX 模式, 其余可使用英文逗号分隔多个值)
|
||||||
|
[Optional, default = ]
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 新增配置信息
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
job-add - 新增 Flink job 配置
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
job-add [--type] table-type [--database] string [--database-type] source-type [--schema] string [--table] string [--hdfs] string [--pulsar-address] string
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--type table-type
|
||||||
|
表类型 (BIG 为大表, SMALL 为小表, ACCT 为 ACCT 表)
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--database string
|
||||||
|
数据源
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--database-type source-type
|
||||||
|
数据源类型
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--schema string
|
||||||
|
Scheme
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--table string
|
||||||
|
表名
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--hdfs string
|
||||||
|
HDFS 路径前缀
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--pulsar-address string
|
||||||
|
Pulsar Address
|
||||||
|
[Mandatory]
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 批量新增配置信息
|
||||||
|
|
||||||
|
`source`指向的文件,按行分隔,每行用空格分隔字段,字段内容按「新增配置信息」的字段填写。
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
job-add-batch - 批量新增 Flink job 配置
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
job-add-batch [--source] string
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--source string
|
||||||
|
配置文件路径
|
||||||
|
[Mandatory]
|
||||||
|
```
|
||||||
|
|
||||||
|
### 任务操作
|
||||||
|
|
||||||
|
针对hudi同步任务的操作。
|
||||||
|
|
||||||
|
#### 查看同步任务状态
|
||||||
|
|
||||||
|
默认查询全部任务,也可以通过关键词筛选。
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
yarn-all - 查询表同步任务状态
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
yarn-all [[--pattern] string] [--show-flink-job-id] [--running] [--un-running]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--pattern string
|
||||||
|
搜索值 (包含查询)
|
||||||
|
[Optional, default = ]
|
||||||
|
|
||||||
|
--show-flink-job-id 展示结果列表的 Flink job id
|
||||||
|
[Optional, default = false]
|
||||||
|
|
||||||
|
--running 展示运行的任务
|
||||||
|
[Optional, default = false]
|
||||||
|
|
||||||
|
--un-running 展示非运行的任务
|
||||||
|
[Optional, default = false]
|
||||||
|
```
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
#### 启停同步任务
|
||||||
|
|
||||||
|
`--ignore-check`参数在其他脚本,如定时任务,的时候比较方便,可以跳过二次确认。
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
yarn-run - 启动表同步任务
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
yarn-run [--flink-job-id] long [--ignore-check]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--flink-job-id long
|
||||||
|
Flink job id
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--ignore-check Ignore double check
|
||||||
|
[Optional, default = false]
|
||||||
|
```
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
yarn-run-batch - 批量启动表同步任务
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
yarn-run-batch [--flink-job-ids] long[] [--ignore-check]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--flink-job-ids long[]
|
||||||
|
Flink job id
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--ignore-check Ignore double check
|
||||||
|
[Optional, default = false]
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
yarn-run-un-running - 启动所有未运行的表同步任务
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
yarn-run-un-running [--ignore-check]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--ignore-check Ignore double check
|
||||||
|
[Optional, default = false]
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 批量启停同步任务
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
yarn-kill - 停止表同步任务
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
yarn-kill [--flink-job-id] long [--ignore-check]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--flink-job-id long
|
||||||
|
Flink job id
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--ignore-check Ignore double check
|
||||||
|
[Optional, default = false]
|
||||||
|
```
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
yarn-kill-batch - 批量停止表同步任务
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
yarn-kill-batch [--flink-job-ids] long[] [--ignore-check]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--flink-job-ids long[]
|
||||||
|
Flink job id
|
||||||
|
[Mandatory]
|
||||||
|
|
||||||
|
--ignore-check Ignore double check
|
||||||
|
[Optional, default = false]
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
NAME
|
||||||
|
yarn-kill-running - 停止所有正在运行的表同步任务
|
||||||
|
|
||||||
|
SYNOPSYS
|
||||||
|
yarn-kill-running [--ignore-check]
|
||||||
|
|
||||||
|
OPTIONS
|
||||||
|
--ignore-check Ignore double check
|
||||||
|
[Optional, default = false]
|
||||||
|
```
|
||||||
|
|
||||||
## Web
|
## Web
|
||||||
|
|
||||||
### 概览
|
### 概览
|
||||||
|
|||||||
BIN
assets/hudi_command_yarn_all.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
assets/hudi_command_yarn_kill.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
assets/hudi_command_yarn_run.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 5.0 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 9.8 KiB |