优化目标主要包括以下几方面:

1 优化平面文件
  如果目标平面文件在某机器的共享目录下,则该机器最好是专门用于文件存储的,如果还应用于其他非文件存储任务,则会降低加载效率
  如果Integration service运行在单节点,则可将该平面文件放置在该单节点所在本地,这样的话,本地数据加载会大大提升效率

2 删除索引及主键约束
  如果目标表包含索引或主键约束,则会降低其加载效率,可暂时将它们删除,待加载结束后再重建还原
  如果需定期进行索引及主键约束的删除和重建还原,每次运行session时可将该操作封装至以下地方:
    1)  pre-load和post-load的存储过程
    2)  pre-session和post-session的SQL脚本
  如果必要的话,可使用基于约束的加载(constraint-based loading)

3 增加数据库检查点间隔
  每当数据库执行Check Point时,session都会进行等待,因此可通过以下两种方式减少检查点的频率:
    1) 加大数据库检查点的间隔
    2) 减少数据库检查点的数量

4 使用大容量负载(bulk load)
  当insert大量数据时,使用bulk load会提升效率(可通过session的target的Target load type中配置)
  bulk load时, Integration Service会忽略记录log信息,从而提高了加载速度。但也可能因此导致数据库无法回滚而无法还原数据
  所以,在使用bulk load时,需事先权衡性能和数据还原的利害关系
  bulk load时,可增大commit间隔来减少bulk load处理的次数,这样可提升性能,因为数据库每次commit之后都会开始一个新的bulk load

5 使用外部加载器
  不同目标数据库可以采用不同的外部加载器
  当目标表是Oracle时, 如果session使用多分区管道加载时,可使用相同分区数创建目标表提升性能

6 避免死锁
  如果Integration Service在尝试写入目标时遇到死锁,则死锁只影响同一目标连接组中的目标。Integration Service 仍然写入其他目标连接组中的目标
  增加Integration Service用于写入会话中目标的目标连接组的数量
  为会话中的每个目标表使用不同的目标连接组,为每个目标实例使用不同的数据库连接名称
  可为每个连接名称指定相同的连接信息

7 增加数据库网络包大小
  增加网络包大小,以允许较大的数据包一次通过网络
  不同数据库,增加数据库网络包大小的方式也不同
  Oracle: 可在listener.ora和tnsnames.ora中设置增加数据库服务器网络包大小

8 优化oracle目标数据库
  当优化数据库时,可检查数据库的存储子句, 空间分配, 回滚区间以及撤回区间
  主要为以下几点:
    1) 检查数据库对象的存储子句,确保数据库表有足够的initial和next值
    2) 将表和索引数据存储在不同的表空间中,最好存储在不同的磁盘上
    3) 确保回滚区间和撤回区间在合适的表空间中,它们最好在不同的磁盘
     因为加载数据时,数据库会使用回滚和撤回区间,同时回滚和撤回区间也要有合适的存储字句
    4) 优化Oracle redo log,该log用于记录数据加载操作的,确保该log文件及其缓冲有足够的大小(可通过init.ora查看相关属性)
    5) 当Integration Service运行在单节点且oracle数据库实例安装在与该节点相同机器上时,可使用IPC协议连接数据库(通过在listener.ora and tnsnames.ora设置)
     使用该协议可提高连接效率

Target优化的更多相关文章

  1. 利用jquery操作dom时,用event.target优化dom操作

    html: <ul id="contents"> <li data-link="#part1">Part 1</li> &l ...

  2. Centos 04 基础系统优化命令

    在Linux这个系统当中,几乎所有的硬件设备文件都在/dev这个目录内.举例来说,IDE介面的硬盘的文件名称即为/dev/hd[a-d],其中, 括号内的字母为a-d当中的任意一个,亦即有/dev/h ...

  3. 富文本编辑器直接从 word 中复制粘贴公式

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  4. ckeditor不能粘贴word的问题

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  5. 自动上传本地图片和word图片(word图片需使用从word粘贴功能)

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  6. word粘贴图片到ckeitor

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  7. ckeditor如何能实现直接粘贴把图片上传到服务器中?

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  8. Fckeditor实现WORD粘贴图片自动上传

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  9. PHPcms编辑器如何粘贴带格式的word文档

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

随机推荐

  1. 32. pt-visual-explain

    mysql -e "explain select name from db01.t01 where code>1" |pt-visual-explain echo " ...

  2. jquery倒计时按钮常用于验证码倒计时

    <!doctype html><html><head> <meta charset="utf-8"> <title>jq ...

  3. oracle 查询clob 列时 很慢 , 未解决

    今天查询一张表 ,这张表有一个clob 列 select *  from  tableName :  很卡.. 难道是查询的太多? select * from tableName where rowN ...

  4. Linux学习笔记:Jenkins的使用(二)

    一些插件的使用 Deploy to container Plugin jenkins安装完成之后,添加插件 Deploy to container Plugin ,这个插件可以将打好的war包部署到t ...

  5. SEO百问

    SEO 的工作过程中,大家都会碰到很多这样或那样的问题,做 SEO 随着时间慢慢变长之后,知识会慢慢地积累,之前的问题也会慢慢的都被解答.这里是码动世界为大家整理的有关 SEO 百问百答. 1. 百度 ...

  6. Educational Codeforces Round 58 (Rated for Div. 2) D 树形dp + 数学

    https://codeforces.com/contest/1101/problem/D 题意 一颗n个点的树,找出一条gcd>1的最长链,输出长度 题解 容易想到从自底向长转移 因为只需要g ...

  7. function()

    avaScript中的function可以有以下两种用法:一是做“普通逻辑代码容器”,也就是我们通常意义上的函数.方法,和我们C/C++里的函数没什么大分别,只是写法稍有不同.用法更加灵活:二是做对象 ...

  8. IMDb、烂番茄、MTC、各种电影行业评分名字整理

    这篇不是技术文章,就是对总是看到但是不知道具体是什么的一些电影名词.评分.来源,学习一下. IMDb 互联网电影资料库(Internet Movie Database,简称IMDb)是一个关于电影演员 ...

  9. mvc 路由伪静态实现

    很多网站都采用伪静态,例如以html.shtml等结尾的url,mvc的路由可以轻松实现. 配置路由 默认路由配置 添加伪静态路由 mvc的路由原理是从上往下匹配的,所以只需要在后面添加自己配置的路由 ...

  10. 【收藏】JS获取鼠标的X,Y坐标位置

    JS的方法: <html> <head> <meta http-equiv="Content-Type" content="text/htm ...