ETL是什么?
ETL的英文全称叫做Extraction(抽取)Transformation(转换)Loading(加载),Extraction就是指将数据从一个数据源或者多个数据源抽取过来的一个动作,数据源可能是关系型的数据库、表,也可能是文本文件,或者是一个程序的API接口,Transformation在BI里面是指数据的清洗、合并、拆分、加工,数据逻辑计算处理的一个过程,通常会按照一定的业务逻辑规则进行计算,最后转换成符合业务模型、分析模型规范的数据,简单来说不管是大数据还是小数据,都是讲不规范的、不可分析的数据转换成规范的、可拆分的数据的一个过程,Loading就是将转换的结果,按照分析模型所需要的的格式,将数据写入到目标表中,这些目标表本身就是业务自助分析的数据来源,通常是按照一定的建模方式来组织的,不管是星型模型,还是雪花模型都是。
也有另外一种ETL不是面向数据分析的,而是纯数据的处理,比如说数据库里面的数据迁移、多数据源的数据迁移,这些是纯数据的开发,用途也并不一定的面向BI的,可能是业务系统直接的数据转换处理。
ETL通过什么方式或者工具来实现,基本上都是通过SQL语句(存储过程SQL查询),加上一些便捷的ETL的工具(比如商业性质的ETL工具Informatica、微软的SSIS、IBM DataStage等,也有开源的Pentaho、Kettle),主要是对数据的理解和SQL技术的要求都是必备的基础。
(异常数据的处理、错误数据的恢复、多批次的ETL包的处理过程)
说一下自己熟悉的技术点
Hadoop
Hadoop是由MR、yarn、hdfs、commom组成,MR是一个计算框架,yarn负责集群的资源调度,这是在2.0版本之后才加入的,hdfs是负责集群的数据存储,commom主要是一些辅助工具。
关于hadoop集群的简单搭建,首先需要准备好虚拟机,然后安装好jdk、mysql,设置ssh免密,关闭防火墙,配置好相关的配置文件core-site.xml,hdfs-site.x