离线数据同步神器:DataX,支持几乎所有异构数据源的离线同步到MaxCompute

概述

DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各种异构数据源之间高效的数据同步功能。

DataX本身作为数据同步框架,将不同数据源的同步抽象为从源头数据源读取数据的Reader插件,以及向目标端写入数据的Writer插件,理论上DataX框架可以支持任意数据源类型的数据同步工作。同时DataX插件体系作为一套生态系统, 每接入一套新数据源该新加入的数据源即可实现和现有的数据源互通。

离线数据同步在大数据分析,数据备份,数据同步等应用场景中都会被用到,所以本文特别介绍阿里开源的这款神器:DataX!

准备工作

  1. 环境准备:Linux服务器一台,安装有JDK8,maven和python 2.6+;

  2. 下载源码:https://github.com/alibaba/DataX.git

  3. 解压后编译源码:mvn -U clean package assembly:assembly -Dmaven.test.skip=true

出现以下信息,表示编译成功(编译时间稍长,由于DataX支持的数据源很多,对应的依赖包也比较多,所以可能需要20min左右编译时间,具体视下载速度和机器性能而定):

常见错误:

  • 在第3步可能会出现无法编译tablestore-streamclient的错误,请到https://mvnrepository.com/artifact/com.aliyun.openservices/tablestore-streamclient/1.0.0 下载相应的包并放到maven相应路径下;

工具使用

成功编译DataX后,在cd target/datax/datax/目录下就会生成可执行文件,我们就可以来使用DataX同步各种格式的离线数据,如下:

不在这个表格中的数据源格式你可以通过自定义插件编写,具体编码可参考:https://github.com/alibaba/DataX/blob/master/dataxPluginDev.md

比如我们实现一个最简单的任务,将JSON格式化数据输出到控制台:

  1. 切换目录:cd target/datax/datax/bin,比如在我们的192.168.1.63的服务器,切换到目录:/home/data-transfer/datax/target/datax/datax/bin

  2. 查看配置格式命令:python datax.py -r streamreader -w streamwriter

  3. 编写配置文件,stream2stream.json文件如下:

 1{2  "job": {3    "content": [4      {5        "reader": {6          "name": "streamreader",7          "parameter": {8            "sliceRecordCount": 10,9            "column": [
10              {
11                "type": "long",
12                "value": "10"
13              },
14              {
15                "type": "string",
16                "value": "hello,你好,世界-DataX"
17              }
18            ]
19          }
20        },
21        "writer": {
22          "name": "streamwriter",
23          "parameter": {
24            "encoding": "UTF-8",
25            "print": true
26          }
27        }
28      }
29    ],
30    "setting": {
31      "speed": {
32        "channel": 5
33       }
34    }
35  }
36}
  1. 运行脚本:python datax.py ./stream2stream.json,执行后控制台输出:

再比如mysql到mysql的离线数据同步,可使用:
python datax.py -r mysqlreader -w mysqlwriter 获取配置文件模板;

更多的writer可参看plugins目录下的writer文件夹(官方默认包含的Writer,支持自定义可扩展):

更多的reader可参看plugins目录下的reader文件夹(官方默认包含的Reader,支持自定义可扩展):

 

注:如果要使用离线增量同步数据,可指定配置文件中的where过滤;

 

原文链接
本文为云栖社区原创内容,未经允许不得转载。

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

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

相关文章

MaxCompute Hash Clustering介绍

背景 在MaxCompute查询中,Join是很常见的场景。例如以下Query,就是一个简单的Inner Join把t1表和t2表通过id连接起来: SELECT t1.a, t2.b FROM t1 JOIN t2 ON t1.id t2.id; Join在MaxCompute内部主要有三种实现方法: Broadca…

上热搜了!“学了Python6个月,竟然找不到工作!”

在编程界,Python是一种神奇的存在。有人认为,只有用Python才能优雅写代码,提高代码效率;但另一部分人恨不能把Python喷成筛子。那么,Python到底有没有用,为什么用Python找不到工作?CSDN小姐姐带…

wget连接指定端口_新技能:wget参数有用过吗?

Wget是一个从网络上自动下载文件的工具,支持HTTP、HTTPS、ftp三个最常见的TCP/IP协议下载,并可以使用HTTP代理。“wget”这个名称来源于“world wide web”与“get”的结合。自动下载文件时什么意思?就是指:wget可以在用户退出系统…

数据脱敏平台-大数据时代的隐私保护利器

什么是数据脱敏 又称数据漂白、数据去隐私化或数据变形。是对核心业务数据中敏感的信息,进行变形、转换、混淆,使得对业务数据中的身份、组织等隐私敏感信息进行去除或掩盖,以保护数据能被合理、安全地利用。 数据脱敏的重要性 1)…

数据中台送到家 企业数字化转型“输血”变“造血”

戳蓝字“CSDN云计算”关注我们哦!作者 | 刘丹 责编|阿秃出品 | CSDN云计算(ID:CSDNcloud)如果有人要问2019年技术圈什么最热,“中台”绝对当仁不让,从观望到试水,很多公司做出了从 0…

虚拟服务器 端口管理,Apache服务配置虚拟主机(基于域名、端口、IP地址)与简单访问权限管理...

虚拟Web主机在同一台物理服务器中运行多个Web站点,其中每一一个站点并不独立占用一台真正的计算机。httpd支持的虚拟主机类型基于域名的虚拟主机基于IP地址的虚拟主机基于端口的虚拟主机构建虚拟主机------基于域名(1)安装bind、httpd服务。(2)进入named服务的主配置…

这个2684亿交易额里你贡献了多少?

戳蓝字“CSDN云计算”关注我们哦!你们的朋友圈被天猫的双十一交易额刷屏了吗?1今天一大早醒来,按照往常翻了一下朋友圈,朋友圈都在晒天猫的双十一成交额,大家纷纷讨论你为这个交易额贡献了多少,小编表示自己…

大数据驱动业务决策,CDN实时日志重磅上线

背景 CDN是非常重要的互联网基础设施,用户可以通过CDN,快速的访问网络中各种图片,视频等资源。在访问过程中,CDN会产生大量的日志数据,而随着如今越来越复杂的网络环境变化,和业务的迅速增长,日…

oa服务器怎么修改域名,oa域名服务器配置

oa域名服务器配置 内容精选换一换当您想在Internet上通过域名访问您的网站时,可以通过本操作将域名托管至华为云的云解析服务,并为域名添加解析记录。例如,搭建一个网站服务器,采用IPv4格式的弹性IP地址。如果想要实现通过域名“e…

当S8遇上边缘计算:谈阿里云ENS对直播业务场景的支撑

近日,英雄联盟S8全球总决赛落下帷幕,中国战队IG零封FNC夺得冠军。这场比赛引起了国内网友的超高关注度,也给直播平台带来了不小的技术挑战。虎牙直播平台结合阿里云边缘节点技术方案,保障了总决赛当日7000万在线用户的低延时、稳定…

下行物理信道rs_5G物理层服务模型

物理层做为无线通信网络最重要的一层,提供了很多数据传输服务,如下:输通道上的错误检测并向高层进行指示; 传输信道上的FEC(Forward Error Correction) 编码和解码; Hybrid ARQ 软合并; 编码传输信道到物理信道的速率匹…

谷歌“夜莺计划”秘密采集数百万美国人健康隐私;联发科首款7nm产能的5G芯片;2019年天猫双11落幕,最终成交额2684亿……...

关注并标星星CSDN云计算 速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周两次,打卡即read更快、更全了解泛云圈精彩newsgo go go荣耀V30外观剑走偏锋,多维相机矩阵&am…

2135亿!2018 双11阿里数据库技术战报新鲜出炉

00:02:05 成交额超100亿 00:57:56 成交额超666亿 01:47:26 成交额超1000亿 15:49:39 成交额超1682亿 22:28:37 成交额超2000亿 2018新纪录2135亿 在年度大考面前 阿里数据库技术的小哥哥和小姐姐们 又一次为大众递交了诚意满满的答卷 让我们来看看 面对2分05秒破100亿的交易洪…

ftp 553 Could not create file

关闭SELinux:1、临时关闭(不用重启机器): setenforce 0 2、修改配置文件需要重启机器: 修改/etc/selinux/config 文件 将SELINUXenforcing改为SELINUXdisabled 重启机器即可 …

阿里云发布Quick BIV3.0,人人都能轻松进行在线数据分析

提到BI与OLAP这两个概念,对于很多做数据库的技术人员来说并不陌生。BI随着时代的发展逐渐出现了新型BI和传统型BI的划分,从目前的发展程度来看,传统型BI正在慢慢地衰退,由于传统型BI存在从业门槛高,需要专业的IT人员来…

同事操作两个数据源保持事务一致_终于有人把分布式事务说清楚了

前言这篇文章将给大家介绍一下对分布式事务的一些见解,并讲解分布式事务处理框架 TX-LCN 的执行原理,错误之处望各位不吝指正。1. 什么情况下需要使用分布式事务?使用的场景很多,先举一个常见的:在微服务系统中&#x…

数据安全引担忧?get它,让你吃一颗“定心丸”

网络购物、在线外卖、远程教育、共享单车……如今,这些数字化的消费场景在个人生活中早已司空见惯。同时,在数字化浪潮下,越来越多的企业意识到大数据资产的价值,并试图推动其数字化转型。数据经济飞速发展,带来便捷和…

rpm 安装RabbitMQ 3.7.24版本-User can only log in via localhost

登录遇到问题&#xff1a;User can only log in via localhost 解决问题&#xff1a; 找到这个文件rabbit.app /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.7/ebin/rabbit.app将&#xff1a;{loopback_users, [<<”guest”>>]}&#xff0c; 改为&#xff1a;{loo…

TableStore轻松实现轨迹管理与地理围栏

一、方案背景 轨迹管理系统日常生活中使用非常普遍&#xff0c;如外卖派送轨迹、快递物流流转、车辆定位轨迹等。该场景与地理位置管理类似&#xff0c;核心点与瓶颈都在数据库的存储性能与查询能力&#xff0c;同时需要时间字段正序排列&#xff0c;保证轨迹点顺序&#xff1…

i 智慧 | 为云而生、多快好省,这就是星星海的style!

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 晶少责编 | 阿秃出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;不久之前&#xff0c;腾讯云刚刚对外上新了一款服务器&#xff0c;号称深度自研且独一无二&#xff0c;其名字也十二分的卡哇伊&#xff0…