SSIS 问题搜集
原文
http://www.cnblogs.com/ljhdo/category/825364.html
随笔分类 - SSIS
摘要: 数据流利用内存来缓冲数据,并在内存中处理数据转换,由于内存的访问速度是非常快的,所以SSIS数据流转换性能是非常高效的。SSIS Engine将数据分批加载到内存中,当Data Flow将一批新的数据加载到内存时,下游转换组件会对已经加载到内存中数据进行处理,同时,目的组件会将处理完成的数据加载到T阅读全文
摘要: 以数据流的方式来设计Package,将核心数据处理移动到数据流中,一般情况下,能够减少临时表的创建,获得较高的处理性能,在某些情况下,使用暂存表(staging table)能够优化package设计。 1,使用基于集合的更新操作 在大型系统中,数据更新通常是系统的bottleneck,因为SSIS阅读全文
摘要: 假设一种场景:有一个ETL系统,通过记录数据最后更新的时间,对数据进行增量更新。如果Data Warehouse中存在有外键关系的两个表,Group(GroupID,StudentID,GroupData) 和 Student(StudentID,StudentAlternateID,Student阅读全文
摘要: 一般来说,ETL实现增量更新的方式有两种,第一种:记录字段的最大值,如果数据源中存在持续增加的数据列,记录上次处理的数据集中,该列的最大值;第二种是,保存HashValue,快速检查所有数据,发现异动的数据之后,只同步更新被修改的数据。 1,记录字段的最大值,使用DateTime记录源数据上次更新的阅读全文
摘要: 数据量的大小由两个方面决定:行的宽度和数据行的数量,为了减少ETL运行的时间,可以从源数据的提取上做优化,从数据源的输入上控制数据的质量和大小,减少转换和IO。 一,减少行的宽度 1,只加载需要的数据列 在Data Flow中,源适配器允许选择加载的Table 或View,虽然有复选框,从而过滤掉不阅读全文
摘要: 一,数据流设计优化 数据流有两个特性:流和在内存缓冲区中处理数据,根据数据流的这两个特性,对数据流进行优化。 1,流,同时对数据进行提取,转换和加载操作 流,就是在source提取数据时,转换组件处理数据,同时destination加载数据,数据在不同组件之间,同时被处理。 所有的RDBMS操作都是阅读全文
摘要: SSIS Engine 使用Merge Join 转换和 Lookup转换实现SQL语句中的inner join 和 outer join 功能。任何流经Data Flow的数据都会被加载到内存的数据缓冲区中,数据缓冲区能够容纳的数据量决定了转换组件的性能。Lookup转换有一个输入,一个参考表(或阅读全文
摘要: 对于SSIS的数据类型,容易遗漏精度的是DateTime,不正确的使用DateTime,time,decimal 等数据类型,可能导致溢出或数据丢失。 1,Variable 和 Parameter的DateTime Variable 和 Parameter的DateTime对应 DT_DBTIMES阅读全文
摘要: 一,在Data Flow Task中,对于Error Row的处理通过Error Output Tab配置的。 1,操作失败的类型:Error(Conversion) 和 Truncation。 2,错误处理方式:Fail Component,Ignore Failure 和 Redirect Ro阅读全文
摘要: SSIS Package的Executable存在层次结构,例如Package位于层次结构的最顶层,Root Level;Container是其中包含的Executable(Task 或 Container)的Parent Level。如果Event 发生在Child Level,首先会被Child阅读全文
摘要: 一,Execution Tree 执行树是数据流组件(转换和适配器)基于同步关系所建立的逻辑分组,每一个分组都是一个执行树的开始和结束,也可以将执行树理解为一个缓冲区的开始和结束,即缓冲区的整个生命周期。 大家知道,异步转换组件会结束输入缓冲区,创建新的输出缓冲区,所以,执行树的分组实际上通过异步转阅读全文
摘要: Control Flow 和 Data Flow,是SSIS Design中主要用到的两个Tab,理解这两个Tab的作用,对设计更高效的package十分重要。 一,Control Flow 在Control Flow中,Task是最小的单元,Task通过Precedence Constraint来阅读全文
摘要: SSIS提供Package Configurations功能,能够动态修改配置数据,使package执行不同的变量,从不同的connection中获取数据,而这些变化,不需要修改Package,不需要重新部署。 1,将Deployment Model切换到Package Deployment Mod阅读全文
摘要: 使用VS2010创建的SSIS Project有两种deployment model:project deployment 和 package deployment,默认是Project deployment model,这种部署模式使Package的管理更加有效,更容易对package进行trou阅读全文
摘要: 1,利用优先约束来并发处理数据,Data Flow Task 和 Data Flow Task 1 是并发执行的,而 Data Flow Task2 必须等到 Data Flow Task 和 Data Flow Task 1 执行完成之后,才开始执行。 2,如何从一个数据源表中并发处理数据,设计思阅读全文
摘要: 在Package的执行过程中,如果在Data Flow中出现Error,那么Data Flow component能够将错误行输出,只需要在组件的ErrorOutput中进行简单地配置,参考《Data Flow的Error Output》。相比Data Flow,Control Flow对OnErr阅读全文
摘要: 在SSIS的组件中,很多都会连接到数据库进行操作,Connection有一个属性RetainSameConnection,默认值是False,控制着连接的打开和关闭的时机。 1,如果Connection的属性RetainSameConnection值是False,那么SSIS的每个组件在开始使用连接阅读全文
摘要: 1,使用SQL Server job 创建一个job用于执行package,可以制定一个schedule来定时执行job,也可以使用TSql 代码来执行job msdb.dbo.sp_start_job 启动job,但是不等job运行完成,该stored procedure就立即返回,返回的结果标记阅读全文
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决