feat: 提交

master
old-tom 2 months ago
parent 5b2cdf7a6c
commit 4e9402dbc4

@ -0,0 +1,14 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
## Drawing
```compressed-json
N4IgLgngDgpiBcIYA8DGBDANgSwCYCd0B3EAGhADcZ8BnbAewDsEAmcm+gV31TkQAswYKDXgB6MQHNsYfpwBGAOlT0AtmIBeNCtlQbs6RmPry6uA4wC0KDDgLFLUTJ2lH8MTDHQ0YNMWHRJMRZFAHZFAFYyJE9VGEYwGgQAbQBdcnQoKABlALA+UEl8PGzsDT5GTkxMch0YIgAhdFQAayKuRlwAYXpMenwEEABiADMx8ZAAX0mgA
```
%%

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

@ -0,0 +1,22 @@
## SpringBoot
```json
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "dcm-dataIntegration",
"request": "launch",
"projectName":"dcm-dataIntegration",
"mainClass": "com.maxvision.platform.Platform",
"args": [
"--spring.profiles.active=dev"
],
"vmArgs": "-Xms1024m -Xmx2048m -XX:MaxMetaspaceSize=512m -Djps.track.ap.dependencies=false -Dspring-boot.run.fork=false"
}
]
}
```

@ -0,0 +1,45 @@
```json
{
//设置内存大小
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx4G -Xms2G -Xlog:disable",
//maven视图:分层
"maven.view": "hierarchical",
//构建失败继续:开启
"java.debug.settings.onBuildFailureProceed": true,
//启动窗口、打开文件夹、保存文件时的自动编译开关
//影响启动速度,如有需要可启动后再手动打开
"java.autobuild.enabled": false,
//debug启动时自动编译:关闭
//如果打开则应用启动前需要编译整个项目耗时1.5-5分钟
//建议手工编译,可提升启动速度
"java.debug.settings.forceBuildBeforeLaunch": false,
//debug自动加载修改后的类
"java.debug.settings.hotCodeReplace": "auto",
//保存时自动编译:开启
//但似乎此参数无效,实操经验是:
//倘若java.autobuild.enabled为true则保存后自动编译
//倘若java.autobuild.enabled为false则保存后不自动编译
"java.compile.onSave": true,
//问题装饰:关闭
"problems.decorations.enabled": false,
//null分析:关闭
"java.compile.nullAnalysis.mode": "disabled",
//未使用导入:忽略
"editor.unusedImports.severity": "ignore",
//未使用变量:隐藏
"editor.showUnused": false,
//自动保存:延迟
"files.autoSave": "afterDelay",
//自动保存延迟时间:1000毫秒
"files.autoSaveDelay": 1000,
//JAVA项目层级展示
"java.dependency.packagePresentation": "hierarchical",
//Peek References窥视试图颜色配置
"workbench.colorCustomizations": {
"peekView.border": "#FF0000", // 边框颜色
"peekViewEditor.background": "#330099", // 代码编辑区背景
"peekViewResult.background": "#3300CC", // 结果列表背景
"peekViewTitle.background": "#FF0000" // 标题背景
}
}
```

@ -0,0 +1,71 @@
这是一个非常典型且常见的问题。当你在 `pom.xml` 中加入了依赖,但 VS Code 却无法给出代码提示时,通常问题出在 **项目同步** 或 **语言服务器状态** 上。
让我们按照一个清晰的排查思路来解决这个问题,请您一步步地进行检查:
### 第 1 步:确认 `pom.xml` 配置无误
首先,我们要确保依赖本身被正确地添加到了 **正确** 的模块中。您的项目是一个多模块multi-module的 Maven 项目,所以这一点至关重要。
1. **检查依赖声明**
请打开您希望使用 `hutool` 的那个具体模块的 `pom.xml` 文件(例如 `dcm-datadev/pom.xml``common-core/pom.xml`),确认其中包含了类似下面的依赖项:
```xml
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.27</version> <!-- 请使用您需要的版本 -->
</dependency>
```
2. **检查 `<scope>` 标签**
请检查这个依赖项下是否有 `<scope>` 标签。
* **无 scope**: 默认是 `compile`,在所有地方(编译、测试、运行)都可用,这是最常见的情况。
* **`<scope>test</scope>`**: 如果是这个,那么 `hutool` 的类和方法将**只在 `src/test/java` 目录下的测试代码中才能被提示和使用**,在 `src/main/java` 下是找不到的。
* **`<scope>provided</scope>`**: 如果是这个,表示该依赖由运行环境(如 Tomcat提供代码中可以提示但打包时不会包含进去。一般情况下 `hutool` 不会用这个 scope。
3. **确认模块**
确保您是在正确模块的 `pom.xml` 中添加的依赖。如果您在父 `pom.xml``<dependencyManagement>` 中定义了版本,那么在子模块中仍然需要声明依赖(但可以不写版本号)。
### 第 2 步:强制 Maven 项目同步
这是最关键的一步。仅仅保存 `pom.xml` 有时可能不够,我们需要确保 VS Code 的 Java 插件已经重新加载了 Maven 的项目模型。
1. **找到 MAVEN 视图**
在 VS Code 左侧的活动栏中,应该有一个 MAVEN 的图标。点击它打开 Maven 项目视图。
2. **刷新项目**
在 MAVEN 视图中,找到您的项目,将鼠标悬停在项目名称上,点击出现的 **刷新图标**(一个环形的箭头)。
这个操作会强制 VS Code 重新解析所有 `pom.xml` 文件,并下载新的依赖项。
### 第 3 步:检查 "JAVA PROJECTS" 视图
这个视图是 VS Code Java 环境的“最终状态”,我们可以通过它来确认 `hutool` 的 JAR 包是否真的被加载了。
1. 在左侧资源管理器下方的面板中,找到并展开 **"JAVA PROJECTS"**。
2. 展开您的项目,然后展开 **"Maven Dependencies"**。
3. **仔细在这个列表中查找**,您应该能看到 `hutool-all-5.8.27.jar` (版本号可能不同) 这样的条目。
* **如果能找到**:说明 JAR 包已加载,问题可能出在语言服务器的缓存上。请直接跳到第 4 步。
* **如果找不到**:说明项目同步没有成功,问题出在第 1 步或第 2 步。请重新检查 `pom.xml` 和刷新操作。
### 第 4 步:清理 Java 语言服务器工作区(终极手段)
如果 JAR 包在 "Maven Dependencies" 中可见,但代码提示依然不工作,这通常是由于 Java 语言服务器的缓存或内部状态出了问题。清理它可以解决大部分疑难杂症。
1. 打开命令面板 (`Cmd + Shift + P`)。
2. 输入 **`Java: Clean Java Language Server Workspace`**。
3. 选择并运行这个命令。
4. VS Code 会在右下角提示它正在清理,并询问是否要重启和删除历史。选择 **"Yes"** 或 **"Reload and Delete"**。
5. VS Code 将会重启 Java 语言服务,这个过程会重新构建整个项目的依赖和索引,可能会花费一两分钟。请耐心等待右下角的状态条显示 Java 项目加载完成。
### 总结检查清单
1. **`pom.xml`**:依赖是否在正确的子模块中?`scope` 是否正确?
2. **Maven 视图**:是否点击了“刷新”按钮强制同步?
3. **JAVA PROJECTS 视图**`Maven Dependencies` 列表里看得到 `hutool` 的 JAR 包吗?
4. **命令面板**:是否运行了 `Java: Clean Java Language Server Workspace` 来清理缓存?
5. **问题面板 (PROBLEMS)**:按 `Cmd + Shift + M` 查看问题面板,有没有关于 Maven 依赖解析失败的错误信息?
请按照以上步骤逐一排查99% 的类似问题都可以通过这个流程解决。如果问题依然存在,请告诉我您进行到哪一步遇到了困难。

@ -0,0 +1,9 @@
![[Pasted image 20250612134929.png]]
![[Pasted image 20250612134940.png]]
![[Pasted image 20250612134949.png]]
![[Pasted image 20250612134959.png]]
![[Pasted image 20250612135006.png]]
![[Pasted image 20250612135015.png]]
![[Pasted image 20250612222359.png]]

@ -0,0 +1,99 @@
## 1.新建gbase分区表
```sql
CREATE TABLE bj_yw_t_crjrydk_1b (
WYBS varchar(32) NOT NULL,
RYLBDM varchar(2) NOT NULL,
XM varchar(50) NOT NULL,
XBDM varchar(1) NOT NULL,
CRBZ varchar(1) NOT NULL,
GJDQDM varchar(3) NOT NULL,
CSRQ varchar(8) NOT NULL,
ZJLBDM varchar(2) NOT NULL,
ZJHM varchar(20) NOT NULL,
QZZLDM varchar(2) NULL,
CRRQ varchar(8) NOT NULL,
CRSJ varchar(6) NOT NULL,
CRRQSJ varchar(14) NOT NULL,
CRKADM varchar(3) NOT NULL,
JTFSDM varchar(1) NOT NULL,
JTGJBS varchar(32) NULL,
QWGJDQDM varchar(3) NULL,
FZD varchar(4) NULL,
CRJSYDM varchar(1) NOT NULL,
CZY varchar(8) NOT NULL,
TDH varchar(4) NOT NULL,
BMDM varchar(6) NOT NULL,
MZDM varchar(2) NULL,
ZZTDBJ varchar(1) NULL,
QZH varchar(20) NULL,
PJNR varchar(1) NULL,
TLQ varchar(3) NULL,
BGCZY varchar(6) NULL,
BGCZSJ varchar(14) NULL,
HTBLBJ varchar(1) NULL,
PRIMARY KEY (WYBS)
)fragment by round robin
in datadbs1,datadbs2,datadbs3,datadbs4
```
使用轮训分片,将数据分布在 datadbs1,datadbs2,datadbs3,datadbs4 物理表空间中
```sql
fragment by round robin
in datadbs1,datadbs2,datadbs3,datadbs4
```
datadbs1 是默认datadbs2,datadbs3,datadbs4手动创建
```shell
# root用户
# 进入目录
cd /home/gbase8s_install/gbaseserver_dbs/
# 创建 5GB 大小的文件 (5120 * 1MB = 5GB)
dd if=/dev/zero of=datadbs2 bs=1M count=5120
dd if=/dev/zero of=datadbs3 bs=1M count=5120
dd if=/dev/zero of=datadbs4 bs=1M count=5120
# 设置权限
chown gbasedbt:gbasedbt datadbs2 datadbs3 datadbs4
chmod 660 datadbs2 datadbs3 datadbs4
# 切换gbasedbt用户绑定表空间
# onspaces -c -d <dbspace> -p <物理文件路径> -o <偏移量> -s <大小(KB)> -k <页大小(KB)>
# 5GB = 5242880 K , 16因为 datadbs1 的页大小是 16384 字节 = 16KB所以我们用 -k 16
onspaces -c -d datadbs2 -p /home/gbase8s_install/gbaseserver_dbs/datadbs2 -o 0 -s 5242880 -k 16
onspaces -c -d datadbs3 -p /home/gbase8s_install/gbaseserver_dbs/datadbs3 -o 0 -s 5242880 -k 16
onspaces -c -d datadbs4 -p /home/gbase8s_install/gbaseserver_dbs/datadbs4 -o 0 -s 5242880 -k 16
# 验证
onstat -d
```
## 2.seatunnel 配置及命令
```json
env {
parallelism = 1
job.mode = "BATCH"
}
source{
Doris {
fenodes = "172.100.40.193:8035"
query-port = 9035
username = "admin"
password = "SU9i4T4Es3DLblbs)-"
database = "ods"
table = "bj_yw_t_crjrydk_1b"
}
}
sink {
jdbc {
url = "jdbc:gbasedbt-sqli://172.100.61.61:9088/gbasedb:GBASEDBTSERVER=gbaseserver;DB_LOCALE=zh_CN.utf8;CLIENT_LOCALE=zh_CN.utf8;NEWCODESET=UTF8,utf8,57372"
# jdbc驱动
driver = "com.gbasedbt.jdbc.Driver"
user = "gbasedbt"
password = "maxvision@999"
database = "gbasedb"
table = "bj_yw_t_crjrydk_1b"
query = "INSERT INTO bj_yw_t_crjrydk_1b (wybs, rylbdm, xm, xbdm, crbz, gjdqdm, csrq, zjlbdm, zjhm, qzzldm, crrq, crsj, crrqsj, crkadm, jtfsdm, jtgjbs, qwgjdqdm, fzd, crjsydm, czy, tdh, bmdm, mzdm, zztdbj, qzh, pjnr, tlq, bgczy, bgczsj, htblbj) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
primary_keys = ["WYBS"]
}
}
```
```shell
cd /home/maxvision/install/seatunnel/bin && ./seatunnel.sh --config /home/maxvision/install/seatunnel/example/doris2gbase-1b.conf -n doris2gbase1b --async
```

@ -1,5 +1,5 @@
## 一、源码编译
1. 从github 下载源码包并用idea 打开注意这里不能使用提供的github release因为打出来的包版本有问题必须用源码包。另外官方提供的安装包不提供connector需要单独下载
1. 从github 下载源码包并用 idea 打开注意这里不能使用提供的github release因为打出来的包版本有问题必须用源码包。另外官方提供的安装包不提供connector需要单独下载
![[Pasted image 20250609141740.png]]
![[Pasted image 20250609141858.png]]
@ -7,7 +7,7 @@
2. 检查 jdk 版本查看最外层pom.xml 文件java.version 标签
![[Pasted image 20250609142057.png]]
3. 设置jdk版本与pom文件要求版本相同
4. 在代码目录下执行命令,过程中如果有保存自行解决,大概率是环境问题
4. 在代码目录下执行命令,过程中如果报错自行解决,大概率是环境问题
```shell
# 安装依赖
./mvnw install -Dmaven.test.skip
@ -18,9 +18,9 @@ mvn clean package -pl seatunnel-dist -am -Dmaven.test.skip=true
![[Pasted image 20250609142309.png]]
## 二、安装部署
因为使用源码编译connector也在其中不用再次从网上下载。
对于升级来说只需要复制lib和config目录即可。
因为使用源码编译connector也在其中不用再次从网上下载。对于升级来说只需要复制上一版本的lib和config目录到新版本即可。
将tar包上传至服务器目录例如 /opt/datasophon
![[Pasted image 20250609143818.png]]
下面给出参考命令,自行替换路径及版本号
1. 替换lib
```shell
@ -30,10 +30,10 @@ tar -zxvf apache-seatunnel-2.3.11-bin.tar.gz && cd /opt/datasophon/seatunnel/lib
```shell
cd /opt/datasophon/seatunnel/config && zip -r config.zip ./* && mv config.zip /opt/datasophon/apache-seatunnel-2.3.11 && unzip -o /opt/datasophon/apache-seatunnel-2.3.11/config.zip -d /opt/datasophon/apache-seatunnel-2.3.11/config && rm -rf /opt/datasophon/apache-seatunnel-2.3.11/config.zip && cd /opt/datasophon/apache-seatunnel-2.3.11
```
替换完成后记得检查配置和lib是否已存在
替换完成后记得检查配置和lib是否正确
启动节点
1. 停止旧服务,自行替换目录及版本号
1. 停止旧服务并替换(自行替换目录及版本号)
```shell
cd /opt/datasophon/seatunnel/bin && ./stop-seatunnel-cluster.sh && cd /opt/datasophon && mv seatunnel-2.3.8 seatunnel-2.3.8_bak && cd /opt/datasophon && mv apache-seatunnel-2.3.11 seatunnel-2.3.8
```

@ -15,6 +15,8 @@ http://172.31.51.150:7001/access/login
系统访问地址(新)
[http://172.100.40.155:7001/access/login](http://172.100.40.155:7001/access/login) admin/1234abcd
接口文档地址
http://172.100.40.155:8080/dataintegration/xdoc/index.html
本机获取token
[10.2.0.2:8096/dataintegration/auth/accessToken](http://10.2.0.2:8096/dataintegration/auth/accessToken)

@ -22,4 +22,4 @@ https://183.224.169.105/#/login
su gauss
# 进入安装目录执行restart 可以换成start 或者 stop /opengauss/gaussdb/data/single_node是文件目录根据实际情况而定
cd /opengauss/gaussdb/bin && gs_ctl restart -D /opengauss/gaussdb/data/single_node
```
```

Loading…
Cancel
Save