当前位置: 代码迷 >> 数据仓库 >> 数据仓库施行之三 使用SSIS创建ETL解决方案
  详细解决方案

数据仓库施行之三 使用SSIS创建ETL解决方案

热度:806   发布时间:2013-02-26 00:00:00.0
数据仓库实施之三 使用SSIS创建ETL解决方案

SSIS以及ETL介绍

ETL的选择

  • SSIS
  • 导入和导出工具
  • T-SQL
  • BCP实用工具
  • 复制

什么是SSIS

SSIS是SQLServer的一个组件,作为SQLServer最重要的ETL操作平台,包含了控制流引擎和数据流引擎。SSIS最小的但是是包(package),包可以单独部署。比包更大的是SSIS项目,一个项目可以包含多个包,项目可以部署到SSIS Catalog。SQLServer 2000版本的DTS包不能直接升级到package,SQLServer 2005 以及以后的版本都可以使用向导升级工具来生成新版本的包。

浏览源数据

为什么要浏览源数据

  • 理解业务数据
    • 业务数据需要展现的内容是什么
    • 怎样注释业务值和代码
    • 业务实体之间的关系
  • 检查源数据
    • 数据的数据类型以及长度
    • 数据的大小以及疏散程度
    • 数据质量问题

实施数据流

链接管理器(connection manager)

  • 能链接到一个数据源或者数据目标
    • 桥接器(ADO.NET,OLE DB,等)
    • 连接字符串
    • 验证
  • 项目级别或者是包的级别
    • 项目级别的管理器
      • 可以供项目内所有的对象使用
      • 在解决方案浏览器里面显示
    • 包级别的管理器
      • 供包内的对象使用
      • 只在包内显示

数据流

在大多数的SSIS包中,数据流都是最重要的环节。在数据流中,我们可以对数据进行转换,清洗以及加载。大致可以分为6类处理

  • 行的转换
  • 行组的转换
  • 分割和连接转换
  • 审计
  • 数据清洗
  • 自定义操作

优化数据流的效率

  • 优化查询
    • 仅查询需要的行和列
  • 避免不必要的排序
    • 尽量使用已排序的数据
    • 把IsSorted属性设置为可用
  • 配置控件属性
    • 缓存的大小
    • 临时文件储存
    • 并行
    • 优化模式

 

  相关解决方案