ETL是数据抽取(Extract)转换(Transform)加载(Load )的简写它是指将OLTP系统中的数据抽取出来并将不同数据源的数据进行转换和整合得出一致性的数据然后加载到数据仓库中例如下图就向我们展示了ETL的数据转换效果(图七picbmp)
那么在这一转换过程中我们就完成了对数据格式的更正对数据字段的合并以及新增指标的计算三项操作类似地我们也可以根据其他需求完善数据仓库中的数据
简而言之通过ETL我们可以基于源系统中的数据来生成数据仓库ETL为我们搭建了OLTP系统和OLAP系统之间的桥梁
四项目实践技巧
(一)准备区的运用
在构建数据仓库时如果数据源位于一台服务器上数据仓库在另一台服务器端考虑到数据源Server端访问频繁并且数据量大需要不断更新所以可以建立准备区数据库(图八picbmp)先将数据抽取到准备区中然后基于准备区中的数据进行处理这样处理的好处是防止了在原OLTP系统中频繁访问进行数据运算或排序等操作
例如我们可以按照天将数据抽取到准备区中基于数据准备区我们将进行数据的转换整合将不同数据源的数据进行一致性处理数据准备区中将存在原始抽取表转换中间表和临时表以及ETL日志表等
(二)时间戳的运用
时间维度对于某一事实主题来说十分重要因为不同的时间有不同的统计数据信息那么按照时间记录的信息将发挥很重要的作用在ETL中时间戳有其特殊的作用在上面提到的缓慢变化维度中我们可以使用时间戳标识维度成员;在记录数据库和数据仓库的操作时我们也将使用时间戳标识信息例如在进行数据抽取时我们将按照时间戳对OLTP系统中的数据进行抽取比如在午夜取前一天的数据我们将按照OLTP系统中的时间戳取GETDATE到GETDATE减一天这样得到前一天数据
[] [] [] [] [] []