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设计 ...
随机推荐
- ati显卡驱动后,性能不咋地
ubuntu装了ati的闭源驱动后,拖动窗口,会有明显的断裂感,不够平滑
- 常用SQL查询语句
一.简单查询语句 1. 查看表结构 SQL>DESC emp; 2. 查询所有列 SQL>SELECT * FROM emp; 3. 查询指定列 SQL>SELECT empmo, ...
- 如何使用mybatis《一》
mybatis作为ORM轻量级框架一出现就吸引了无数人的眼球,比hibernate要简单且入门较容易,下面开始我的第一个mybatis程序. 一.下载mybatis的包 我们知道任何一个框架都会有其包 ...
- IPC机制--Binder
文章来自 Android技术内幕 系统卷 转:http://www.linuxidc.com/Linux/2011-08/40508.htm 什么是IPC机制以及IPC机制的种类 在Linux中,是以 ...
- ASP.NET MVC自定义AuthorizeAttribute篇知识点讲解—登录限制
1.前言 a.微软对ASP.NET的开发从WebForm到MVC的转变,已经正式过去5,6个年头,现在WebForm和MVC也都越来越完善,小小算来我也已经工作了将近三年,从大学的时候学习ASP.NE ...
- ASP.NET MVC:窗体身份验证及角色权限管理示例
ASP.NET MVC 建立 ASP.NET 基础之上,很多 ASP.NET 的特性(如窗体身份验证.成员资格)在 MVC 中可以直接使用.本文旨在提供可参考的代码,不会涉及这方面太多理论的知识. 本 ...
- RHEL7虚拟机实验快照
配置虚拟机连接网络 首先确保NetworkManager服务正常运行 [root@administrator ~]# systemctl status NetworkManager ● Network ...
- andriod 资源文件之存取操作
来自:http://blog.csdn.net/jianghuiquan/article/details/8569235 <?xml version="1.0" encodi ...
- Android-AsyncTask异步任务(获取手机联系人)
本篇随笔将讲解一下Android的多线程的知识,以及如何通过AsyncTask机制来实现线程之间的通信. 一.Android当中的多线程 在Android当中,当一个应用程序的组件启动的时候,并且没有 ...
- 基础学习day12--多线程一线程之间的通信和常用方法
一.线程之间的通信 1.1.线程之间的通信方法 多个线程在处理统一资源,但是任务却不同,这时候就需要线程间通信. 等待/唤醒机制涉及的方法: 1. wait():让线程处于冻结状态,被wa ...