【原创】BI解决方案选型之ETL数据整合工具对比

一、背景

在企业BI平台建设过程中,数据整合始终是一切的基础,简单BI项目可以通过存储过程来实现,而复杂、全面、多方异构数据来源等就大大增加了复杂性,存储过程的可管理性、可维护性、容错性等就无法很好的跟上企业的BI的发展脚步和需要。

因此,一个完善的、健壮的、可视化的、易于开发和管理的ETL解决方案,就非常重要,而这其中,ETL工具的地位不言而喻,更是重中之重。选择一个优秀的ETL工具,不仅可以加快异构数据整合的能力和效率,更能降低开发成本、人员手工维护等成本,好处多多。

现今的ETL工具很多,大企业的有IBM、Oracle的,中小企业的有SSIS、kettle、talend。有开源的,也有收费的,那我们改如何选择呢?

二、对比方面

本人做过ETL开发也有小几年,对于一部分的ETL工具也有很多的接触,也看过其它企业的大型ETL解决方案,今天,就从如下几个我所经历过以及结合一些客户的选择方向来对比下不同ETL工具之间的差异,给予一部分即将选择ETL工具的朋友一些辅助建议吧。

对比的ETL工具,选择这4款主要是我自己接触过,或是有客户采购过,相对比较了解。

  1. talend

  2. kettle
  3. SSIS
  4. informatica

对比的方面主要有如下几方面,每个方面总分都是10分

2.1、成本:软件成本+开发成本+维护成本。

这个是我所知道90%企业都第一考虑的,大家都知道,有多少钱办多少事儿。

  • talend:8分

    1. 软件成本:talend有开源版本,免费,但是实际我用下来,以及一部分客户的实际情况,还是建议买个企业版。因为开源版没有配备完善的自动化调度系统,这个如果开发好之后要定期运行起来,还需要借助其它的调度工具或者自己开发一套调度,估计这个开发也够呛。

    2. 开发成本:如果开源版,前期可能会省很多培训、咨询、售前等费用,但是后期的维护团队、自定义开发的调度平台估计也不会比买企业版花的少。
    3. 维护成本:talend是按照用户数收费的,所以如果开发用户很多的情况下,估计就不划算。
  • kettle:7分

    1. 软件成本、开发成本:和talend一样的,也是分开源和不开源,开源的依然是要自行调度管理。

    2. 维护成本:kettle国内的专业公司好像有点少,一般用的都是做做简单ETL,或者封装一套自己的,所以前期自我探索的成本也比较高。
  • SSIS:8分
    1. 软件成本:这是微软的,因为你只要采购了SQL SERVER,这个工具就是免费给你用的,微软家的产品都是简单、快速入门的,所以使用起来的难度不大。

    2. 开发成本:微软的MSDN是很强大的在线文档,看这个已经足够入门了,咨询几乎不用。
    3. 维护成本:微软系的出了名的好用、上手快。如果你已经采购了SQL SERVER而且还是windows体系的,那我是推荐这个的。
  • informatica:5分
    1. 软件成本:企业级的产品,世界知名,当然软件采购成本也很贵,比上面的贵好多倍。

    2. 开发成本:拥有良好的GUI界面,开发也是脱拉拽,相对还是比较块的。
    3. 维护成本:老牌厂商,软件稳定。

2.2、易用性

易用性可以降低使用人员专业技术水平,降低人员成本。

  • talend:9分

    1. 给予eclipse的GUI界面操作,而且结合了SVN/GIT的版本管理,开发快速、代码管理及时。但是GUI有时候不太稳定。

    2. 拖拉拽的设计风格。
    3. 开发的job直接可以build成jar包,然后部署,或者直接可以在tac后台服务进行部署(企业版才有)。
  • kettle:7分
    1. GUI的界面操作,可以和自己的知识库整合,将开发内容保存到后台元数据库中。

    2. 拖拉拽的设计风格。
  • SSIS:9分
    1. VS的GUI界面操作。

    2. 拖拉拽的设计风格。
    3. 给予GUI的job运行管理、调度平台。
  • informatica:8分
    1. GUI的界面操作。

    2. 拖拉拽的设计风格。

2.3、架构

架构的优劣,也决定的这个产品是否能有足够的能力支撑任何需求变更的挑战。

  • talend:9分

    1. 基于Java体系的,每个ETL job设计完成之后,最终都是编译成了一整个的jar包。

    2. 只要你有JVM环境你就可以运行talend job。
    3. 接收自定义的java代码,可以使得一部分组件无法完成的功能,通过代码来实现。
  • kettle:8分
    1. 基于Java体系的。

    2. 可以使用 job 作业方式或操作系统调度,来执行一个转换文件或作业文件。
    3. 可以通过集群的方式在多台机器上部署
  • SSIS:7分
    1. 基于XML的文件保存格式,基于Windows体系。

    2. 需要.NET FRAMEWORK的支持。
    3. 可以自定义开发.NET程序处理。
  • informatica:8分
    1. 基于他本身的server调度运行。

2.4、 数据源丰富性

ETL主要就是负责数据整合,数据源的丰富性越好,适应能力就越强。

  • talend:9分

    1. 支持各种数据库数据源、web services、文件、云产品等,非常丰富。

    2. 云计算、大数据的支持也是非常迅速的。
  • kettle:9分
    1. 支持各种数据库数据源、web services、文件、云产品等,非常丰富。

    2. 也可以通过自己开发插件来拓展。
    3. 有很多的第三方插件支持。
  • SSIS:7分
    1. 支持各种数据库数据源、web services、文件等

    2. 云产品的支持当前只是支持他自家的微软云。
    3. 有很多的第三方插件支持。
  • informatica:6
    1. 支持各种数据库数据源

    2. 分为不同的版本,标准版,实时版,高级版,云计算版。同时,它还提供了多个可选的组件

2.5、 ETL组件丰富性

ETL组件的完善,可以减少硬编码,提升开发效率和交付质量。

  • talend:9分

    1. talend组件非常多,他将很多的功能都拆分成了不同的组件,大概是3000多个,这样子的组件细化,可以给出不同的组合,满足很多不同的任务需要。

    2. 尤其是对大数据、云计算组件的支持更是业内比较快、领先的。
  • kettle:8分
    1. 组件也是十分丰富。

    2. 自己可以拓展开发第三方组件。
    3. 对于云计算的支持也是比较好的。
  • SSIS:7分
    1. 组件相对比较丰富,而且结合了数据库维护的一些功能,使得不仅仅局限于ETL这单块的内容。

    2. 可以自定义开发组件。
    3. 对于云计算、大数据等支持不是很快。
  • informatica:6分
    1. 组件相对也比较丰富。

    2. 对于云计算也有支持,但是在不同的产品模块,无形中增加了软件成本。

2.6、 性能

性能是决定着数据刷新的频率,对于很多实时性要求较高的业务,这是重点。

  • talend:6分

    1. talend因为要先编译、后运行,因此第一次的运行来看,性能相对比较慢。

    2. talend是基于jvm的,所以很多方面需要调优。
  • kettle:7分
    1. kettle本身会有一定的优化在其中,所以整体运行效率会比talend快一些。

    2. 很多参数也是需要实际情况调优的。
  • SSIS:8分
    1. 如果针对于其本身的MS系产品,效率是杠杠的,微软的测试1TB只需要2小时。

    2. 但是针对其它家的数据库,也是需要优化的,但是综合来看,还是比较块的。
  • informatica:8分
    1. 针对于本身的数据源,其内部就做了很多的调优,因此就会快很多。

2.7、 部署

部署主要是考虑是否能支持横向拓展,以便更快应对数据量的增长。

  • talend:8分

    1. 开发支持多人合作开发,通过SVN/GIT进行协作。

    2. 可以通过部署多个集群job server来负载均衡的运行job。
  • kettle:8分
    1. 支持集群式的部署方式。
  • SSIS:5分
    1. 暂时没有集群式的部署方式。

    2. 但是可以通过job之间的协调调度来实现,技术成本比较高。
  • informatica:6分
    1. 需要部署运行在其server上。

2.8、 监控

完善的监控体系,可以即使的发现ETL内部问题,提升运行稳定性,减少数据整合的错误。

  • talend:8分

    1. 拥有良好的后台运行监控和log日志记录。
  • kettle:8分
    1. 拥有良好的后台运行监控和log日志记录。
  • SSIS:9分
    1. 拥有良好的后台运行监控和log日志记录。

    2. 可以收集不同的运行KPI,分析运行的效率问题。
  • informatica:8分
    1. 拥有良好的后台运行监控和log日志记录。

2.9、 数据质量管理

ETL中包含数据质量管理应该是未来的趋势,而不是简单将数据从A搬到B。

  • talend:8分

    1. 有数据质量管理的支持。

    2. 也可以通过自己代码实现。
  • kettle:8分
    1. 有数据质量管理的支持。

    2. 也可以通过自己代码实现。
  • SSIS:9分
    1. 有自己的数据质量检测组件。

    2. 也可以通过数据质量服务这个软件来实现(免费)但是整合起来的技术难度还是有一些。
  • informatica:7分
    1. 专门有一个产品 Informatica Data Quality 来保证数据质量

    2. 但是这个软件成本有点高。

2.10、 技术支持and社区

主要考虑到未来的疑难问题解决。

  • talend:7分

    1. 在国内的社区和技术支持相对比较薄弱。

    2. 但是好在技术支持比较稳定,可以申请原厂的case,有人回复。(不买产品咨询,应该要收费的)
  • kettle:8分
    1. 国内的社区还不错,很多开源的小企业的人都是在使用的,也有很多的社群活跃。
  • SSIS:9分
    1. 微软的支持无处不在。

    2. MSDN、官方博客都几乎可以找到人,比较方便。
    3. 而且使用人员也很多。
  • informatica:8分
    1. 专业的人员倒是挺多,但是咨询应该不是免费的。

三、总结

最总我们来看得分

产品/考虑方面


成本:软件成本+开发成本+维护成本(10分)


易用性(10分)


架构(10分)


数据源丰富性(10分)


ETL组件丰富性(10分)


性能(10分)


部署(10分)


监控(10分)


数据质量管理(10分)


技术支持&社区(10分)


总分


建议


talend


8


9


9


9


9


6


8


8


8


7


83


1、如果你是java体系的爱好者。你希望跨平台。

2、如果你未来希望能更好接入大数据、云计算。

3、你更喜欢灵活控制每一个ETL组件。

4、对于job调度的要求不是很高。


kettle


7


7


8


9


8


7


8


8


8


8


78


1、如果你是java体系的爱好者。你希望跨平台。

2、如果你未来希望能更好接入大数据、云计算。

3、你们未来是自己打算开发一套调度系统的。


SSIS


8


9


7


7


7


8


5


9


9


9


78


1、你是微软系的服务器、产品为主。

2、你渴望入门快、成果见效快。

3、你希望易于维护、开发快捷,管理简单。


informatica


5


8


8


6


6


8


6


8


7


8


70


1、你有钱。

2、你有丰富的技术人才。

3、你有大量的维护团队。

如果觉得这篇文章看了对您有帮助,请点击右下方按钮【推荐】

以方便他人在 DataStrategy 博客推荐栏中快速看到这些文章,thanks!。

原文地址:https://www.cnblogs.com/xiongnanbin/p/10213934.html

时间: 2024-07-30 03:14:35

【原创】BI解决方案选型之ETL数据整合工具对比的相关文章

BI解决方案分享:地产BI数据分析系统的建设

近几年中国地产行业发展迅猛,行业整合已成大势所趋,逐步由区域开发转变为集团化的跨地区综合开发商.然而,对于处在超常规速度发展的房地产企业来说,其面临的挑战也是超常规的.企业要在有限的资金和人力条件下,同一时间,对全国区域范围内的多个项目做出科学的决策,合理地平衡资源,这是一项非常复杂的系统工程.面对这样的问题,企业亟需一个变革性的BI解决方案来对全公司数据进行精细化集中分析处理. BI解决方案具有自动灵活,准确及时的特性,可以帮助企业将数据处理的工作重点从原本的数据整合转移到数据分析上来.在以往

【Kettle】数据整合之FTP下载+本地照片文件导入Oracle数据库

一.数据整合业务场景     1.1 背景 因GA某系统进行调整,导致原先从该系统备份数据库获取的相应数据资源无法正常获取,后续的数据统一由GA某系统每日将前一日的ZTRY照片数据压缩后上传到指定的FTP服务器上,需要从该FTP上下载下来,解压后将JPEG照片数据解析加载进入数据库.     1.2 目标 需要建立作业可以定时从FTP下载服务器将ZIP文件下载到本地指定文件夹,将ZIP文件解压后,获得JPEG格式照片,通过Kettle转换将照片进行解析,同时按照一定的规则将照片的名字等信息解析拼

胖子哥的大数据之路(13):破题,或从数据整合开始

一.前言 这是关于互联网上一篇文章的读后感,原文标题<大数据成变量,BAT入口生态或生变局>.读这篇文章既有醍醐灌顶之顿悟,亦有如履薄冰之恐惧,阿里好强,动作好快.其实,最近一直在思考当代企业信息化架构EA框架的调整,基本的一个思路是数据上提,与业务架构平齐,不再只是作为业务系统的功能支撑,而是自成一片天地,独立运营.至于数据化运营与现有业务的关系,则可一分为二:其一.可进,进可开疆辟土,基于数据衍生新的业务形态:其二.可退,退而求其次,辅助优化现有业务,从简单粗暴,到整合 营销.变现空间,天

金蝶商业智能BI解决方案

在经济高速发展的中国,企业经过多年的信息化建设,积累了海量的数据.与此同时,大量数据带来信息的不明晰,不对称,产供销不平衡等问题困扰了大批企业决策者.如何在这些数据中找到关键信息来指导企业的发展战略?如何通过数据指标的全局判断来对一些可能发生的问题进行预防和及时调整?如何随时随地了解企业运营状况?目前,除了金融.可能发生的问题进行预防和及时调整?如何随时随地了解企业运营状况?目前,除了金融.企业和大型制造行业,如钢铁.汽车.机械以及能源.化工.交通等行业的增长也比较明显,商业智能的应用和发展正以

零售行业BI解决方案:就连神秘的新零售也亟需

随着物质水平的提高,人们的品味也在随之增高.品质走高,消费升级,零售行业在近些年迅猛发展,更迭换代.从实体店线下零售到线上零售,再到今天新概念新零售,零售业在变得越来越智能. 传统的零售,甚至前几年的线上零售需要零售行业BI解决方案,这毋庸置疑,很多人能够理解.因为零售业的数据信息极为庞大繁杂,处理起来极为吃力,长期以来降低赢利的效率. 在传统零售阶段,有的企业者仍不太理解和接受商业智能BI参与进日常的运营中,觉得没有必要,但是零售业更迭换代速度之迅猛,连马云都说“未来的十年.二十年,没有电子商

Quick Apps for Sharepoint小型BI解决方案

Quick Apps for Sharepoint介绍 Quick Apps for Sharepoint前身是Quest Webpart ,由企业软件开发商QuestSoftware开发,QuestSoftware是谁?DBA们可能都认识的的Toad也是出自QuestSoftware之手,12年被戴尔收购后Quest Webpart 被更名为Quick Apps for Sharepoint,它可以简单理解成一套Sharepoint Webpart集合套件,熟悉Sharepoint的人都知道,

BI产品选型的流程及主流产品

商业智能.大数据都是近几年来越来越流行的信息化名词,不少企业现在都很注意信息化建设,于是商业智能产品也如雨后春笋般涌现.本文就介绍了BI产品选型的流程,以及挑选了几大热门的BI产品,给大家选型方面的参考建议. 一.产品选型流程 一般企业在进行BI产品选型时,建议参考以下的步骤: 组建BI项目工作团队: 明确企业需求,制定详细的项目目标: 分析梳理内部数据,确保数据质量: 了解市场BI产品信息,确定需求产品的范围.一般企业BI产品选型重点关注的问题有:1)系统扩展性和可靠性.2)数据处理能力.3)

单细胞数据整合方法 | Comprehensive Integration of Single-Cell Data

操作代码:https://satijalab.org/seurat/ Comprehensive Integration of Single-Cell Data 实在是没想到,这篇seurat的V3里面的整合方法居然发在了Cell主刊. 果然:大佬+前沿领域=无限可能 可以看到bioRxiv上是November 02, 2018发布的,然后Cell主刊June 06, 2019正式发表. 方法的创意应该在2017年底就有了,那时候我才刚来做single cell. Single-cell tra

【原创】MySQL和PostgreSQL 导入数据对比

在虚拟机上测评了下MySQL 和 PostgreSQL 的各种LOAD FILE方式以及时间. 因为是虚拟机上的测评,所以时间只做参考,不要太较真, 看看就好了. MySQL 工具: 1. 自带mysqlimport工具. 2. 命令行 load data infile ... 3. 利用mysql-connector-python Driver来写的脚本. PostgreSQL 工具: 1. pgloader 第三方工具. 2. 命令行 copy ... from ... 3. 利用psyco