什么是BI、什么是ETL?一篇文章告诉你

商业智能(Business Intelligence,简称:BI),又称商业智慧或商务智能,指用现代数据仓库技术、线上分析处理技术、数据挖掘和数据展现技术进行数据分析以实现商业价值。听起来好高大上啊,憧憬着自己如何挥斥方遒,为公司提供数据分析以支持决策。

ETL工程师 也称为数据库工程师:主要从事系统编程、数据库编程与设计。

ETL 的英文全称叫做 Extraction 抽取,Transformation 转换,Loading 加载。
抽取就是指将数据从一个数据源、或者多个数据源抽取过来的动作,数据源有可能是关系型数据库,也可能是文本文件,或者一个程序的API接口。
转换就是指数据的清洗、合并、拆分、加工、数据逻辑计算处理的过程,通常会按照一定的业务逻辑规则进行计算,最后转换成符合业务模型、分析模型的规范性的数据。简单来说,不管是大数据、小数据,都是将不规范的、不可分析的、转换成规范的、可分析的数据。
加载就是将转换的结果按照分析模型需要的格式将数据写入到目标表,这些目标表就是业务自助分析的数据来源,通过是按照一定建模的方式来组织的,不管是星型分析模型还是雪花型分析模型都是的。
这就是在 BI 中我们通常定义的ETL处理过程。

也有另外的一种ETL,不是面向数据分析的,而是纯数据的处理,比如数据库的数据迁移,多数据源的数据迁移,这是纯数据的开发,用途不一定是面向BI,可能是业务系统之间的数据转换处理。像我们之前的一个很大的项目,原有的ERP是用Cobal语⾔开发的,后面也是因为业务的发展需要使用新的ERP系统,因此就需要把原有ERP的文件格式类型的数据按照新的业务规则、新的ERP对业务表的定义将原有系统的数据抽取到新的平台,这个过程处理非常的复杂。

对于一个大项目,涉及到上千张表的数据处理,光存储过程我们写了上千个,ETL包几百个,因此就需要对ETL的架构做完整的规划和涉及,这就到了ETL架构师的阶段,需要对数据、ETL甚程程序开发思维都有较高的要求。比如异常数据的处理、错误数据的恢复、多批次的ETL包处理管理、几十个开发人员同步开发中的项目管理等。

基本上都是SQL语句加上一些便捷的ETL工具,比如像商业性的ETL工具,Informatica、微软的SSIS、IBM DataStage等等,也有开源的像Pentaho Kettle 等等。无论使用什么样的工具,对数据理解的要求,对SQL技术的要求都是必备的基础,也是作为一个ETL工程师必备的入门条件。

Original: https://blog.csdn.net/m0_61035566/article/details/125104422
Author: Ceasy饿了
Title: 什么是BI、什么是ETL?一篇文章告诉你

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/696252/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球