当前位置: 首页 > news >正文

DataX和dataX-web 集群部署及使用

📑 DataX和dataX-web 集群部署及使用

一 . 安装前准备

DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。

DataX 采用 框架 + 插件 的模式:

  • 插件只需关心数据的读取或者写入本身
  • 同步时的共性问题,如 类型转换,性能,统计 由框架来处理

开发插件时 只需要关注两个问题:

  • 数据源本身读写的数据正确性
  • 如何与框架沟通,合理正确地使用框架

逻辑执行模型:

  • Job:是DataX描述一个源头到一个目的端的同步作业,是DataX数据同步的最小业务单元。如将一张mysql表同步到odps一个表的分区
  • Task:是Job拆分得到的最小执行单元。如在同步一张1024哥分表的mysql分库分表的Job时,就可拆分成1024个读Task并发执行
  • TaskGroup:一组Task集合,在同一个TaskGroupContainer执行下的Task集合
  • JobContainer:Job执行器,负责job全局拆分,调度,前置语句和后置语句等工作的工作单元。类似Yarn中的JobTracker 调度Job的每一个子任务task运行于TaskTracker上
  • TaskGroupContainer:TaskGroup的执行器,负责一组Task的工作单元。类似Yarn中的TaskTrackerTaskTracker主动与JobTracker通信,接收作业,并负责直接执行每一个任务。

框架为插件提供物理上的执行能力(线程)。框架有三种运行模式

  • Standalone:单线程运行,没有外部依赖
  • Local:单线程运行,统计信息,错误信息汇报到集中存储
  • Distributed:分布式多线程运行,依赖 DataX Service 服务

当 JobContainer和TaskGroupContainer 运行在同一个进程内时,就是单机模式(Standalone和local);当他们分布在不同的进程中执行就是分布式(distributed)

datax-web 集群部署时单独起某一个功能 ./bin/start.sh -m datax-executor

datax二次开发

datax源码学习

datax二次开发打包

dataX、dataX-web安装部署 dataX集群模式

二 . 配置datax和datax-web

1 安装dataX

使用源码自定义打包

链接 datax 源码

 mvn -U clean package assembly:assembly -Dmaven.test.skip=true

路径在 /target/datax/datax/ 下面

(需要python环境及maven环境)

#测试命令
python bin/datax.py job/job.json 

在这里插入图片描述

ps.如果是自己新增插件 需要修改项目中的 package.xmlpom.xml

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2 安装datax-web

https://github.com/WeiYe-Jing/datax-web/blob/master/doc/datax-web/datax-web-deploy.md

https://github.com/WeiYe-Jing/datax-web/blob/master/userGuid.md

datax-web集群部署 一个datax-web和多个datax-executor。确认datax安装的路径都是一样

启动datax-executor命令

./bin/stop.sh -m datax-executor

在这里插入图片描述

在这里插入图片描述

通过 module 下的 bin 下的日志能查到日志文件

在这里插入图片描述

1、通过界面的执行器管理能查到

在这里插入图片描述

2、data-web使用

data-web 的任务构建是负责自动生成dataX用的json文件,如果已经有json文件 就不需要使用。

3、data-web简要使用
  • 新建项目管理

在这里插入图片描述

  • 查看执行器管理
    在这里插入图片描述

  • 新建 任务管理
    在这里插入图片描述

  • 执行任务、查看日志

在这里插入图片描述

在这里插入图片描述

4、报错小记

在读mysql报错
在这里插入图片描述

在jdbc url增加配置 在没有服务器身份验证的情况下建立SSL连接\设置useSSL=false来显式禁用SSL

jdbc:mysql://hostname:port/tsp-cloud?useSSL=false&useUnicode=true&characterEncoding=utf8

rl增加配置 在没有服务器身份验证的情况下建立SSL连接\设置useSSL=false来显式禁用SSL

jdbc:mysql://hostname:port/tsp-cloud?useSSL=false&useUnicode=true&characterEncoding=utf8
http://www.lryc.cn/news/186253.html

相关文章:

  • 常见的数据存储方案:选择合适的方式来管理您的数据
  • leetcode 221 最大正方形 + 1277 统计全为1的正方形子矩阵
  • yolov7车牌识别(12种中文车牌类型)
  • Mac PF命令防火墙
  • prototype-based learning algorithm(原型学习)
  • 【数据结构-二叉树 八】【遍历求和】:求根到叶子节点数字之和
  • PHP知识大全
  • Jmeter常用参数化技巧总结!
  • iTunes更新iOS17出现发生未知错误4000的原因和解决方案
  • 微信小程序 table表格 固定表头和首列 右侧表格可以左右滚动
  • Final Cut Pro 10.6.10中文用法儿
  • 【网络安全---XSS漏洞(1)】XSS漏洞原理,产生原因,以及XSS漏洞的分类。附带案例和payload让你快速学习XSS漏洞
  • 云计算:常用系统前端与后端框架
  • asp.net闲置物品购物网系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio
  • 一般纳税人缺少进项票,如何降低税负压力?
  • UniAD 论文学习
  • (c语言)用冒泡排序模拟实现qsort()函数交换整数
  • 【Java-LangChain:使用 ChatGPT API 搭建系统-11】用 ChatGPT API 构建系统 总结篇
  • 3D 生成重建004-DreamFusion and SJC :TEXT-TO-3D USING 2D DIFFUSION
  • 机械臂抓取的产业落地进展与思考
  • 【RuoYi-Cloud项目研究】【ruoyi-auth模块】登录请求(/login)分析
  • Git 学习笔记 | Git 项目创建及克隆
  • C++默认参数(实参)
  • Datax数据同步支持SqlServer 主键自增
  • C++开发学习笔记3
  • 计算机中常说的SDK是什么意思?
  • 漏刻有时数据可视化大屏(16)数据指标KPI和柱图折线图混排
  • 基于Stable Diffusion的图像合成数据集
  • 云计算:常用运维软件工具
  • 多测师肖sir_高级金牌讲师_python的安装002