云平台
在线体验
免费下载

BI解决方案为什么不能少了ETL?

       很多企业启动一个BI项目时,其需求的出发点往往都是想找一个系统,来自动做报表,并且做的漂亮点,有图表,还有,能让业务人员自己也可以做报表,最好是能在手机上看报表。于是,就开始找厂商进行PK,PK的重点放在: 


      1、做报表哪家更容易上手

      2、手工报表哪家可以实现

      在与企业的交流中,经常会遇到类似的场景:

      问:你们有多个业务系统吗? 

      答:有啊。

      问:那你们的需求报表中来自不同系统的数据吗? 

      答:肯定有啊,比如电商与ERP就是不同的系统,但我们分析销售是需要取自两个系统的。 

      问:那你们有没有想过,这两个系统的数据是怎么做到一张报表里去的吗? 

      答:这个......不是你们BI厂商应该解决的吗? 

      答:是的,是BI厂商应该解决的,但是,就算这一期的需求我们BI厂商帮助你们解决了,在后面的使用中,你们又有一张报表还需要从另外一个新的系统中取数,怎么办?也就是说,就算你们掌握了怎么使用BI工具做报表,但是,你们没有办法取到数据,怎么办? 

      答:可以啊,做报表时,同一个报表,可以将不同数据源的数据按规则整合在一个报表中的呀。 

      问:如果这个规则并不那么简单,怎么办? 

      答:...... 


      那么,我们到底应该怎么做,才能从根本上解决:让多个业务系统的数据很方便的在一个报表中取到呢?解决方案很简单,就是通过ETL工具,将多个业务系统的数据整合到一个数据中心(数据仓库)中去。一旦在同一个数据库中已经包含了多个业务系统的数据,那么,随心所欲的取数,就会变成现实。 


      ETL是什么?ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源经过抽取(extract)、转换(transform)、加载(load)至目的数据库的过程。 


      在这里,我们先不去讨论ETL到底在技术上是怎么实现的,我们更关心的是,我们在什么情况下,就必须使用ETL工具? 主要是以下几种情况: 

      1、业务系统的数据一般是按照单据与流程来设计与存贮的,并不能很好的用在数据分析上,一个很常见的例子就是基础资料分类,系统里的编码规则或分类方式并不能满足分析的需求,所以一般都有手工维护一套。那这时候我们就需要将数据进行必要的清洗与整理; 


      2、对于一些ERP,如用友U8较低的版本,它是一年一个数据库,要实现跨年度分析,就必须将每年的数据库整合到一个数据库中;又或者有些零售系统,因为数据量非常大,甚至每个月的小票就是一个表,这样,就必须将这些交易数据按照时间维度重新整合到一个表中。


      3、不同的业务系统,经常会存在主数据不一致的情况,比如同样一个客户,可能在ERP中是一个编码,在CRM中又是另外一个编码,甚至可能有一对多的情况出现。此时,就要通过ETL的数据清洗,完成主数据的统一管理; 


      4、不同业务系统通常是负责企业运营的不同业务,而这些业务之间是有流程上并行或串行的咬合的,比如客户销售的前期跟进流程在CRM中完成,一旦成交,订单的执行则在ERP中完成,当订单交付之后的服务,又是在CRM中完成。当我们要完整的对一个客户进行分析时,是必须将ERP与CRM的数据整合在一起,才能一窥全貌的。 


      所以,ETL在实际应用中,工作量会与业务需求的复杂性成正比。远不止大家认为的那么简单,一定要在BI项目选型时给予足够的重视。