性能瓶颈之System
如果Source,Target,Mapping和Session都不存在性能上的瓶颈,则问题可能会出在System
因为Integration Service运行时,它使用了System的资源去运行组件,session,以及读写数据
也使用System内存资源为Aggregator, Joiner, Lookup, Sorter, XML和Rank等组件创建缓存文件
如何判定System的性能瓶颈
使用Workflow Monitor
可在运行session时,通过在Workflow Monitor查看CPU, 内存, 及分页情况
CPU:系统运行时的CPU使用率,包括运行其他task
内存:
系统运行时的内存使用率,包括运行其他task
如果内存使用率接近95%,检测一下系统中运行的task是否都在Workflow Monitor,或者是否内存泄露
可使用系统工具检测session运行前后的内存使用率的变化来判定问题是否出现在内存
分页:
分页表示可能的内存泄露,及大批的多任务并行处理
使用系统工具
Windows环境
可以在Task Manager中通过查看属性了解系统情况
Percent processor time:如果有多个CPU,请监视每个CPU的处理器时间百分比
Pages/second:如果pages/second超过5,则可能存在过大的内存压力,称为"抖动"
Physical disks percent time:物理磁盘忙于执行读或写请求的时间百分比
Physical disks queue length:等待访问同一磁盘设备的用户数
Server total bytes per second:服务器从网络发送及接收的总字节数
Unix/Linux环境
可使用如下工具查看系统情况
top/iostat/vmstat/sar
如何解决System的性能瓶颈
1) 如果CPU使用率超过80%,请检查并发运行任务的数量。考虑更改负载或使用网格将任务分发到不同的节点。如果无法减少负载,请考虑添加更多处理器
2) 如果发生分页,请增加物理内存或减少磁盘上内存密集型应用程序的数量
3) 如果内存压力过大(不稳定),请考虑添加更多物理内存
4) 如果时间百分比较高,请调整PowerCenter的缓存以使用内存缓存,而不是写入磁盘
如果优化缓存,则请求仍在队列中,并且磁盘忙百分比至少为50%,请添加另一个磁盘设备或升级到更快的磁盘设备
还可为Session中的每个分区使用单独的磁盘
5) 如果物理磁盘队列长度大于2,可考虑添加其他磁盘设备或升级磁盘设备
还可为reader、writer和transformation线程配置使用不同的磁盘
6) 可考虑提高网络带宽
7) 在优化UNIX系统时,请为主要数据库系统优化服务器
8) 如果I/O等待的时间所占比重很高,可考虑使用其他未充分利用磁盘
例如,如果Source,Target,lookup,rank以及aggregate组件的缓存文件都在同一个磁盘上,可考虑将它们放在不同的磁盘上
性能瓶颈之System的更多相关文章
- Informatica
安装 相关专题 关于Bulk加载模式 性能调优 性能瓶颈 性能瓶颈概览 性能瓶颈之Target 性能瓶颈之Source 性能瓶颈之Mapping 性能瓶颈之Session 性能瓶颈之System 性能 ...
- 【转】怎样查出SQLServer的性能瓶颈
怎样查出SQLServer的性能瓶颈 --王成辉翻译整理,转贴请注明出自微软BI开拓者[url]www.windbi.com[/url]--原帖地址 如果你曾经做了很长时间的DBA,那么你会了解到SQ ...
- Linux System and Performance Monitoring
写在前面:本文是对OSCon09的<Linux System and Performance Monitoring>一文的学习笔记,主要内容是总结了其中的要点,以及加上了笔者自己的一些理解 ...
- 读Avoiding the Disk Bottleneck in the Data Domain Deduplication File System
最近在思考和实践怎样应用重复数据删除技术到云存储服务中.找了些论文来读,其中<Avoiding the Disk Bottleneck in the Data Domain Deduplicat ...
- Linux System Log Collection、Log Integration、Log Analysis System Building Learning
目录 . 为什么要构建日志系统 . 通用日志系统的总体架构 . 日志系统的元数据来源:data source . 日志系统的子安全域日志收集系统:client Agent . 日志系统的中心日志整合系 ...
- 怎样查出SQLServer的性能瓶颈
怎样查出SQLServer的性能瓶颈 --王成辉翻译整理,转贴请注明出自微软BI开拓者[url]www.windbi.com[/url]--原帖地址 如果你曾经做了很长时间的DBA,那么你会了解到SQ ...
- 【原创】构建高性能ASP.NET站点 第六章—性能瓶颈诊断与初步调优(下前篇)—简单的优化措施
原文:[原创]构建高性能ASP.NET站点 第六章-性能瓶颈诊断与初步调优(下前篇)-简单的优化措施 构建高性能ASP.NET站点 第六章—性能瓶颈诊断与初步调优(下前篇)—简单的优化措施 前言:本篇 ...
- Shell脚本查看linux系统性能瓶颈(转)
Shell脚本查看linux系统性能瓶颈(转自:http://blog.51cto.com/lizhenliang/1687612) [root@test ~]# cat show_sys_info. ...
- Anatomy of a Database System学习笔记 - 查询
查询解析 解析会生成一个查询的内部展示.格式检查包含在解析过程中. 每次解析一个SELECT,步骤如下:1. 从FROM里找到表名,转换成schema.tablename.这一步需要调用目录管理器ca ...
随机推荐
- Django使用cropbox包来上传裁剪图片
1.使用cropbox包来上传裁剪图片,可见介绍:https://www.jianshu.com/p/6c269f0b48c0I ImgCrop包包括:css--style.css,js--cropb ...
- Go的并发调度原理
Go语言是为并发而生的语言,Go语言是为数不多的在语言层面实现并发的语言:也正是Go语言的并发特性,吸引了全球无数的开发者. 并发(concurrency)和并行(parallellism) 并发 ...
- Python中的 __name__有什么作用?最详细解读
案例说明: Python中的模块(.py文件)在创建之初会自动加载一些内建变量,__name__就是其中之一.Python模块中通常会定义很多变量和函数,这些变量和函数相当于模块中的一个功能,模块被导 ...
- Delphi之Exception获得错误信息
1 unit Unit1; 2 3 interface 4 5 uses 6 Windows, Messages, SysUtils, Variants, Classes, Graphics, Con ...
- Spring-MVC运行原理
一. Spring-MVC的对象初始化,即 bean放入context的beanFactory中. 1. 对象的初始化工作主要在org.springframework.web.servlet.Fram ...
- Xshell连接不上阿里云服务器
心血来潮买了一台1核2g内存,外加40g系统盘的阿里云ecs服务器,在配置xshell连接服务器一直无法连接,试了很多种方法,各种心累,不过最后还是找到了原因,是因为在服务器上没有配置安全组规则,附上 ...
- C++二分图匹配基础:zoj1002 FireNet 火力网
直接给出题目吧... 问题 D(1988): [高级算法]火力网 时间限制: 1 Sec 内存限制: 128 MB 题目描述 给出一个N*N的网格,用'.'表示空地,用'X'表示墙.在网格上放碉堡,可 ...
- Oracle获取异常的具体出处dbms_utility.format_error_backtrace
DBMS_UTILITY.FORMAT_ERROR_BACKTRACE :返回当前异常相应的描述,通过它就能知道异常的最初生成处. 系统为最近一次生成的异常设置了一个栈,并跟踪它的传递过程,而这个 ...
- web安全系列3:http拦截
这是web安全系列第三篇,我们讲讲HTTP请求的拦截.关于http的内容请翻看我的上一篇文章. 首先,我们开始需要一个安装好的java环境,64位的.请自行安装和配置环境变量,如果遇到问题可以留言评论 ...
- Java程序设计(第二版)复习 第二章
1.Java使用Unicode字符集,一般用16位二进制表示一个字符.且Java中午sizeof关键字,因为所有基本数据类型长度是确定的,不依赖执行环境. 2. Java变量在声明时并没有分配内存,真 ...