ssis trainning
1.
防止包打开后hang住,可以使用delay validation=false.
2.2008R2 configuration 起作用的优先级?
一是des ign time.
二是运行的时候指定的文件
2012的parameter 则是相反。
3.注意SSIS包的32位与64位跑的区别?
agentjob 默认是64位的去跑,如果你是包需要在32位下面跑,有选项可以勾选。
你可以使用不同folder下面的dtsexec去跑你的job.
第三方的driver也许需要设置allow in process?
4.load flat file 可以在source 组件上去掉某些列,
但是不能在connection manager上改。
5.SP 作为数据源的时候会有一些问题,set fmtonly off.
SP无法获取元数据。
SSIS 去拿元数据的时候,如果是从存储过程中去拿时候,需要把存储过程执行完才可以。
6.INDEX:
index structure:
include index 中的include 部分是存放在叶子结点中的。
复合索引与include索引的区别?
复合索引的键值都包含在索引的非叶子结点中,但是只能使用排在第一个的字段进行seek,其他的进行scan.
而include的非叶子结点的键值只有键值字段,include字段只存在叶子结点层。
index seek与index scan 的区别?
index seek是在非叶子结点进行查找,而index scan是在叶子结点进行线性扫描。
7.查询优化器:
创建了索引之后?查询优化器何时会使用它?怎么判断要使用它?
选择unique度比较高字段指定一个作为索引键。
一个表在操作的时候只能使用一个索引。
8.存储过程的参数嗅探
第一次编译的时候根据传递的参数产生的执行计划,往往会被重用,但后来传递的参数也许与原来的巨大的不同,造成查询效率巨慢。
这个时候非常建议存储过程重新编译执行计划,这时候可以使用一个关键字指定要求它做这个重编译。
9.exec sp with recompile.
parameter sniffering
一个中庸的计划是不在SP中直接让参数参与语句,而是把参数给本地变量,然后使用变量参与Sql语句的查询。
10.nested looped :
for 让小的结果集放在外面,不要放在里面。切记。
内存使用比较少,driven table存储
里表的是一条一条地取。
scan ,loop join 对于查询结果比较漫长的query 第一感觉是看这些。
如果预计的行数与实际的行数差很多,sqlserver 就很有可能弄错了。
第二种是merge join.
两边的结果集都已排序
然后。。。。
这样就无所谓某个表做driven table, 避免了上一个方法的bug.
内存需求不是太多。缺点就是需要两边都需要排序。
11.从右下到左上
这是看执行计划的方法。
HASH table
找到一个相对小的表,建成桶。
优点:不需要索引
,good for ad-hoc query.
有可能占用巨大的内存,选错了build table.
首先就是要让他们去更新统计信息。然后再执行去看看。然后再drop cache再看看。
他估计的时候是单次的,所以要让次数乘以每次估计的行数与实际的行数相比较。
with force order(强制按你写的表顺序进行join)
with tablelock. 可以好很多。
maxdoop 并发度的问题。
cpu contextswitch
ssis trainning的更多相关文章
- SSIS 包部署 Package Store 后,在 IS 中可以执行,AGENT 执行却报错
可以执行 SSIS Package ,证明用 SSIS Package 的账户是可以执行成功的.SQL Server Agent 默认指定账号是 Network Service. 那么可以尝试一下将 ...
- SSIS 属性:ExecValueVariable
有些Task组件执行完成之后,会产生输出结果,称作Execution Value,例如,Execute SQL Task在执行完成之后,会返回受影响的数据行数.Task组件的Execution Val ...
- SSIS 实例——将SQL获取的信息传递到Email中
最近在为公司财务开发一个邮件通知时遇到了一个技术问题.原来我设计SSIS的是每天将ERP系统支付数据导出到财务支付平台后 Email 通知财务,然后财务到支付平台上进行支付操作.由于那个时候开发时间很 ...
- 介绍几种SSIS部署方式
介绍 如果你已经开发完一个不错的SSIS包并且能够在你的本地完美的运行,每个任务都亮起绿色的通过标志.这时为了能够让这个包处理能够在指定时间运行,你需要将其发布到一个服务器上,并做好相关配置.作为开发 ...
- SSIS 处理NULL
不同于SQL Server中NULL表示值是未知的(Unknown Value),没有数据类型,但是,在SSIS中,NULL是有数据类型的,要获取某一个NULL值,必须指定数据类型,例如,变量 Int ...
- SSIS 数据类型和类型转换
在进行ETL开发时,数据类型(Data Type)是最基础的,但也容易被忽略,楼主使用的SQL Server 版本是2012,用此博文记录,常用的SSIS数据类型和TSQL数据类型的映射.SSIS的数 ...
- SSIS Destination 组件使用Fast-Load mode出错
查看一个Package的历史Message 数据,发现 DataFlow Task 经常出错,错误信息的Description是: Description: "While reading c ...
- SSIS Design6:利用数据流
数据流利用内存来缓冲数据,并在内存中处理数据转换,由于内存的访问速度是非常快的,所以SSIS数据流转换性能是非常高效的.SSIS Engine将数据分批加载到内存中,当Data Flow将一批新的数据 ...
- SSIS Design5:使用暂存
以数据流的方式来设计Package,将核心数据处理移动到数据流中,一般情况下,能够减少临时表的创建,获得较高的处理性能,在某些情况下,使用暂存表(staging table)能够优化package设计 ...
随机推荐
- SVG操作插件:SVG.JS 个人提取部分实用中文文档
先贴出github地址:https://github.com/svgdotjs/svg.js(也就是原文档的说明和文件的下载地址) 创建SVG文档 var draw = SVG('drawing'). ...
- .NET向APNS苹果消息推送通知
一.Apns简介: Apns是苹果推送通知服务. 二.原理: APNs会对用户进行物理连接认证,和设备令牌认证(简言之就是苹果的服务器检查设备里的证书以确定其为苹果设备):然后,将服务器的信息接收并且 ...
- A -- HDU 4585 Shaolin
Shaolin Time Limit: 1000 MS Memory Limit: 32768 KB 64-bit integer IO format: %I64d , %I64u Java clas ...
- python 任意新闻正文提取
在github上搜到一个正文提取程序,测试了一下基本可以对现在大多数大型新闻网站进行提取 后续我会分析一下这个程序的源码 使用非常简单 如下 # -*- coding: utf-8 -*- impor ...
- android开发布局文件imageview 图片等比例缩放:
ImageView的属性scaleType,如果等比缩放的话,就使用CenterInside,如果想固定大小的话,就CenterCrop <?xml version="1.0" ...
- 简单封装cookie操作
1 //设置cookie 2 function setCookie(name, value, day) { 3 var oDate = new Date(); 4 oDate.setDate(oDat ...
- Linux 学习手记(3):Linux基本的文件管理操作
复制文件和目录 在Linux中使用命令cp来复制文件或者目录,使用方式: cp 源文件(文件夹) 目标文件(文件夹) cp命令常用参数: -r 递归复制整个目录 -v 显示详细信息 移动.重命名一个文 ...
- js实现轮播
在我们准备动手之前先了解下几个属性 dom元素的位置的几个相关属性 dom元素宽度/高度 clientWidth/clientHeight 元素的内尺寸 content + padding ...
- JavaScript 学习—— js获取行间样式和非行间样式
1. 问题引入 <head> <style> #div1{ width:150px; height:200px; position:absolute; left:-150px; ...
- 任意类型转换为IntPtr
之前,将数组.结构体等转换为IntPtr使用的是Marshal.Copy().Marshal.StructureToPtr(),但是有个问题自定义的结构体数组没法这样转化,一般网上给出的解决方法就是通 ...