手把手入门MO | 如何使用SeaTunnel将数据写入MatrixOne

Apache SeaTunnel基于JDBC连接器开发教程 做JDBC连接器开发我们一般仅需要关注两部分,第一个是catalog包目录,第二个是internal中的dialect。这两部分已经提供了区别不同数据库的差异性描述,其余大部分代码是公共使用,不建议轻易修改,否则可能会影响所有引用类。中使用来标识数据库类型,用于定制连接器参数效验规则,是工厂类用来创建实例的方法。@OverrideMySqlCatalog 中包含了对于数据库元数据的查询,例如(库信息查询)、 阅读详情

1 概述

SeaTunnel 是一个分布式、高性能、易扩展的数据集成平台,专注于海量数据(包括离线和实时数据)同步和转化。MatrixOne 支持使用 SeaTunnel 从其他数据库同步数据,可以稳定高效地处理数百亿条数据。

本文档将介绍如何使用 SeaTunnel 向 MatrixOne 中写入数据。

2 开始前准备

在使用 SeaTunnel 向 MatrixOne 写入数据之前,请确保完成以下准备工作:

  • 已完成安装和启动 MatrixOne。
  • 已完成安装 SeaTunnel Version 2.3.3。安装完成后,可以通过 shell 命令行定义 SeaTunnel 的安装路径:
export SEATNUNNEL_HOME="/root/seatunnel"

3 操作步骤

创建测试数据

Step 1

创建名为 test1 的 MySQL 数据库,并在其中创建名为 test_table 的表,存储在 root 下的 mysql.sql 中。以下是 MySQL 的 DDL 语句:

create database test1;
use test1;
CREATE TABLE `test_table` (
  `name` varchar(255) DEFAULT NULL,
  `age` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Step 2

使用 mo_ctl 工具将 MySQL 的 DDL 语句直接导入至 MatrixOne。执行以下命令:

mo_ctl sql /root/mysql.sql

安装 Connectors 插件

本篇文档中将介绍如何使用 SeaTunnel 的 connector-jdbc 连接插件连接 MatrixOne。

Step 1

在 SeaTunnel 的 ${SEATNUNNEL_HOME}/config/plugin_config 文件中,添加以下内容:

--connectors-v2--
connector-jdbc
--end--

Step 2

版本 2.3.3 的 SeaTunnel 二进制包默认不提供连接器依赖项,你需要在首次使用 SeaTunnel 时,执行以下命令来安装连接器:

sh bin/install-plugin.sh 2.3.3

4 定义任务配置文件

在本篇文档中,我们使用 MySQL 数据库的 test_table 表作为数据源,不进行数据处理,直接将数据写入 MatrixOne 数据库的 test_table 表中。

那么,由于数据兼容性的问题,需要配置任务配置文件 ${SEATNUNNEL_HOME}/config/v2.batch.config.template,它定义了 SeaTunnel 启动后的数据输入、处理和输出方式和逻辑。

按照以下内容编辑配置文件:

env {
  execution.parallelism = 2
  job.mode = "BATCH"
}

source {
    Jdbc {
        url = "jdbc:mysql://192.168.110.40:3306/test"
        driver = "com.mysql.cj.jdbc.Driver"
        connection_check_timeout_sec = 100
        user = "root"
        password = "123456"
        query = "select * from test_table"
    }
}

transform {

}

sink {
   jdbc {
        url = "jdbc:mysql://192.168.110.248:6001/test"
        driver = "com.mysql.cj.jdbc.Driver"
        user = "root"
        password = "111"
        query = "insert into test_table(name,age) values(?,?)"
   }
}

安装数据库依赖项

下载 mysql-connector-java-8.0.33.jar,并将文件复制到 ${SEATNUNNEL_HOME}/plugins/jdbc/lib/ 目录下。

运行 SeaTunnel 应用

执行以下命令启动 SeaTunnel 应用:

./bin/seatunnel.sh --config ./config/v2.batch.config.template -e local

查看运行结果

SeaTunnel 运行结束后,将显示类似以下的统计结果,汇总了本次写入的用时、总读取数据数量、总写入数量以及总写入失败数量:

***********************************************
           Job Statistic Information
***********************************************
Start Time                : 2023-08-07 16:45:02
End Time                  : 2023-08-07 16:45:05
Total Time(s)             :                   3
Total Read Count          :             5000000
Total Write Count         :             5000000
Total Failed Count        :                   0
***********************************************

你已经成功将数据从 MySQL 数据库同步写入到 MatrixOne 数据库中。

关于MatrixOne

MatrixOne 是一款基于云原生技术,可同时在公有云和私有云部署的多模数据库。该产品使用存算分离、读写分离、冷热分离的原创技术架构,能够在一套存储和计算系统下同时支持事务、分析、流、时序和向量等多种负载,并能够实时、按需的隔离或共享存储和计算资源。云原生数据库MatrixOne能够帮助用户大幅简化日益复杂的IT架构,提供极简、极灵活、高性价比和高性能的数据服务。

MatrixOne企业版和MatrixOne云服务自发布以来,已经在互联网、金融、能源、制造、教育、医疗等多个行业得到应用。得益于其独特的架构设计,用户可以降低多达70%的硬件和运维成本,增加3-5倍的开发效率,同时更加灵活的响应市场需求变化和更加高效的抓住创新机会。在相同硬件投入时,MatrixOne可获得数倍以上的性能提升。

MatrixOne秉持开源开放、生态共建的理念,核心代码全部开源,全面兼容MySQL协议,并与合作伙伴打造了多个端到端解决方案,大幅降低用户的迁移和使用成本,也帮助用户避免了供应商锁定风险。


MatrixOrigin 官网:新一代超融合异构开源数据库-矩阵起源(深圳)信息科技有限公司 MatrixOne

Github 仓库:GitHub - matrixorigin/matrixone: Hyperconverged cloud-edge native database

关键词:超融合数据库、多模数据库、云原生数据库、国产数据库

Apache SeaTunnel 集群部署详细教程 SeaTunnel Engine 的Master服务和Worker服务分离,每个服务单独一个进程。在所有Master节点中,同一时间只有一个Master节点工作,其他Master节点处于standby状态。当Master节点宕机或心跳超时,会从其它节点中选举出一个新的节点。这是最推荐的一种使用方式,在该模式下Master的Master有用来进行作业的调度,任务的容错指标监控以及提供Rest API服务等,会有。同时Worker节点不存储Imap的数据,所有的Imap数据都存储在Master。 阅读详情

相关推荐

SeaTunnel 入门到精通(一)

seatunnel 教程一

u010160949的博客 2649

SeaTunnel 实战: Apache SeaTunnel 安装与部署

Apache SeaTunnel 最新版安装与部署,基本无坑,一步到位

bacawa的博客 1万+

三维点云孔洞修复(附Python代码和公共点云数据集链接)

(1)物体自身缺失(2)物体自身形状复杂,很多凹凸面不够规则甚至存在空腔,空腔内部无法被三维激光扫描仪扫描到(3)物体部分区域对激光扫描不敏感,未被扫描上(4)扫描仪的扫描稳定性。

yanghl1215的博客 6954

SeaTunnel及SeaTunnel Web部署指南(小白版)

现在你能搜索到的SeaTunnel的安装。部署基本都有坑,官网的文档也是见到到相当于没有,基本很难找到一个适合新手小白第一次上手就能成功安装部署的版本,于是就有了这个部署指南的分享,小主已经把可能遇到的坑都填过了,希望大家都能安安稳稳上路,不掉坑,话不多说,走起~

最爱嫣夜来 3万+

CPU也能跑大模型?手把手教你用vLLM离线部署Qwen2.5-7B-Instruct(附性能优化技巧)

本文详细介绍了如何在CPU服务器上高效部署Qwen2.5-7B-Instruct模型,通过vLLM框架和一系列优化技巧实现离线推理。内容包括环境配置、模型加载优化、性能调优及生产环境部署方案,帮助开发者在资源有限的情况下也能运行大语言模型。

weixin_28691741的博客 494

四旋翼滑模控制:从理论到Simulink实现

本文深入探讨了四旋翼滑模控制的理论与Simulink实现,对比了其相较于PID控制在抗干扰和鲁棒性方面的显著优势。文章详细介绍了从精确动力学建模、内外环滑模控制器设计到指令解算的完整流程,并分享了Simulink仿真搭建、参数调试及抗扰性能验证的实战经验,帮助工程师掌握在复杂环境下提升四旋翼稳定性的进阶技能。

weixin_29163581的博客 375

2024年的第一场 MatrixOne Meetup 来啦!

2024年的第一场 MatrixOne Meetup 来啦!

MatrixOrigin的博客 481

【项目实战】自动化测试软件VectorCAST介绍

VectorCAST是一款先进的自动化测试软件。VectorCAST是一款功能强大、易于使用的自动化测试软件。VectorCAST适用于各种嵌入式系统的测试。VectorCAST为嵌入式系统的测试提供了一种高效、可靠的解决方案。VectorCAST提供了一整套完整的测试工具,包括测试管理、代码覆盖、缺陷定位、报告生成等,以帮助开发人员提高测试效率,确保软件质量。VectorCAST支持。

奶爸的编程之路,也就一周冷个三天 2013

MatrixOne 支持多样化生态工具,持续提升开发者体验

在选择一款数据库产品时,对数据库上下游生态组件的打通是大数据开发工程师需要面对的一致难题。 MatrixOne提出了“One Size Fits Most”理念,旨在用全新HSTAP技术架构打破数据孤岛,其中,与各生态组件的“无缝衔接”也是MatrixOne“一栈式”愿景中的重要一环。 MatrixOne高度兼容MySQL协议,在1.0正式版发布前,MatrixOne收集整理了社区反馈较多的上下游组件并进行了更为完整的适配。本轮适配主要围绕:数据集成工具、BI工具和数据计算引擎这三类生态工具。

MatrixOrigin的博客 312

基于Simulink的无线充电系统LCC补偿网络建模与控制

本文详细介绍了基于Simulink的无线充电系统LCC补偿网络建模与控制方法。首先分析了无线充电系统面临的核心挑战,提出LCC补偿网络解决方案,阐述了其恒流输出和输入阻抗解耦原理。通过Simulink分步演示了系统建模过程,包括松耦合变压器、LCC+LC补偿网络、功率变换级搭建以及频率跟踪控制实现。仿真结果表明,LCC补偿系统在气隙变化和负载跳变下能保持输出电压稳定(波动±3%),效率达89%。文章还总结了工程实现要点,并探讨了动态充电、多负载系统等扩展应用。该教程为开发高效智能的无线充电系统提供了实用指导

amy_mhd的博客 63

手把手教你完成基于cnn的手写数字识别系统MATLAB语言

手写数字识别是经典的 CNN 分类应用之一,常用的数据集就是 MNIST 手写数字数据集,包含 0~9 这 10 个数字的手写图片,每个数字都由 6 万幅训练图像和 1 万幅测试图像构成。为了便于直观分析,这里选择 MATLAB 工具箱提供的 DigitDataset 进行训练识别,读者也可以直接利用 MNIST 数据集或者自己设计的数据集进行实验。其中,数据集文件夹 db 如图 所示。在数据集文件夹 db 里面对每个数字都建立了子文件夹,各自包含 1000 幅 28×28 大小的二维灰度图像。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 1369

Seatunnel实战:hive_to_starrocks

本篇文章带大家了解使用Seatunnel将Hive中的数据导入到StarRocks中。

这个人很懒。 4589

Open3D (C++) 计算点云坐标最值及其索引

使用C++版本的Open3D计算点云最值点及其对应的下标索引

点云侠的博客 731

Seatunnel配置文件解读

Seatunnel配置文件个人理解

underworld33的博客 3857

RK3568 上C图像camera图像采集应用实例(二)

本文探索rk3568上实现C语言的 通过C v4l2 接口 采集图像 ,刷屏控制 drm的显示camera图像中 实现camera preview 预览 的实践和探索。

luoshanxuli2010的专栏 763

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

seatunnel-web本地安装教程(超详细)

超详细讲解seatunnel-web本地安装流程

阿甘兄 9588

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

转载:SeaTunnel的使用攻略

SeaTunnel 官网SeaTunnel 最新版本官网文档SeaTunnel GitHub地址SeaTunnel是一个非常易用的超高性能分布式数据集成平台,在企业中由于开发时间或开发部门不通用往有多个异构的、运行在不同的软硬件平台上的信息系统同时运行;而一个有价值的数据集成是把不同来源、格式、特点性质的数据在逻辑上或物理上有机地集中,从而为企业提供全面的数据共享;SeaTunnel 支持海量数据的实时同步,它每天可以稳定高效地同步数百亿的数据,并已用于近100家公司的生产。

smile6868的博客 3935

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

SeaTunnel 引擎快速开始

本文介绍了SeaTunnel数据集成工具的快速入门和扩展应用方法。快速入门部分包含三个步骤:部署SeaTunnel、编辑配置文件定义数据处理逻辑、运行应用程序。配置示例展示了如何从FakeSource获取数据,经过FieldMapper转换后输出到Console。扩展示例演示了从MySQL到Doris的批处理模式,包括连接器安装、JDBC驱动配置、作业定义和运行。两个示例都提供了详细的配置文件模板和运行命令说明,并展示了预期的输出日志格式。文章还提示用户可参考连接器文档进行作业优化,并了解集群部署模式。

weixin_47253479的博客 799

成为 Seatunnel 源码贡献者保姆级教程

为 Seatunnel 贡献代码必须要了解的细节

小王是个弟弟 2720

Apache SeaTunnel Connector 使用文档和使用案例有奖征稿来了!一起玩开源

随着两期 SeaTunnel Connector 接入激励计划的完成,我们已经完成了 180+ Connector 的接入,极大地丰富了 SeaTunnel 数据支持类型,让 SeaTunnel 数据同步的功能更加强大!为了让更多人了解如何使用 SeaTunnel Connector,社区特发起使用文档和使用案例征稿活动!

weixin_54625990的博客 627

Seatunnel系列之:部署Seatunnel

编辑config/v2.batch.config.template,决定了seatunnel启动后数据输入、处理、输出的方式和逻辑。以下是配置文件的示例,与上面提到的示例应用程序相同。env {source {schema = {fields {age = agesink {Console {编辑config/v2.streaming.conf.template,决定了seatunnel启动后数据输入、处理、输出的方式和逻辑。以下是配置文件的示例,与上面提到的示例应用程序相同。env {

zhengzaifeidelushang的博客 3010

Apache SeaTunnel 使用教程

Apache SeaTunnel 是一个下一代超高性能分布式海量数据集成工具。它旨在快速、准确地集成事务数据库、云数据库、SaaS 和 Binlog 之间的海量数据。SeaTunnel 支持使用类似 SQL 的代码或拖放操作来简化复杂性,并且其基于 API 开发的连接器可以兼容离线同步和实时同步。 ## 项目快速启动 ### 环境准备 在开始之前,需要准备 SeaTunnel 环境。由于 S...

gitblog_00646的博客 1248

Apache SeaTunnel 快速入门指南:基于Flink引擎的实战教程

Apache SeaTunnel 快速入门指南:基于Flink引擎的实战教程 前言 Apache SeaTunnel 是一个高性能、分布式、海量数据集成和处理平台,支持实时和批处理模式。本文将详细介绍如何使用 SeaTunnel 结合 Flink 引擎快速构建数据处理流水线。 环境准备 1. SeaTunnel 部署与连接器配置 首先需要完成 SeaTunnel 的基础部署,确保已按照官方文档正确...

gitblog_00666的博客 604

一文搞定 Apache SeaTunnel 2.3.1 全流程部署使用

点击蓝字 关注我们作者 |caoyongfei部署1下载解压https://dlcdn.apache.org/incubator/SeaTunnel/2.3.1/apache-SeaTunnel-incubating-2.3.1-bin.tar.gz下载完毕之后上传到服务器上面并解压# 解压到了/opt/module目录下 tar -zxvf apache-SeaTunnel-incubatin...

weixin_54625990的博客 3238

Seatunnel和web快速安装详解

Apache SeaTunnel里面的Connector对应的jar包需要自己下载,在执行自动下载jar包前,进入apache-seatunnel-2.3.3,查看vim bin/install-plugin.sh内容,主要内容就是下载jar包,默认是从mvvm下载,下载速度太慢,我这边安装了maven,并且配置了阿里云仓库,因此可以直接将下图中命令替换,从maven中下载,seatunnel提供了很多数据源jar包,需要下载好,否则会出现无法创建数据源等各种问题;看到是从阿里云下载的,等待下载完成即可。

空城的博客 6456
上一篇: O-Star|再相识
下一篇: MatrixOne实战系列回顾 | 导入导出项目场景实践
MatrixOrigin
博客等级 码龄5年 708粉丝 230原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值