数据迁移是商业智能的重点,可以归纳为如下3点。
(1)数据抽取
数据抽取前需要清楚以下内容:数据源来自于哪几个业务系统,各个业务系统的数据库管理系统分别是什么,是否存在手工录入的情况。
在确定数据抽取方式时,根据不同情况,不同业务源数据的抽取方式可能不相同。在对数据抽取方式进行设计时,首先根据数据抽取的范围,估算出每次抽取的数据量;然后再从实际的业务系统数据库服务器当前的运行情况,ETL服务器与业务系统数据库服务器之间的网络连接情况,客户对数据实时性的要求等方面考虑,选择最合适的抽取方式。
数据抽取可以有两种方式:直接抽取方式、间接抽取方式。
在进行数据抽取时,先明确每个数据表采用何种数据抽取方式。直接抽取方式是指数据抽取过程中直接从业务源数据库到目标库,中间没有经历过任何过渡。但是直接抽取方式必须确定业务系统数据库为ETL过程提供的数据库用户名、授权给该用户访问的表名称,对该用户授权的方式、数据抽取时相关的安全措施等内容。间接抽取方式是指采用文件交换的方式进行数据抽取,需要考虑网络连接、数据库的分布等客观因素。在文件交换的过程中,需要确定文件交换的位置、文件的格式、对文件完整性的检查、文件传输的方式、文件是否传输完毕的标记、文件重新传递的标记等内容。间接抽取方式也称做异步ETL方式。
(2)数据转换(www.xing528.com)
数据转换的含义是将业务系统内的各种源数据,通过自定义的转换脚本或者其他一些计算方法,将源数据转换成符合数据仓库要求的数据。转换过程包含了对数据不一致性的转换,数据粒度的转换和满足一些计算指标的转换。
如果转换的目标表是针对数据集市中的表,那么当每一个字段确定好转换规则后,需要对同一表中的所有字段进行综合,以SQL语句的方式记录下来。这期间包含了将业务系统数据按照数据仓库粒度进行聚合的过程。对于比较复杂的转换规则,无法在一个SQL语句中完整地表现一个表所有字段的,可以拆分为多个SQL语句。
在这一步,需要形成转换规则文档。内容包括数据集市中的所有字段如何关联到业务系统中的各个字段,以及每个字段的运算转换函数及参数,转换的方法,还包括每个表的SQL转换语句等内容。
(3)数据装载
数据经过转换、清洗后,需要装载到目标数据库中。数据装载的方式有多种:全表对比方式、时间戳方式、日志表的方式、全表删除后再插入的方式。这部分内容在后续章节中有详细的介绍,在此不再赘述。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。