flinkX快速启动

2023-11-11 21:58
文章标签 启动 快速 flinkx

本文主要是介绍flinkX快速启动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


在flinkx启动之前,请提前安装git,maven,mysql(已同步mysql为例)。 windows安装提前安装好jdk和maven

下载代码

1.使用git工具把项目clone到本地,或者直接下载flinkx-1.8.5.zip

git clone https://github.com/DTStack/flinkx.git cd flinkx

2.直接下载源码
wget https://github.com/DTStack/flinkx/archive/1.8.5.zip unzip flinkx-1.8.5.zip cd flink-1.8.5
编译插件
mvn clean package -DskipTests
编译会遇到文件权限不够的问题,提前给flinkx文件夹授权
编译时间需要几十分钟,耐心等待
编译完成后,会多出一个plugins目录(flinkx1.10版本后为syncplugins),这个目录存放这FlinkX的插件包
** 编译好的文件夹拷贝到其他服务器一样可以使用

准备任务

启动以mysql同步到mysql做实例。先创建两张表,往其中一个表内添加些数据

create table emp(id   int(10)     null,name varchar(10) null
);
insert into emp values(1,'aaa'),(2,'bbb');create table emp2(id   int(10)     null,name varchar(10) null
);

首先准备要运行的任务json配置文件;
在flinkx文件目录下,新建job文件夹,在编写mysql2mysql.json文件
修改json配置文件内的数据库连接信息,有源表信息和目标表信息

{"job": {"content": [{"reader": {"parameter": {"username": "root","password": "123456","connection": [{"jdbcUrl": ["jdbc:mysql://192.168.8.135:3306/testbase?useUnicode=true&characterEncoding=utf8"],"table": ["emp"]}],"column": ["id","name"],"customSql": "","splitPk": "","queryTimeOut": 1000,"requestAccumulatorInterval": 2},"name": "mysqlreader"},"writer": {"name": "mysqlwriter","parameter": {"username": "root","password": "123456","connection": [{"jdbcUrl": "jdbc:mysql://192.168.8.135:3306/testbase?useSSL=false","table": ["emp2"]}],"writeMode": "insert","column": ["id","name"],"batchSize": 1024}}}],"setting": {"speed": {"channel": 1,"bytes": 0},"errorLimit": {"record": 100},"restore": {"maxRowNumForCheckpoint": 0,"isRestore": false,"restoreColumnName": "","restoreColumnIndex": 0},"log" : {"isLogger": false,"level" : "debug","path" : "","pattern":""}}}
}

Local模式运行任务
在flinkx目录下,新建start.sh文件,添加以下内容
以本地模式启动程序

/usr/local/src/flinkx-1.8.5/bin/flinkx \ 
-mode local \ 
-job /usr/local/src/flinkx-1.8.5/job/mysql2mysql.json \ 
-pluginRoot /usr/local/src/flinkx-1.8.5/plugins \ 
-flinkconf /usr/local/src/flinkx-1.8.5/flinkconf \ 
-confProp "{\"flink.checkpoint.interval\":60000}"

启动
启动前给start.sh文件授权。启动后的日志就在flinkx/nohup.out内

chmod 777 start.sh
sh start.sh

成功运行后的日志是这样的
在这里插入图片描述
数据表的变化
在这里插入图片描述

这篇关于flinkX快速启动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/393065

相关文章

Win32下C++实现快速获取硬盘分区信息

《Win32下C++实现快速获取硬盘分区信息》这篇文章主要为大家详细介绍了Win32下C++如何实现快速获取硬盘分区信息,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实现代码CDiskDriveUtils.h#pragma once #include <wtypesbase

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Spring AI与DeepSeek实战一之快速打造智能对话应用

《SpringAI与DeepSeek实战一之快速打造智能对话应用》本文详细介绍了如何通过SpringAI框架集成DeepSeek大模型,实现普通对话和流式对话功能,步骤包括申请API-KEY、项目搭... 目录一、概述二、申请DeepSeek的API-KEY三、项目搭建3.1. 开发环境要求3.2. mav

Python如何快速下载依赖

《Python如何快速下载依赖》本文介绍了四种在Python中快速下载依赖的方法,包括使用国内镜像源、开启pip并发下载功能、使用pipreqs批量下载项目依赖以及使用conda管理依赖,通过这些方法... 目录python快速下载依赖1. 使用国内镜像源临时使用镜像源永久配置镜像源2. 使用 pip 的并

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

Nginx启动失败:端口80被占用问题的解决方案

《Nginx启动失败:端口80被占用问题的解决方案》在Linux服务器上部署Nginx时,可能会遇到Nginx启动失败的情况,尤其是错误提示bind()to0.0.0.0:80failed,这种问题通... 目录引言问题描述问题分析解决方案1. 检查占用端口 80 的进程使用 netstat 命令使用 ss

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

Windows设置nginx启动端口的方法

《Windows设置nginx启动端口的方法》在服务器配置与开发过程中,nginx作为一款高效的HTTP和反向代理服务器,被广泛应用,而在Windows系统中,合理设置nginx的启动端口,是确保其正... 目录一、为什么要设置 nginx 启动端口二、设置步骤三、常见问题及解决一、为什么要设置 nginx

springboot启动流程过程

《springboot启动流程过程》SpringBoot简化了Spring框架的使用,通过创建`SpringApplication`对象,判断应用类型并设置初始化器和监听器,在`run`方法中,读取配... 目录springboot启动流程springboot程序启动入口1.创建SpringApplicat