1. 关于DataX

1.1. 前言

为什么写这篇文章,因为初出茅庐的时候,曾经遇到的一个面试官就是DataX的作者之一,而当时我还偏偏因为业务需求做了个数据库的同步工具,我当时不知道他做过这么专业的同步工具,被虐的老惨了,他面试的其中一个问题就是,如果要你去推销一款数据库同步工具,你该怎么推销?

相信没有深入了解过这个领域的可能说不出一两点优势来,而我当时做的工具,也就重在实现功能上了,唯一的优点我觉得就是还算通用,因为也是通过配置json文件设置对应表间的关系来实现不同数据库之间的数据同步

1.2. DataX的优势

所以现在在来谈谈数据同步工具该怎么推销,那不就是把数据同步工具可完善,可扩展的部分尽可能的讲一遍吗

  • 首先是工具本身方面,我们需要DataX在传输性能上有保证,它采用的任务架构可以保证在单机多线程上速度随并发线性增长
  • 那么如何保证传输过快,导致数据接收方崩掉呢,所以DataX提供了精准的速度控制模式,可以随意调整作业速度,保证达到最高效的同步速度
  • 数据同步还需要什么?多了,不同的数据库可能字段类型需要一定转换,根据需要对数据可能需要进行特定的过滤,脱敏,补全操作,最好还可以用户自定义操作,这些DataX也提供了
  • 同步的时候我们需要关注什么?对了,最好还有同步的进度,速度,错误情况,传输流量,cpu状况等等的可视化监控
  • 对开发者而言,我们需要什么?我们需要的是配置简单,操作容易,依赖少,这也是DataX的特点
  • 上述这些都是在正常情况下的操作,我们需要应对异常情况,比如网络波动,甚至宕机,所以我们需要DataX具有健壮的容错机制,对于这个,它提供了丰富的重试策略,和Task级别的重新调度(一个Job任务它会分成多个Task)
  • 好了,你们还能想出同步工具需要支持的额外需求吗?

这里给出DataX的官方Github地址,我并没有在推广这个工具哦,如果你们的系统用了大量阿里云提供的服务比如odps,ads,那它倒是天然适配了,用它正合适,不过如果是mysql到mysql的同步就不一定要用这个了,业界流行的似乎是canal也是阿里的,至于这两个哪个快,我没有测过,感兴趣的可以自行尝试

关于DataX的更多相关文章

  1. datax+hadoop2.X兼容性调试

    以hdfsreader到hdfswriter为例进行说明: 1.datax的任务配置文件里需要指明使用的hadoop的配置文件,在datax+hadoop1.X的时候,可以直接使用hadoop1.X/ ...

  2. [推荐]DataX、DbSync和Timetunnel学习贴

    [推荐]DataX.DbSync和Timetunnel学习贴 一 DataX 二 DbSync 三  Timetunnel TimeTunnel :http://code.taobao.org/p/T ...

  3. 关于sqoop与datax。 和sqoop to oracle插件OraOop

         之前我还在想了解下datax,是否有可能替换sqoop,但了解后发现,datax和sqoop的业务场景是不同的.前者适合异构数据库的同步,后者适合hdfs与rdbms互相之间的同步.针对sq ...

  4. DataX的简单编译安装测试

    搭建环境:     Java > =1.6     Python>=2.6 <3     Ant     Rpmbuild     G++     编译DataX: 进入rpm文件夹 ...

  5. datax中oracleWriter

    在使用datax的oraclewriter时,由于对oracle的不熟悉,以及c++编译的不熟悉,颇费了一些周折.在此,记录一下,供再次使用的人参考. 1.oracleWriter :oracle提供 ...

  6. 异构数据源海量数据交换工具-Taobao DataX 下载和使用

    DataX介绍 DataX是一个在异构的数据库/文件系统之间高速交换数据的工具,实现了在任意的数据处理系统(RDBMS/Hdfs/Local filesystem)之间的数据交换. 目前成熟的数据导入 ...

  7. 淘宝异构数据源数据交换工具 DataX

    淘宝异构数据源数据交换工具 DataX 阅读目录 DataX是什么? DataX用来解决什么? DataX特点? DataX结构模式(框架+插件) DataX在淘宝的运用 DataX是什么? Data ...

  8. 数据同步DataX

    数据同步那些事儿(优化过程分享)   简介 很久之前就想写这篇文章了,主要是介绍一下我做数据同步的过程中遇到的一些有意思的内容,和提升效率的过程. 当前在数据处理的过程中,数据同步如同血液一般充满全过 ...

  9. 开源作业调度工具实现开源的Datax、Sqoop、Kettle等ETL工具的作业批量自动化调度

    1.阿里开源软件:DataX DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL.Oracle等).HDFS.Hive.ODPS.HBase.FTP等各种异构数据源之间稳 ...

  10. DaTaX当成jar包当作第三方库启动的相关问题

    上一篇已经大致的将了本地状况下DaTaX的纯Java代码启动的过程 http://www.cnblogs.com/blogsofmy/p/8287637.html不了解的请点超链接 这次我们来说说文件 ...

随机推荐

  1. 第二阶段冲刺(个人)——two

    今天的计划: 测试登录功能并优化. 昨天做了什么呢?  修改登录界面. 遇到的困难:一些标签运用不好,过程进度慢,改了又改.

  2. ZJOI2019赛季回顾

    退役了. NOIP2018 day1没什么好说的. day2开考后看完题:这个T3 TM不是DDP吗? 考前刚学过这东西,还没去写过 当时不知道在想什么,胡了T1 60和T2 50分保底之后就去刚T3 ...

  3. 2019 Nowcoder Multi-University Training Contest 4 E Explorer

    线段树分治. 把size看成时间,相当于时间 $l$ 加入这条边,时间 $r+1$ 删除这条边. 注意把左右端点的关系. #include <bits/stdc++.h> ; int X[ ...

  4. MyBatisSystemException 【exception】

    org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.type.TypeException: ...

  5. 在执行一行代码之前CLR做的68件事

    因为CLR是一个托管环境,所以运行时中有几个组件需要在执行任何代码之前初始化.本文将介绍EE(执行引擎)启动程序,并详细检查初始化过程.68只是一个粗略的指南,它取决于您使用的运行时版本.启用了哪些功 ...

  6. proc介绍,free命令查看内存

    proc介绍 https://www.cnblogs.com/dongzhuangdian/p/11366910.html https://blog.csdn.net/majianting/artic ...

  7. 请写出css中选择器(元素选择器、类选择器、id选择器)的优先级顺序,和当各种选择器组合时,优先级的计算规则是什么?

    id选择器>类选择器>元素选择器 规则:选择器的权重值表述为4个部分,用0,0,0,0表示. 通配符*的权重为0,0,0,0 标签选择器.伪元素选择器的权重为0,0,0,1 类选择器.属性 ...

  8. getpeername、getsockname

    函数原型: #include<sys/socket.h> int getsockname(int sockfd, struct sockaddr *localaddr, socklen_t ...

  9. 使用Java将搜狗词库文件(文件后缀为.scel)转为.txt文件

    要做一个根据词库进行筛选主要词汇的功能,去搜狗下载专业词汇词库时,发现是.scel文件,且通过转换工具(http://tools.bugscaner.com/sceltotxt/)转换为txt时报错如 ...

  10. centos7.5 搭建上FTP服务

    1.安装FTP # 查看ftp 是否安装 rpm -qa | grep vftpd # 安装vsftp yum install -y vsftpd # 设置ftp 开机启动 systemctl ena ...