ETL工具kettle与datax的对比测试案例之Oracle to Oracle

本文通过在相同硬件环境下,使用DataX和Kettle进行全量数据抽取及加载的测试,结果显示DataX在处理600万条、1.12G大小的数据时,比Kettle快36秒,平均流量达8.90MB/s,突显了DataX在大数据处理上的优势。

测试服务器

硬件信息:

[root@catdb ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l       
2                                                                              
[root@catdb ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq                      
cpu cores	: 6                                                                  
[root@catdb ~]# cat /proc/cpuinfo| grep "processor"| wc -l                     
12                                                                             
[root@catdb ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c          
     12  Intel(R) Xeon(R) CPU E5-2603 v3 @ 1.60GHz                             
[root@catdb ~]# free -m                                                        
              total        used        free      shared  buff/cache   available
Mem:          15757        5056         938        1206        9762        9047
Swap:         32767        6765       26002 

io性能:

[root@catdb bin]# time dd if=/root/ubuntu.tar of=test.file
2553093+0 records in
2553093+0 records out
1307183616 bytes (1.3 GB) copied, 7.89118 s, 166 MB/s

real	0m7.906s
user	0m0.454s
sys	0m5.539s

表信息:       

size:    1.12G 

num_rows:6,015,341

columns: 21

测试场景:全量抽取并加载至本库。同时kettle跟datax均在服务器上执行。

测试过程:

kettle的log:

2019/12/20 11:02:44 - Spoon - Transformation opened.
2019/12/20 11:02:44 - Spoon - Launching transformation [rcattest01]...
2019/12/20 11:02:44 - Spoon - Started the transformation execution.

  .........

2019/12/20 11:05:33 - 表输入.0 - Finished reading query, closing connection.
2019/12/20 11:05:33 - 表输入.0 - Finished processing (I=6015341, O=0, R=0, W=6015341, U=0, E=0)
2019/12/20 11:05:33 - 表输出.0 - Finished processing (I=0, O=6015341, R=6015341, W=6015341, U=0, E=0)
2019/12/20 11:05:33 - Spoon - The transformation has finished!!



dataxde的log: 

  .........

2019-12-20 11:19:24.851 [job-0] INFO  JobContainer - 
任务启动时刻                    : 2019-12-20 11:17:13
任务结束时刻                    : 2019-12-20 11:19:24
任务总计耗时                    :                131s
任务平均流量                    :            8.90MB/s
记录写入速度                    :          46271rec/s
读出记录总数                    :             6015341
读写失败总数                    :                   0

测试结果:

        kettle耗时167秒   VS  datax耗时131秒。

        600万条总计1.12G大小的表,datax比kettle快36秒。

ETL工具是用于数据提取、转换和加载的软件工具,它们有助于在不同的数据源之间进行数据移动和转换。下面是对比较常见的几种ETL工具的简要介绍: 1. Datapipeline:Datapipeline是亚马逊AWS提供的ETL工具,它支持从不同的数据源提取和加载数据,并提供了一套易于使用的界面来定义数据转换和处理逻辑。 2. KettleKettle是一款开源的ETL工具,也称为Pentaho Data Integration。它提供了一系列直观的界面和可视化工具,使用户能够轻松定义ETL过程,进行数据转换、清洗和加载。 3. Talend:Talend是另一款流行的开源ETL工具,它提供了广泛的连接器和转换组件,支持从多种数据源提取和加载数据。用户可以通过可视化界面快速构建ETL流程,并进行数据处理和转换。 4. Informatica:Informatica是一家知名的商业ETL工具提供商,其ETL工具提供了大量的功能和可扩展性,适用于各种复杂ETL场景。它提供了可视化工具和强大的功能,支持从多种数据源提取和加载数据。 5. DataxDatax是阿里巴巴开源的ETL工具,它专注于大数据场景,具有高性能和可扩展性。它支持多种数据源和大规模数据迁移、转换和加载操作。 6. Oracle GoldenGate:Oracle GoldenGate是由Oracle提供的实时数据集成和复制工具,它可以在不同的数据库之间实现实时数据同步和数据复制。它支持多种数据库平台,并提供高性能和可靠的数据复制功能。 综上所述,不同的ETL工具在功能和适用场景上有所差异。选择合适的ETL工具应根据具体需求和预算来考虑,例如数据源类型、数据处理能力、易用性和性能要求等因素。最佳选择应基于综合考虑,以满足项目或组织的特定需求。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值