datax简单入门介绍以及部分概念

datax初步认识:

1,我们先来了解一下,datax是什么,它是用来干嘛的?

datax是一个离线采集异构数据源工具,支持将源头数据源(后面简称reader)数据采集到目标数据源(后面简称writer),主要作用是将数据从一头拉倒另外一头,期间支持简单数据过滤,规整,,目前datax支持多种reader和writer,包括但不仅限于mysqlreader,oraclereader,ftpreader,mysqlwriter,oraclewriter,ftpwriter。具体可以查看(https://github.com/alibaba/DataX);

2,接下来我们大致了解一下datax数据交换模式

datax采用插件模式设计,reader与reade之间,reader与writer之间完全解耦,可做到互不影响。datax有三大部分,reader,writer,channel,reader和writer间依赖channel传输数据,reader通过recordSender.sendtoWriter()往channel写入数据,writer通过recordReceiver.getFromReader()从channel拉取数据,channel的底层是一个队列,先进先出(应该是,这里没仔细看源码做确认)。正是由于这插件模式,我们之后自定义开发插件的时候只需要实现插件本身的逻辑+往channel写数据或从channel拿数据即可,其他的交给框架,这就大大方便我们自定义开发插件了,后面我会详细讲解怎样自定义开发插件,建议先学会用datax采集数据之后,再考虑自定义开发插件。

datax部分概念:

Job: Job是DataX用以描述从一个源头到一个目的端的同步作业,是DataX数据同步的最
小业务单元。比如:从一张mysql的表同步到odps的一个表的特定分区。 Task:
Task是为最大化而把Job拆分得到的最小执行单元。比如:读一张有1024个分表的
mysql分库分表的Job,拆分成1024个读Task,用若干个并发执行。 TaskGroup:
描述的是一组Task集合。在同一个TaskGroupContainer执行下的Task集合称之为TaskGroup
JobContainer: Job执行器,负责Job全局拆分、调度、前置语句和后置语句等工作的工作单元。类似Yarn中的JobTracker
TaskGroupContainer: TaskGroup执行器,负责执行一组Task的工作单元,类似Yarn中的TaskTracker。

DataX是阿里巴巴集团开源的一款大数据同步工具,用于数据传输和数据交换。它支持超过20种不同类型的数据源和数据目标的连接,包括但不限于关系型数据库、HDFS、Hive、HBase等。 DataX通过配置任务的方式实现数据传输和同步。用户可以通过一个JSON格式的配置文件来定义任务的源数据源和目标数据源,配置数据源的连接信息、字段映射和数据过滤等。配置完成后,任务可以通过命令行或调度系统来执行。 DataX具有以下几个主要功能: 1. 强大的数据源支持:DataX支持多种数据源的连接,包括MySQL、Oracle、SQL Server等主流关系型数据库,以及HDFS、Hive、HBase等大数据组件。用户可以根据需要选择合适的数据源进行同步。 2. 灵活的数据转换能力:DataX提供丰富的数据转换函数,可以对数据进行各种操作,如字段映射、数据过滤、数据转换等。用户可以根据需要编写自定义的转换函数,实现复杂的数据处理逻辑。 3. 高效的数据传输性能:DataX采用多线程并行传输的方式,可以同时处理多个任务,并且在任务执行过程中可以动态增加或减少并发线程,以适应不同的数据传输场景。 4. 可扩展的插件机制:DataX提供了灵活的插件机制,用户可以根据需要开发自定义插件来支持更多的数据源和数据目标。同时,DataX还支持第三方插件,可以方便地进行扩展和集成。 总之,DataX是一个功能强大,易于使用的大数据同步工具,通过配置任务实现数据源和目标的连接和传输,可以满足各种复杂的数据同步需求。它的开源特性和丰富的插件机制,也使得它具备了良好的可扩展性和灵活性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值