DataX-web安装部署和使用

这篇具有很好参考价值的文章主要介绍了DataX-web安装部署和使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

DataX-web的环境准备

  • MySQL (5.5+) 必选,对应客户端可以选装, Linux服务上若安装mysql的客户端可以通过部署脚本快速初始化数据库

  • JDK (1.8.0_xxx) 必选

  • DataX 必选

  • Python (2.x) (支持Python3需要修改替换datax/bin下面的三个python文件,替换文件在doc/datax-web/datax-python3下) 必选,主要用于调度执行底层DataX的启动脚本,默认的方式是以Java子进程方式执行DataX,用户可以选择以Python方式来做自定义的改造

安装部署MySQL

yum  -y install  https://repo.mysql.com/mysql80-community-release-el7-7.noarch.rpm
#修改yum文件
vim mysql-community.repo
# Enable to use MySQL 5.7
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022
       file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
这个enable后面参数修改为1,其他的源全部修改为0。
#安装MySQL
yum -y install mysql-community-server
#启动mysql
systemctl start  mysqld.service
systemctl enable  mysqld.service
#查询MySQL的密码
grep password /var/log/mysqld.log   
#登录MySQL并修改密码和密码策略
mysql -uroot -p
alter  user  'root'@'localhost'  identified by '1234Qaz.'
set global validate_password_policy=0;  #设置密码策略为LOW
set global validate_password_length=1; #设置密码长度为1
#修改MySQL配置文件
vim  /etc/my.cnf
...
#添加以下内容
validate_password_policy=0
validate_password_length=1
#重启mysql
systemctl   restart mysqld
#修改密码
mysql  -uroot -p
alter  user 'root'@'localhost'  identified by '1234';

安装JDK

yum -y  install java-1.8.0-openjdk  java-1.8.0-openjdk-devel

DataX安装部署

1. DataX介绍

1.1 什么是 DataX

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

    datax-web部署,前端

1.2. DataX 的设计

  • 为了解决异构数据源同步问题,DataX 将复杂的网状的同步链路变成了星型数据链路,DataX 作为中间传输载体负责连接各种数据源。当需要接入一个新的数据源的时候,只需要将此数据源对接到 DataX,便能跟已有的数据源做到无缝数据同步。
    datax-web部署,前端

1.3. 支持的数据源

  • DataX 目前已经有了比较全面的插件体系,主流的 RDBMS 数据库、NOSQL、大数据计算系统都已经接入。
类型 数据源 Reader(读) Writer(写)
RDBMS 关系型数据库 MySQL
Oracle
OceanBase
SQLServer
PostgreSQL
DRDS
Kingbase
通用RDBMS(支持所有关系型数据库)
阿里云数仓数据存储 ODPS
ADB
ADS
OSS
OCS
Hologres
AnalyticDB For PostgreSQL
阿里云中间件 datahub
SLS
图数据库 阿里云 GDB
Neo4j
NoSQL数据存储 OTS
Hbase0.94
Hbase1.1
Phoenix4.x
Phoenix5.x
MongoDB
Cassandra
数仓数据存储 StarRocks
ApacheDoris
ClickHouse
Databend
Hive
kudu
selectdb
无结构化数据存储 TxtFile
FTP
HDFS
Elasticsearch
时间序列数据库 OpenTSDB
TSDB
TDengine

1.4. 框架设计

datax-web部署,前端

  • Reader:数据采集模块,负责采集数据源的数据,将数据发送给Framework。

  • Writer:数据写入模块,负责不断向Framework取数据,并将数据写入到目的端。

  • Framework:用于连接reader和writer,作为两者的数据传输通道,并处理缓冲,流控,并发,数据转换等核心技术问题。

1.5. 运行原理

datax-web部署,前端

  • Job:单个作业的管理节点,负责数据清理、子任务划分、TaskGroup监控管理。

  • Task:由Job切分而来,是DataX作业的最小单元,每个Task负责一部分数据的同步工作。

  • Schedule:将Task组成TaskGroup,单个TaskGroup的并发数量为5。

  • TaskGroup:负责启动Task。

  • **举例:**用户提交了一个 DataX 作业,并且配置了 20 个并发,目的是将一个 100 张分表的 mysql 数据同步到 odps 里面。 DataX 的调度决策思路是:

    1. DataXJob 根据分库分表切分成了 100 个 Task。
    2. 根据 20 个并发,DataX 计算共需要分配 4 个 TaskGroup。
    3. 4 个 TaskGroup 平分切分好的 100 个 Task,每一个 TaskGroup 负责以 5 个并发共计运行 25 个 Task。

1.6. 与 Sqoop 的对比

datax-web部署,前端

2. DataX安装部署

  • 二进制包下载地址
  • 源码包下载地址

2.1. 前置要求

  • Linux
  • JDK(1.8 以上,推荐 1.8)
  • Python(推荐 Python2.6.X)

2.2. 安装

  • 将下载好的 datax.tar.gz 上传到 服务器上/usr/local/soft/
  • 解压 datax.tar.gz/usr/local/soft/
tar -xf   datax.tar.gz
  • 运行自检脚本
cd  /usr/local/soft/datax/bin/
python datax.py /usr/local/soft/datax/job/job.json

datax-web部署,前端

DataX-web 安装部署

  • 源码包
  • 下载官方提供的版本tar版本包 提取码:cpsk

1. datax-web介绍

1.1. datax-web是什么?

  • DataX Web是在DataX之上开发的分布式数据同步工具,提供简单易用的 操作界面,降低用户使用DataX的学习成本,缩短任务配置时间,避免配置过程中出错。用户可通过页面选择数据源即可创建数据同步任务,支持RDBMS、Hive、HBase、ClickHouse、MongoDB等数据源,RDBMS数据源可批量创建数据同步任务,支持实时查看数据同步进度及日志并提供终止同步功能,集成并二次开发xxl-job可根据时间、自增主键增量同步数据。

  • 任务"执行器"支持集群部署,支持执行器多节点路由策略选择,支持超时控制、失败重试、失败告警、任务依赖,执行器CPU.内存.负载的监控等等。后续还将提供更多的数据源支持、数据转换UDF、表结构同步、数据同步血缘等更为复杂的业务场景。

1.2. datax-web架构

datax-web部署,前端

1. DataX-web的二进制包下载

#把下载的datax-web二进制tar包上传至/usr/local/soft
cd /usr/local/soft/

#解压
tar -xf  datax-web-2.1.2.tar.gz

2. 执行一键安装脚本

cd datax-web-2.1.2/
#执行一键安装脚本
./bin/install.sh

2023-10-14 23:06:55.058 [INFO] (9341) Creating directory: [/usr/local/soft/datax-web-2.1.2/bin/../modules].
2023-10-14 23:06:55.062 [INFO] (9341)  ####### Start To Uncompress Packages ######
2023-10-14 23:06:55.064 [INFO] (9341) Uncompressing....
Do you want to decompress this package: [datax-admin_2.1.2_1.tar.gz]? (Y/N)y    #你想解压缩这个包吗(datax-admin_2.1.2_1.tar.gz)这里选择y解压
2023-10-14 23:06:57.422 [INFO] (9341)  Uncompress package: [datax-admin_2.1.2_1.tar.gz] to modules directory
Do you want to decompress this package: [datax-executor_2.1.2_1.tar.gz]? (Y/N)y #你想解压缩这个包吗(datax-executor_2.1.2_1.tar.gz)这里选择y解压
2023-10-14 23:07:00.938 [INFO] (9341)  Uncompress package: [datax-executor_2.1.2_1.tar.gz] to modules directory
2023-10-14 23:07:01.162 [INFO] (9341)  ####### Finish To Umcompress Packages ######
Scan modules directory: [/usr/local/soft/datax-web-2.1.2/bin/../modules] to find server under dataxweb
2023-10-14 23:07:01.166 [INFO] (9341)  ####### Start To Install Modules ######
2023-10-14 23:07:01.168 [INFO] (9341) Module servers could be installed:
 [datax-admin]  [datax-executor]
Do you want to confiugre and install [datax-admin]? (Y/N)y #是否要确认并安装datax-admin
2023-10-14 23:07:03.516 [INFO] (9341)  Install module server: [datax-admin]
Start to make directory
2023-10-14 23:07:03.532 [INFO] (9381)  Start to build directory
2023-10-14 23:07:03.536 [INFO] (9381) Creating directory: [/usr/local/soft/datax-web-2.1.2/modules/datax-admin/bin/../logs].
2023-10-14 23:07:03.570 [INFO] (9381) Directory or file: [/usr/local/soft/datax-web-2.1.2/modules/datax-admin/bin/../conf] has been exist
2023-10-14 23:07:03.572 [INFO] (9381) Creating directory: [/usr/local/soft/datax-web-2.1.2/modules/datax-admin/bin/../data].
end to make directory
Start to initalize database
2023-10-14 23:07:03.598 [INFO] (9381)  Scan out mysql command, so begin to initalize the database
Do you want to initalize database with sql: [/usr/local/soft/datax-web-2.1.2/bin/db/datax_web.sql]? (Y/N)y 是否要使用sql初始化数据库,这里选择y
Please input the db host(default: 127.0.0.1): #请输入数据库主机,这里回车,选择127.0.0.1
Please input the db port(default: 3306): #请输入数据库端口,这里回车,选择3306
Please input the db username(default: root): #请输入数据库用户名,这里回车,选择root
Please input the db password(default: ): 1234 #请输入数据库密码,这里输入1234
Please input the db name(default: dataxweb)
mysql: [Warning] Using a password on the command line interface can be insecure.
Do you want to confiugre and install [datax-executor]? (Y/N)y #是否要确认并安装datax-executor,这里选择安装
2023-10-14 23:07:27.697 [INFO] (9341)  Install module server: [datax-executor]
2023-10-14 23:07:27.713 [INFO] (9425)  Start to build directory
2023-10-14 23:07:27.715 [INFO] (9425) Creating directory: [/usr/local/soft/datax-web-2.1.2/modules/datax-executor/bin/../logs].
2023-10-14 23:07:27.739 [INFO] (9425) Directory or file: [/usr/local/soft/datax-web-2.1.2/modules/datax-executor/bin/../conf] has been exist
2023-10-14 23:07:27.741 [INFO] (9425) Creating directory: [/usr/local/soft/datax-web-2.1.2/modules/datax-executor/bin/../data].
2023-10-14 23:07:27.764 [INFO] (9425) Creating directory: [/usr/local/soft/datax-web-2.1.2/modules/datax-executor/bin/../json].
2023-10-14 23:07:27.789 [INFO] (9341)  ####### Finish To Install Modules ######


3. 修改配置文件

#/modules/datax-execute/bin/env.properties 指定PYTHON_PATH的路径
vim modules/datax-executor/bin/env.properties
...
#修改如下:

DATAX_ADMIN_PORT=9527  #保持和datax-admin端口一致
PYTHON_PATH=/usr/local/soft/datax/bin/datax.py #指定datax的路径
...

4. 启动服务

#一键启动所有服务
/usr/local/soft/datax-web-2.1.2/bin/start-all.sh

2023-10-14 23:26:40.112 [INFO] (10448)  Try To Start Modules In Order
2023-10-14 23:26:40.118 [INFO] (10456)  ####### Begin To Start Module: [datax-admin] ######
2023-10-14 23:26:40.124 [INFO] (10464) load environment variables
2023-10-14 23:26:40.420 [INFO] (10464) DATAX-ADMIN has been started in process
2023-10-14 23:26:40.427 [INFO] (10625)  ####### Begin To Start Module: [datax-executor] ######
2023-10-14 23:26:40.433 [INFO] (10633) load environment variables
2023-10-14 23:26:40.710 [INFO] (10633) java
2023-10-14 23:26:40.713 [INFO] (10633) Waiting DATAX-EXEXUTOR to start complete ...
2023-10-14 23:26:40.853 [INFO] (10633) DATAX-EXEXUTOR start success

#一键停掉所有服务
/usr/local/soft/datax-web-2.1.2/bin/stop-all.sh

5. 测试datax-web是否可以通过浏览器访问

  • 在浏览器中输入http://ip:9527/index.html就可以访问对应的主界面(ip为datax-admin部署所在服务器ip,port为为datax-admin 指定的运行端口)

  • 输入用户名 admin 密码 123456 就可以直接访问系统
    datax-web部署,前端

mysql数据同步到sql-server

  • 首先完成这个数据同步之前先安装MySQL并创建库和表并写入数据,然后安装sql-server并创建表

1. 在MySQL上创建数据库,并写入数据

  • 由于本机已经安装MySQL,所以不需要安装。
create database db1 default charset=utf8;
use db1;
#创建表格
create table stuinfo(
    -> id int(10),
    -> name char(4) not null,
    -> age int(4) not null,
    -> sex char(10),
    -> likes char(20) );
#导入数据
mysql> insert into stuinfo values('001','bob','25','boy','run'),('002','andy','28','boy','read a book');
#查看表格信息
mysql> select * from stuinfo;
+------+------+-----+------+-------------+
| id   | name | age | sex  | likes       |
+------+------+-----+------+-------------+
|    1 | bob  |  25 | boy  | run         |
|    2 | andy |  28 | boy  | read a book |
+------+------+-----+------+-------------+
2 rows in set (0.00 sec)

2. 安装sqlserver并创建表格

#下载yum源
curl https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo > /etc/yum.repos.d/mssql-server.repo
#安装
yum install -y mssql-server
#程序包安装完成后,请运行 mssql-conf setup 命令选择安装版本并按提示进行安装,具体操作如下:
/opt/mssql/bin/mssql-conf setup
#回车后---》选择版本号---》选择是否同意许可条款--》创建sa的密码--》回车
#配置完成后,请验证服务是否正在运行
systemctl status mssql-server

  • 通过NaviCat连接SQL server并创建表格
    datax-web部署,前端

3. 创建项目

  • 点击项目管理—》添加—》填写项目名称和描述点击确定即可
    datax-web部署,前端
    datax-web部署,前端

4. 添加数据源

  • 点击数据源管理-----》添加—》填写数据源信息
  • 这里需要添加两个数据源分别是MySQL和SQL server的
    datax-web部署,前端

datax-web部署,前端

datax-web部署,前端

5. 创建任务模板

  • 任务管理—》DataX任务模板—》填写任务信息

datax-web部署,前端文章来源地址https://www.toymoban.com/news/detail-799822.html

6. 创建任务构建

  • 任务管理–》任务构建–》步骤1构建reader–>步骤2构建write—>步骤3字段映射–》步骤4构建
    datax-web部署,前端
    datax-web部署,前端
    datax-web部署,前端
    datax-web部署,前端

7.验证:

  • 执行一次任务查看是否同步成功
    datax-web部署,前端
    datax-web部署,前端

到了这里,关于DataX-web安装部署和使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • centos7-datax和datax-web安装以及安装中问题的解决

    一、下载这些软件(见)   系统变量设置(安装 maven和jdk略) vi /etc/profile JAVA_HOME=/usr/local/jdk1.8.0_40 CLASSPATH=$JAVA_HOME/lib/ PATH=$PATH:$JAVA_HOME/bin DATAX_HOME=/usr/local/datax PATH=$PATH:$DATAX_HOME/bin   export MAVEN_HOME=/usr/local/apache-maven-3.6.3 export PATH=$PATH:$MAVEN_HOME/bin   生效系统变量 source /etc/p

    2024年02月10日
    浏览(30)
  • Datax-web入门配置与启动

    在idea中启动Datax-web 需要先将Datax在本地安装,可以参考这篇文章(DataX在win10中的安装) GitHub - WeiYe-Jing/datax-web: DataX集成可视化页面,选择数据源即可一键生成数据同步任务,支持RDBMS、Hive、HBase、ClickHouse、MongoDB等数据源,批量创建RDBMS数据同步任务,集成开源调度系统,支

    2024年02月08日
    浏览(37)
  • datax-web登陆时出现账号密码错误

    目录的位置:datax-web-2.1.2/modules/datax-admin/bin/console.out 发现了java程序没有跑起来,解决对应的bug问题即可,一般都是数据库连接的问题,可能和使用的数据库版本什么的有关系

    2024年02月14日
    浏览(35)
  • 【DataX-Web的搭建(Windows/Linux环境)

    备注:我本地目录规划, 统一放到文件夹: D:javaProjectssync-datadatax D:javaProjectssync-datadatax-web (1) 安装 python3 (配置环境变量),但从github上下载的版本只支持python2.x版本,而现在python3.x正流行,这给我们带来不少麻烦。 datax 支持Python3需要修改替换datax/bin下面的三个pyt

    2024年02月08日
    浏览(30)
  • Centos7.9通过datax-web2.0_用Datax3.0进行增量同步_增量删除_数据更新---大数据之DataX工作笔记006

     1.注意这里的增量同步,不像之前用的DBsyncer或者是,NIFI中的利用binlog的形式,实现真正的实时的数据同步.  2.这里的增量是,指定通过ID,或者时间来进行增量,比如大于2023-07-03 11:44:56的数据仅仅同步这个,或者是,id大于多少的这样,这里建议用时间,因为如果有id用的字符串咋弄来

    2024年02月10日
    浏览(30)
  • 数据同步工具—DataX—Web部署使用

    以前了解datax,感觉对易用性不大好,目前发现已经图形配置工具。简单整理一下。 Datax 的使用过程中,我们会发现,不管是利用 java 调用以及 python 命令启动的方式,我们都无法进行任务的管理,并且每次执行任务前,我们 都需要编辑 Json 配置文件,这是比较繁琐的,随着业

    2024年02月05日
    浏览(35)
  • 5、DataX(DataX简介、DataX架构原理、DataX部署、使用、同步MySQL数据到HDFS、同步HDFS数据到MySQL)

    1.1 DataX概述 源码地址:https://github.com/alibaba/DataX 1.2 DataX支持的数据源 DataX目前已经有了比较全面的插件体系,主流的RDBMS数据库、NOSQL、大数据计算系统都已经接入,目前支持数据如下图。 2.1 DataX设计理念 为了解决异构数据源同步问题,DataX将复杂的网状的同步链路变成了星

    2024年02月11日
    浏览(39)
  • DataX简介、部署、原理和使用介绍

    项目地址:https://github.com/alibaba/DataX 官方文档:https://github.com/alibaba/DataX/blob/master/introduction.md ​ DataX 是阿里云 DataWorks数据集成 的开源版本,在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。DataX 实现了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBas

    2024年02月15日
    浏览(28)
  • 【数据库开发】DataX开发环境的安装部署(Python、Java)

    DataX是阿里云DataWorks数据集成的开源版本。下载即可用,支持linux和windows,只需要短短几步骤就可以完成数据的传输。 官网地址: https://github.com/alibaba/DataX DataX 是阿里云 DataWorks数据集成 的开源版本,在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。DataX 实现了包括

    2024年02月02日
    浏览(38)
  • 使用IntelliJ IDEA和VSCode搭建datax-web-ui开发环境

    记录 :376 场景 :使用IntelliJ IDEA搭建datax-web-ui开发环境。使用VSCode搭建datax-web-ui开发环境。 版本: node-v14.17.3 npm-6.14.13 datax-web-ui开源地址 :https://github.com/WeiYe-Jing/datax-web-ui 一、使用IntelliJ IDEA搭建datax-web-ui开发环境 1.安装nodejs和npm 1.1下载地址 官网地址:https://nodejs.org/dist

    2024年02月10日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包