PiflowX组件-JDBCWrite

JDBCWrite组件

组件说明

使用JDBC驱动向任意类型的关系型数据库写入数据。

计算引擎

flink

有界性

Sink: Batch

Sink: Streaming Append & Upsert Mode

组件分组

Jdbc

端口

Inport:默认端口

outport:默认端口

组件属性

名称展示名称默认值允许值是否必填描述例子
urlUrl“”JDBC数据库url。jdbc:mysql://127.0.0.1:3306/dbname
driverDriver“”用于连接到此URL的JDBC驱动类名,如果不设置,将自动从URL中推导。com.mysql.cj.jdbc.Driver
usernameUsername“”JDBC用户名。如果指定了username和password中的任一参数,则两者必须都被指定。root
passwordPassword“”JDBC密码。123456
tableNameDBTable“”连接到JDBC表的名称。test
connectionMaxRetryTimeoutConnectionMaxRetryTimeout60s最大重试超时时间,以秒为单位且不应该小于 1 秒。60s
tableDefinitionTableDefinition“”Flink table定义。
propertiesPROPERTIES“”连接器其他配置。

JDBCWrite示例配置

{"flow": {"name": "JDBCWriteTest","uuid": "1234","stops": [{"uuid": "0000","name": "JDBCExecuteSql1","bundle": "cn.piflow.bundle.flink.jdbc.JDBCExecuteSql","properties": {"url": "jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false&allowMultiQueries=true","username": "root","password": "123456","driver": "com.mysql.cj.jdbc.Driver","sql": "CREATE TABLE IF NOT EXISTS `test` (`id` int DEFAULT NULL,`name` varchar(20) DEFAULT NULL,`age` int DEFAULT NULL);"}},{"uuid": "1111","name": "DataGen1","bundle": "cn.piflow.bundle.flink.common.DataGen","properties": {"schema": "[{\"filedName\":\"id\",\"filedType\":\"INT\",\"kind\":\"sequence\",\"start\":1,\"end\":10000},{\"filedName\":\"name\",\"filedType\":\"STRING\",\"kind\":\"random\",\"length\":15},{\"filedName\":\"age\",\"filedType\":\"INT\",\"kind\":\"random\",\"max\":100,\"min\":1}]","count": "100","ratio": "50"}},{"uuid": "2222","name": "JDBCWrite1","bundle": "cn.piflow.bundle.flink.jdbc.JDBCWrite","properties": {"url": "jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false&allowMultiQueries=true","username": "root","password": "123456","tableName": "test","tableDefinition": "{\"catalogName\":null,\"dbname\":null,\"tableName\":\"\",\"ifNotExists\":true,\"physicalColumnDefinition\":[{\"columnName\":\"id\",\"columnType\":\"INT\",\"comment\":\"id\"},{\"columnName\":\"name\",\"columnType\":\"STRING\",\"comment\":\"name\"},{\"columnName\":\"age\",\"columnType\":\"INT\"}],\"metadataColumnDefinition\":null,\"computedColumnDefinition\":null,\"watermarkDefinition\":null}","properties": "{}"}},{"uuid": "3333","name": "JDBCRead1","bundle": "cn.piflow.bundle.flink.jdbc.JDBCRead","properties": {"url": "jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false&allowMultiQueries=true","username": "root","password": "123456","tableName": "test","tableDefinition": "{\"catalogName\":null,\"dbname\":null,\"tableName\":\"\",\"ifNotExists\":true,\"physicalColumnDefinition\":[{\"columnName\":\"id\",\"columnType\":\"INT\",\"comment\":\"id\"},{\"columnName\":\"name\",\"columnType\":\"STRING\",\"comment\":\"name\"},{\"columnName\":\"age\",\"columnType\":\"INT\"}],\"metadataColumnDefinition\":null,\"computedColumnDefinition\":null,\"watermarkDefinition\":null}","properties": "{}"}},{"uuid": "4444","name": "ShowData1","bundle": "cn.piflow.bundle.flink.common.ShowData","properties": {"showNumber": "100"}}],"paths": [{"from": "JDBCExecuteSql1","outport": "","inport": "","to": "DataGen1"},{"from": "DataGen1","outport": "","inport": "","to": "JDBCWrite1"},{"from": "JDBCWrite1","outport": "","inport": "","to": "JDBCRead1"},{"from": "JDBCRead1","outport": "","inport": "","to": "ShowData1"}]}
}
示例说明
  1. 首先使用JDBCExecuteSql组件执行建表DDL语句,往数据库添加表;

  2. 使用DataGen组件生成100条测试数据;

  3. 使用JDBCWrite组件将测试数据写入到数据库;

  4. 验证写入的结果,使用JDBCRead组件读取数据,并使用ShowData组件将结果打印在控制台。

演示DEMO

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/590096.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

获奖、买房、出课、维权、购车,我的2023年度总结。

时光如水,岁月如梭。一个典型的小学语文作文的开头。 但是随着年龄的增长,越来越觉得时间过得真的很快啊。转眼间2023年就这么过去了。回看这一年,发现真的做了很多事。 按照惯例,做个总结吧。 获奖 很多人都知道,我去…

百度高级Java面试真题

今年IT寒冬,大厂都裁员或者准备裁员,作为开猿节流主要目标之一,我们更应该时刻保持竞争力。为了抱团取暖,林老师开通了《知识星球》,并邀请我阿里、快手、腾讯等的朋友加入,分享八股文、项目经验、管理经验…

Spring04

一、AOP的概念 AOP 为 (Aspect Oriented Programming) 的缩写,意为:面向切面编程,底层是使用动态代理的技术实现对目标方法的增强和控制访问等功能。 其中AOP中有几个重要的概念: 1、通知:增强的逻辑,或者后期要加入的代码。 2、目…

【js】js解析Token:

一、效果: 二、实现: export function getTokenObject(token) {//通过split()方法将token转为字符串数组,数组中的第二个字符进行解析return token ? JSON.parse(decodeURIComponent(escape(window.atob(token.split(".")[1].replace(/-/g &…

docker Mysql-udf-http

1.Mysql-udf-http镜像已上传到dockerhub中 docker pull heidaodageshiwo/mysql-udf-http:v1 2.启动镜像(默认密码root1234) docker run -tid -p 3306:3306 --namemysql-udf-http --privilegedtrue heidaodageshiwo/mysql-udf-http:v1 3.命令 [rootlocalhost ~]# docker im…

odoo17 | 开发环境设置

前言 开始odoo17开发之前,请先掌握python的基本语法和工具包的使用,以及postgres数据库的安装,和简单的sql使用。以及一些前端的html、css、javascript等前端知识,以及xml、json等数据传输的使用。 本教程同时适用于odoo15-17 …

go语言语法基础

文章目录 前言一、输入和输出常用的字符串格式化符号 二、注释三、Go常用基本语言数据类型数字类型布尔类型字符类型变量与常量数组和切片数组切片 map类型创建map增删改查特别提醒 指针 四、运算符五、条件判断语句if系列switch六、循环语句for循环标准写法死循环while循环do …

Primavera Unifier 项目控制延伸:Phase Gate理论:2/3

阶段Gate的具体内容: 阶段0 根据公司需要和资源现状,决定开展哪些项目。在这个阶段,公司一般需要开展一些脑力风暴或者团队集思广益的活动以获得足够多的点子。一旦团队决定采用某个想法,必须从各个维度去完善它,并使…

【FileZilla的安装与使用(主动与被动模式详解,以及如何利用FileZilla搭建FTP服务器并且进行访问)】

目录 一、FileZilla介绍 1.1 简介 1.2 重要信息和功能 二、FileZilla的安装与使用 2.1 FileZilla服务端安装与配置 2.1.1 安装步骤 2.1.2 新建组 2.1.3 新建用户 2.1.4 新建目录 2.1.5 权限分配 (1)用户Milk权限分配 (2&#xff…

使用 Hyper-V 创建虚拟机

使用 Hyper-V 创建虚拟机 官网教程修改存储目录Hyper-V管理器创建虚拟机启动虚拟机Win10安装教程Press any key to boot from CD or DVD...... 如何使用Windows自带的虚拟机工具来创建虚拟机, 快速创建虚拟机进行学习探讨,如果有环境问题可以立即创建一个…

元旦小礼品:想去面试的时候如何快速打造自己的面试亮点

新年快乐! 对于毕业生,或者工作时间不太长的同学来说,面试实习之前写简历是一件很痛苦的事情,特别是简历上没什么亮点,总感觉很心虚。这时候就会发现很多人凡是知道的,叫得上名字的统统写上去。可惜即使通…

VMware之FTP的简介以及搭建使用计算机端口的介绍

🎬 艳艳耶✌️:个人主页 🔥 个人专栏 :《产品经理如何画泳道图&流程图》 ⛺️ 越努力 ,越幸运 目录 一、FTP介绍 1、什么是FTP: 2、FTP适用于以下情况和应用场景: 3、winServer2012搭…

软件测试/测试开发丨Linux 三剑客与管道使用

1、 程序运行环境输入与输出 标准输入 0 read a;echo $a标准输出 1 echo ceshiren.com错误输出 ls not_exist_dir 2、 管道重定向 管道与管道之间可以重定向管道与文件之间可以重定向 echo 11 > /tmp/1 read var </tmp/1错误输出&#xff1a; ls not_exist_dir > /…

ubuntu:beyond compare 4 This license key has been revoked 解决办法

https://www.cnblogs.com/zhibei/p/12095431.html 错误如图所示&#xff1a; 解决办法&#xff1a; &#xff08;1&#xff09;先用find命令找到bcompare所在位置&#xff1a;sudo find /home/ -name *bcompare &#xff08;2&#xff09;进入 /home/whf/.config,删除/bco…

【瞎折腾/3D】无父物体下物体的旋转与移动

目录 说在前面移动World SpaceLocal Space 旋转World SpaceLocal Space 代码 说在前面 测试环境&#xff1a;Microsoft Edge 120.0.2210.91three.js版本&#xff1a;0.160.0其他&#xff1a;本篇文章中只探讨了无父对象下的移动与旋转&#xff0c;有父对象的情况将在下篇文章中…

springboot 接收appsflyer 参数

1、官网登陆&#xff1a;hq1.appsflyer.com a、配置接收请求的地址和需要的事件 配置详情 2、Controller配置接收 RequestMapping(value "/req", method POST)ResponseBodypublic ResData req(RequestBody Map<String, String> map) {String jsonObject J…

一文搞懂什么是缓存穿透、缓存雪崩、缓存击穿三个概念,以及解决方案

先理解概念&#xff1a;【注&#xff1a;我们这里说的是分布式、高并发环境】 一、缓存穿透是什么&#xff1f; 缓存穿透是指&#xff1a;请求【可以有很多】的数据在缓存、关系型数据库中都不存在&#xff0c;每次来查询都会查询到关系型数据库中。 解决方案&#xff1a; 1、将…

CUMT--Java复习--核心类

目录 一、装箱与拆箱 二、“”与equals 三、字符串类 1、String、StringBuffer、StringBuilder的区别 2、String类 3、StringBuffer类 4、StringBuilder类 四、类与类之间关系 一、装箱与拆箱 基本类型与对应封装类之间能够自动进行转换&#xff0c;本质就是Java的自…

强烈推荐 25个 前端开源中后台管理系统

作为程序员&#xff0c;构建一套个人专属的后台管理系统非常重要。这不仅是为了打造自己独有的开发生态&#xff0c;更是因为我们正处于个人开发和AI模型泛滥的时代。利用AI增强自己的系统变得尤为关键。然而&#xff0c;在UI界面设计方面&#xff0c;我们可能需要参考开源项目…

mysql原理--Explain详解

1.概述 一条查询语句在经过 MySQL 查询优化器的各种基于成本和规则的优化会后生成一个所谓的 执行计划 &#xff0c;这个执行计划展示了接下来具体执行查询的方式&#xff0c;比如多表连接的顺序是什么&#xff0c;对于每个表采用什么访问方法来具体执行查询等等。设计 MySQL 的…