Target优化
优化目标主要包括以下几方面:
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优化的更多相关文章
- 利用jquery操作dom时,用event.target优化dom操作
html: <ul id="contents"> <li data-link="#part1">Part 1</li> &l ...
- Centos 04 基础系统优化命令
在Linux这个系统当中,几乎所有的硬件设备文件都在/dev这个目录内.举例来说,IDE介面的硬盘的文件名称即为/dev/hd[a-d],其中, 括号内的字母为a-d当中的任意一个,亦即有/dev/h ...
- 富文本编辑器直接从 word 中复制粘贴公式
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- ckeditor不能粘贴word的问题
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- 自动上传本地图片和word图片(word图片需使用从word粘贴功能)
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- word粘贴图片到ckeitor
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- ckeditor如何能实现直接粘贴把图片上传到服务器中?
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- Fckeditor实现WORD粘贴图片自动上传
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- PHPcms编辑器如何粘贴带格式的word文档
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
随机推荐
- Eclispe 错误:找不到或无法加载加载主类
解决办法: Project --> Clean Clean 操作会将该 project 以前的所有编译信息清空,然后默认将所有工程的所有 .java 文件都进行一次编译,这样的话就可以方便的进行 ...
- 序列化还是JSON存储对象?
2018-11-10 先对比一下存诸空间大小:https://pan.baidu.com/s/1I3K8ARfl4x8pC__B-T_vbA 输出的结果是 json: 序列化: 序列化Map: 用JS ...
- 学习java之路 简单日历查询代码
/** * 31天的 1, 3, 5, 7, 8, 10 ,12 30天的 4, 6,9,11 28天(平年) 2 29天(闰年) 2 */ class Demo{ public static voi ...
- 常用JSON接口
地图接口阿里云根据地区名获取经纬度接口http://gc.ditu.aliyun.com/geocoding?a=苏州市 官方文档参数解释: 纬度,经度 type 001 (100代表道路,010代表 ...
- CentOS 7 下安装oracle 11g碰到的一些问题
OUI预检查时会报错,安装时会报两个不符合项目 1 compat-libstdc++ 提示未安装 奇怪这个,yum install compat-libstdc++ 老是提示找不到包,其实正确的安装方 ...
- win10传奇手册CHM打开无法阅读解决
今天在阅读传奇的帮助文档时候,突然遇到了一个问题.打开为空白. 如图所示 我这个情况打开的时候会提示 这个时候我们把 打开此文件总是询问 这个对勾 去掉 惊喜有没有. 哈哈 .有问题欢迎大家私信我!
- C++解题报告 : 迭代加深搜索之 ZOJ 1937 Addition Chains
此题不难,主要思路便是IDDFS(迭代加深搜索),关键在于优化. 一个IDDFS的简单介绍,没有了解的同学可以看看: https://www.cnblogs.com/MisakaMKT/article ...
- SQLServer · 最佳实践 · 透明数据加密TDE在SQLServer的应用
转:https://yq.aliyun.com/articles/42270 title: SQLServer · 最佳实践 · 透明数据加密TDE在SQLServer的应用 author: 石沫 背 ...
- MySQL PROFILE 跟踪语句各阶段性能开销
PROFILE 可以跟踪查询语句各个阶段 Time,IO,CPU,MEMORY 等资源使用情况,比较详细.所以系统一般不会记录太多.启用是全局的,所以每个连接都保持语句的资源使用情况. 查看 PRO ...
- 如何安装ubuntu系统
https://www.cnblogs.com/Chinasf/archive/2010/05/06/1728840.html [Ubuntu 下挂ISO到虚拟光驱的方法] 各种方法参考如下论坛 ...