当前位置:文档之家› Oracle性能分析工具Statpack安装使用详解

Oracle性能分析工具Statpack安装使用详解

Oracle性能分析工具Statpack安装使用详解
Oracle性能分析工具Statpack安装使用详解

Oracle性能分析工具Statpack安装使

用详解

文件版本:V1.0文件编号:

发布日期:2015-03-05编制:程万超

审核:批准:

修订记录:

修订版本号修订人修订日期修订描述V1.0程万超2014-12-17新建

简介

Oracle Statspack 是用来诊断数据库性能的强有力的工具,通过Statspack 我们很容易的确定Oracle的所有瓶颈,记录数据库的性能状态。

安装步骤

一、Statpack原理:

1.运行oracle自带脚本,生成一系列的统计表。

2.生成快照,采样。

3.根据快照生成报告。

二、安装准备

1.检查部分参数值

--job_queue_process:取值范围为0到1000,总共可创建多少个job进程,为了能够建立自动任务,执行数据收集,此参数大于零

alter system set job_queue_processess=6;

---timed_statistics,设置为true,使收集的时间信息存储在V$sessstats和V$sysstats等动态性能视图中,但会消耗资源,可以在使用Satspack之前设为true,采样过后,把该参数动态修改为false.

alter system set timed_statistics=true;

2. 脚本

使用此功能,需要运行oracle自带脚本,在数据库中生成一系列的表和视图,用于收集各种信息。脚本位于%oracle_home%\rdbms\admin(224数据库的该目录为/oracle/app/product/10.2.0/Db_1/rdbms/admin)目录下,oracle816下是一组以stat开头的文件,以后的版本是一组以sp开头的文件。

三、安装

1.shell中切换到oracle用户:su - oracle

2.以sysdba身份登录sqlplus。

9i及以后版本,可以用sys用户以sysdba身份登录:sqlplus / as sysdba

(最好转到脚本所有目录%oracle_home%\rdbms\admin,便于执行脚本)

3.创建表空间,用于保存采样数据

create tablespace perfstat datafile '/oradata/xdgl/perfstat.dbf(表空间存储路径)' size 100m;

Statspack的报表数据还是相当占空间的,特别是在多次连续采样的情况下,所以不能太小,最小100M,否则创建对象会失败。

查询表空间:select file_name from dba_data_files;

4.运行脚本,安装statspack

在sqlplus中执行命令:

@%oracle_home%\rdbms\admin\spcreate.sql

--脚本会创建用户perfstat,需要指定此用户密码。

输入perfstat_password 的值: perfstat

--需要输入用户perfstat使用的表空间:指定新建的表空间即可。

输入default_tablespace 的值: perfstat

--需要指定用户perfstat使用的临时表空间。

输入temporary_tablespace 的值: tmp10

--安装成功,可以看到如下信息:

Creating Package STATSPACK...

程序包已创建。

没有错误。

Creating Package Body STATSPACK...

程序包体已创建。

没有错误。

NOTE:

SPCPKG complete. Please check spcpkg.lis for any errors.

--查看错误信息

NT下:

host find "ORA-" *.LIS

host find "err-" *.LIS

Unix下:

grep ORA- *.lis

grep err *.lis

如果出现错误,可以运行脚本删除相关内容:@%oracle_home%\rdbms\admin\spdrop.sql (注意:也要在sysdba下运行脚本删除相关对象)

然后再重新运行脚本安装。

这个安装过程创建了一系列的表,用于存入采样数据。

查看新建表:

select dt.table_name from dba_tables dt where dt.owner='PERFSTAT'

conn perfstat/perfstat

select table_name from user_tables;

安装完成后,系统会自动切换到perfstat用户下。

四、测试statpack

运行statspack.snap可以产生系统快照,运行两次,产生两次快照。

SQL> execute statspack.snap;

PL/SQL 过程已成功完成。

SQL> execute statspack.snap;

PL/SQL 过程已成功完成。

然后执行脚本@%oracle_home%\rdbms\admin\spreport.sql就可以生成基于两个时间点的报告。

--需要输入起始快照ID和结束快照ID,以及报告文件名。

(快照ID必须存在)

Specify the Begin and End Snapshot Ids

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

输入begin_snap 的值: 1

Begin Snapshot Id specified: 1

输入end_snap 的值: 13

End Snapshot Id specified: 13

输入report_name 的值: e:\s1report.txt

--查看产生的快照

select t.snap_id,to_char(t.snap_time,'yyyy-mm-dd hh:mi:ss') as S_Time,t.snapshot_exec_time_s from STATS$SNAPSHOT t;

五、规划自动任务

安装之后,我们就可以设置定时任务,定时采样,收集数据。

使用脚本spauto.sql来定义自动任务。

spauto.sql在关键内容:

begin

select instance_number into :instno from v$instance;

dbms_job.submit(:jobno, 'statspack.snap;', trunc(sysdate+1/24,'HH'), 'trunc(SYSDA TE+1/24,''HH'')', TRUE, :instno);

commit;

end;

执行spquto,就建立了一个每小时执行一次的数据收集计划。

这个Job任务定义了收集数据(执行statspack.snap)的时间间隔为1小时:

一天24小时,1440分钟-->

1/24,'HH' 每小时一次

1/48,'MI' 每半小时一次

1/144,'MI' 每10分钟一次

1/288,'MI' 每5分钟一次

关于采样间隔,通常建议1小时,如有特殊需要,可以设置更短,如半小时。但不推荐更短。因为statpack的执行本身需要消息资源,太短的采样对系统的性能会产生较大的影响(甚至会使statspack的执行出现在采样数据中)

六.生成报告

同测试一样

用perfstat用户连接

执行脚本%oracle_home%\rdbms\admin\spreport.sql,输入起始快照ID和结束快照ID,以及报告文件名,生成statspack报告。

注:一次statspack报告不能跨越一次停机,但是之前或之后的连续区间,收集的信息依然有效,你可以选择之前或之后的采样生成report.

如果中间停过机,会收到以下错误信息:

第 1 行出现错误:

ORA-20200: The instance was shutdown between snapshots 1 and 31

ORA-06512: 在line 48

七、后续处理

1,移除定时任务

当你完成一个采样报告,你应该及时移除这个job任务。遗漏一个无人照顾的job是非常危险的……

--查看任务并移除任务

select job, next_date, next_sec, what from user_jobs;

execute dbms_job.remove('ID')

2,删除历史数据

1),删除采样数据

只要删除stat$snapshot数据表中的相应数据,其他表中的数据会相应的级连删除。

select max(snap_id) from stats$snapshot;

delete from stats$snapshot where snap_id<=166;

删除过程中,你可以看到所有相关的表都被锁定了。

select a.object_id, a.oracle_username, b.object_name

from v$locked_object a,dba_objects b

where a.object_id=b.object_id

2),truncate统计信息表:使用脚本sptrunc.sql删除所有的采样数据但保留statspack的

库结构。

如果有大量数据,直接delete采样数据是非常缓慢的。使用脚本sptrunc.sql可以快速的删除所有统计信息。

查看脚本,可以看出是用truncate table截掉所有相关的表中的内容。

truncate table STATS$FILESTA TXS;

truncate table STATS$TEMPSTA TXS;

...

delete from STATS$DA TABASE_INSTANCE;

3),删除statspack所有数据和各种对象:使用脚本spdrop.sql。全部删除,不留痕迹!

但有表空间在~~

八、调整statspack的收集门限

statspack有两种类型的收集选项

level--级别:控制收集数据的类型

threshold--门限:设置收集的数据阀值

都保存在表stats$statspack_parameter中

1,级别(level)--有三种快照级别,默认值为5

--查看当前level级别:

select snap_level from stats$statspack_parameter;

1)level=0:一般性能统计。包括等待事件,系统事件,系统统计,回滚段统计,行缓存,

SGA,会话,锁,缓冲池统计等等。

2)level=5:在level0的基础上,增加SQL语句的收集。SQL语句收集结果记录在

ststs$sql_summary表中。

3)level=10:增加子锁统计,包括level5的所有内容,还会将附加子锁的入

stats$latc_children表中。使用这个级别需要慎重,建议在oracle support的指导下进行。

可以通过statspack包修改缺省的级别设置,如:

SQL>execute statspack.snap(i_snap_level=>0,i_modify_parameter=>'true');

通过这条语句,

以后的收集级别都将是0级。

如果你只是想修改本次收集级别,可以忽略i_modify_parameter参数,如下:

SQL>execute statspack.snap(i_snap_level=>10);

2,快照门限--只应用于stats$sql_summary表中获取的Sql语句。

因为每一个快照都会收集很数据,及sql语句,所以stats$sql_summary很快就会成为statspack中最大的表。

--查看当前各种门限

select executions_th,disk_reads_th,parse_calls_th,buffer_gets_th from stats$statspack_parameter;

各种门限:

1)executions_th--sql语句执行的数量(默认值=100)

2)disk_reads_th--sql语句执行的磁盘读入数量(默认值=1000)

3)parse_calls_th--sql语句执行的解析调用数量(默认值=1000)

4)buffer_gets_th--sql语句执行的缓冲区获取数量(默认值=10000)

任何一个门限值超过以上参数就会产生一条记录。

通过调用statspack.modify_statspack_parameter函数我们可以改变门限的默认值:

SQL>execute

statspack.modify_statspack_parameter(i_buffer_get_th=>100000,i_disk_reads_th=>100000; 九.Statspack 报告分析

Statspack 报告分为如下部分

1. 数据库总体信息

含实例、版本、是否RAC、CPU、物理内存、oracle内存设置等等

2. 每秒每事务的资源消耗情况

3. 实例的各组件的命中率

4. 共享池总体情况(Shared Pool Statistics)

5. 等待时间最长的前5个等待事件(Top 5 Timed Events)

含前5等待事件,两次采样间cpu占用,内存分配等信息。Oracle各版本等待事件并不完全相同,数量依版本升高而增加,关于各项等待事情的说明,三思之前的"学习动态性能表"系列文章中有过介绍,有心的朋友可以去搜搜看。

6. DB 所有等待事件(Wait Events)--Total wait time>=0.001 的事件。

7. 后台等待事件(Background Wait Events)--Total wait time>=0.001 的事件。

8. 柱状显示的等待事件(Wait Event Histogram)--显示各等待事件不同响应时间的比例

9. 根据CPU开销进行排序的SQL(SQL ordered by CPU)

10. 根据执行时间进行排序的SQL(SQL ordered by Elapsed)

11. 根据BufferGets进行排序的SQL(SQL ordered by Gets)

12. 根据物理读进行排序的SQL(SQL ordered by Reads)

13. 根据执行次数排序的SQL(SQL ordered by Executions)

14. 根据解析调用次数排序的SQL(SQL ordered by Parse Calls)

15. 实例记录的各项活动的统计数据(Instance Activity Stats)

16. 表空间的IO统计(Tablespace IO Stats)

17. 数据文件的IO统计(File IO Stats)

18. 数据文件读柱状图形式统计(File Read Histogram Stats)

19. Buffer 池统计数据(Buffer Pool Statistics)--含实例恢复的统计数据,buffer池大小设

置建议等等。

20. PGA 统计数据(PGA Aggr Target Stats)--含PGA缓存命中率,柱状图形式的统计以及

PGA设置建议等等。

21. 进程的内存占用情况(Process Memory Summary Stats)--含占用内存较多的进程等。

22. undo 段摘要

23. undo 段统计

24. 锁存器的当前情况

25. 锁存器睡眠等待统计

26. 锁存器失败情况

27. 数据字典cache性能统计(Dictionary Cache Stats)

28. 库缓存的活动情况(Library Cache Activity)

29. Rule 集(Rule Sets)

30. 共享池设置建议(Shared Pool Advisory)

31. SGA 摘要(SGA Memory Summary)

32. SGA 统计信息(SQL Memory Statistics)

33. 系统参数(init.ora Parameters)

报告很长,确实非常全面。如何分析,还需要再学习。

十、实际应用

经初步分析决定自动采集8:00-18:00这个时间段中5个时间点的快照,每两小时采集一次,并把每天的快照信息存储下来,对10:00和14:00这两个点的快照形成报告。

在sqlplus中运行5个job,这5个job每天定时对不同时间点自动生成快照,8点采集的脚本内容:

begin

select instance_number into :instno from v$instance;

dbms_job.submit(:jobno, 'statspack.snap;', trunc(sysdate) +(8*60)/(24*60),'trunc(SYSDA TE+1,''HH'')', TRUE, :instno);

commit;

end;

其他时间点的job内容类似,只是更改dbms_job_submit()函数的第二个参数值。

在sqlplus中执行这5个job。

由于要自动生成性能报告,而admin目录中的spreport.sql文件在执行的时候需要键入快照编号以及报告名称,所以对此文件进行了改写,改写之后执行该文件后会自动对当天10点和16点两个时间点的快照生成报告,报告名称命名方式为sp_日期_起始快照编号_结束快照编号.txt 存储路径为/oracle目录下。自动生成报告的sql文件需定时执行,oracle的dbms_job.submit()不支持对sql文件的调用,所以采取在shell中调用crontab定时工具执行生成报告的sql文件:

在oracle用户下输入crontab –e

0 23 * * * sqlplus sys/sys as sysdba @ /oracle/app/product/10.

2.0/Db_1/rdbms/admin/spreport.sql

表示每天23点执行后面的任务

OracleSQL性能优化方法

OracleSQL性能优化方法 Oracle性能优化方法(SQL篇) (1) 1综述 (2) 2表分区的应用 (2) 3访咨询Table的方式 (3) 4共享SQL语句 (3) 5选择最有效率的表名顺序 (5) 6WHERE子句中的连接顺序. (6) 7SELECT子句中幸免使用’*’ (6) 8减少访咨询数据库的次数 (6) 9使用DECODE函数来减少处理时刻 (7) 10整合简单,无关联的数据库访咨询 (8) 11删除重复记录 (8) 12用TRUNCATE替代DELETE (9) 13尽量多使用COMMIT (9) 14运算记录条数 (9) 15用Where子句替换HA VING子句 (9) 16减少对表的查询 (10) 17通过内部函数提高SQL效率 (11) 18使用表的不名(Alias) (12) 19用EXISTS替代IN (12) 20用NOT EXISTS替代NOT IN (13) 21识不低效执行的SQL语句 (13) 22使用TKPROF 工具来查询SQL性能状态 (14) 23用EXPLAIN PLAN 分析SQL语句 (14) 24实时批量的处理 (16)

1综述 ORACLE数据库的性能调整是个重要,却又有难度的话题,如何有效地进行调整,需要通过反反复复的过程。在数据库建立时,就能依照顾用的需要合理设计分配表空间以及储备参数、内存使用初始化参数,对以后的数据库性能有专门大的益处,建立好后,又需要在应用中不断进行应用程序的优化和调整,这需要在大量的实践工作中不断地积存体会,从而更好地进行数据库的调优。 数据库性能调优的方法 ●调整内存 ●调整I/O ●调整资源的争用咨询题 ●调整操作系统参数 ●调整数据库的设计 ●调整应用程序 本文针对应用程序的调整,来讲明对数据库性能如何进行优化。 2表分区的应用 关于海量数据的表,能够考虑建立分区以提高操作效率。建立分区一样以关键字为分区的标志,也能够以其他字段作为分区的标志,但效率不如关键字高。建立分区的语句在建表时能够进行讲明: create table TABLENAME() partition by range (PutOutNo) (partition PART1 values lessthan (200312319999) partition PART2 values lessthan (200412319999) 。。。。。。 如此,在进行大部分数据查询,数据更新和数据插入时,Oracle自动判定操作应该在哪个分区进行,幸免了整表操作,提高了执行的效率

( O管理)ORACLESL性能优化(内部培训资料)

(O管理)ORACLESL性能优化(内部培训资料)

ORACLESQL性能优化系列(一) 1.选用适合的ORACLE优化器 ORACLE的优化器共有3种: a.RULE(基于规则) b.COST(基于成本) c.CHOOSE(选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS.你当然也在SQL句级或是会话(session)级对其进行覆盖. 为了使用基于成本的优化器(CBO,Cost-BasedOptimizer),你必须经常运行analyze命令,以增加数据库中的对象统计信息(objectstatistics)的准确性. 如果数据库的优化器模式设置为选择性(CHOOSE),那么实际的优化器模式将和是否运行过analyze命令有关.如果table已经被analyze过,优化器模式将自动成为CBO,反之,数据库将采用RULE形式的优化器. 在缺省情况下,ORACLE采用CHOOSE优化器,为了避免那些不必要的全表扫描(fulltablescan),你必须尽量避免使用CHOOSE优化器,而直接采用基于规则或者基于成本的优化器.

2.访问Table的方式 ORACLE采用两种访问表中记录的方式: a.全表扫描 全表扫描就是顺序地访问表中每条记录.ORACLE采用一次读入多个数据块(databaseblock)的方式优化全表扫描. b.通过ROWID访问表 你可以采用基于ROWID的访问方式情况,提高访问表的效率,,ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系.通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高. 3.共享SQL语句 为了不重复解析相同的SQL语句,在第一次解析之后,ORACLE将SQL语句存放在内存中.这块位于系统全局区域SGA(systemglobalarea)的共享池(sharedbufferpool)中的内存可以被所有的数据库用户共享.因此,当你执行一个SQL语句(有时被称为一个游标)时,如果它和之前的执行过的语句完全相同,ORACLE就能很快获得已经被解析的语句以及最好的执行路

Oracle SQL性能优化方法研究

Oracle SQL性能优化方法探讨 Oracle性能优化方法(SQL篇) (1) 1综述 (2) 2表分区的应用 (2) 3访问Table的方式 (3) 4共享SQL语句 (3) 5选择最有效率的表名顺序 (5) 6WHERE子句中的连接顺序. (6) 7SELECT子句中幸免使用’*’ (6) 8减少访问数据库的次数 (6) 9使用DECODE函数来减少处理时刻 (7) 10整合简单,无关联的数据库访问 (8) 11删除重复记录 (8) 12用TRUNCATE替代DELETE (9) 13尽量多使用COMMIT (9) 14计算记录条数 (9) 15用Where子句替换HAVING子句 (9) 16减少对表的查询 (10) 17通过内部函数提高SQL效率 (11)

18使用表的不名(Alias) (12) 19用EXISTS替代IN (12) 20用NOT EXISTS替代NOT IN (13) 21识不低效执行的SQL语句 (13) 22使用TKPROF 工具来查询SQL性能状态 (14) 23用EXPLAIN PLAN 分析SQL语句 (14) 24实时批量的处理 (16)

1综述 ORACLE数据库的性能调整是个重要,却又有难度的话题,如何有效地进行调整,需要通过反反复复的过程。在数据库建立时,就能依照顾用的需要合理设计分配表空间以及存储参数、内存使用初始化参数,对以后的数据库性能有专门大的益处,建立好后,又需要在应用中不断进行应用程序的优化和调整,这需要在大量的实践工作中不断地积存经验,从而更好地进行数据库的调优。 数据库性能调优的方法 ●调整内存 ●调整I/O ●调整资源的争用问题 ●调整操作系统参数 ●调整数据库的设计 ●调整应用程序 本文针对应用程序的调整,来讲明对数据库性能如何进行优化。 2表分区的应用 关于海量数据的表,能够考虑建立分区以提高操作效率。建

Oracle性能优化总结

个人理解,数据库性能最关键的因素在于IO,因为操作内存是快速的,但是读写磁盘是速度很慢的,优化数据库最关键的问题在于减少磁盘的IO,就个人理解应该分为物理的和逻辑的优化,物理的是指oracle产品本身的一些优化,逻辑优化是指应用程序级别的优化物理优化: 一、优化内存

V$ROWCACHE视图结构

3.管理员可以通过下述语句来查看数据缓冲区的使用情况 select name,value from v$sysstat where name in ('db block gets', 'consistent gets ', 'physical reads'); 数据缓冲区使用命中率(physical reads除以db block gets加consistent gets之和)一定要小于10%,否则需要增加数据缓冲区大小 4.管理员可以通过执行下述语句,查看日志缓冲区的使用情况 select name,value from v$sysstat where name in ('redo entries','redo log space requests') 根据查询出的结果可以计算出日志缓冲区的申请失败率:requests除以entries 申请失败率应该解决与0,否则说明日志缓冲区开设太小,需要增加Oracle数据库的日志缓冲区 二、物理I/0的优化 1.在磁盘上建立数据文件前首先运行磁盘碎片整理程序 为了安全地整理磁盘碎片,需关闭打开数据文件的实例,并且停止服务。如果有足够的连续磁盘空间建立数据文件,那么就容易避免数据文件产生碎片。 2.不要使用磁盘压缩(Oracle文件不支持磁盘压缩) 3.不要使用磁盘加密

oracle性能优化简介

ORACLE SQL性能优化 我要讲的题目是Oracle SQL性能优化,只是Oracle性能优化中的一项。Oracle的性能优化包含很多方面,比如调整物理存取,调整逻辑存取,调整内存使用,减少网络流量等。这里选择SQL性能优化是因为这部分内容我们测试人员最容易接触到,另外开发人员写SQL脚本时有时很随意,不知不觉就会造成程序性能上的下降。 1.选择最有效率的表名顺序(只在基于规则的优化器中有效) ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基础表 driving table)将被最先处理. 在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基 础表.当ORACLE处理多个表时, 会运用排序及合并的方式连接它们.首先,扫描第一个表(FROM子句中最后的那个表)并对记录进行派序,然后扫描 第二个表(FROM子句中最后第二个表),最后将所有从第二个表中检索出 的记录与第一个表中合适记录进行合并. 例如: 表 TAB1 16,384 条记录 表 TAB2 1 条记录 选择TAB2作为基础表 (最好的方法) select count(*) from tab1,tab2 执行时间0.96秒 选择TAB2作为基础表 (不佳的方法)

select count(*) from tab2,tab1 执行时间26.09秒 如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表. 例如: EMP表描述了LOCATION表和CATEGORY表的交集. SELECT * FROM LOCATION L , CATEGORY C, EMP E WHERE E.EMP_NO BETWEEN 1000 AND 2000 AND E.CAT_NO = C.CAT_NO AND E.LOCN = L.LOCN 将比下列SQL更有效率 SELECT * FROM EMP E , LOCATION L , CATEGORY C WHERE E.CAT_NO = C.CAT_NO AND E.LOCN = L.LOCN AND E.EMP_NO BETWEEN 1000 AND 2000 2.WHERE子句中的连接顺序. ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾.

五个战略分析工具

I 五个战略分析工具之公司业务组合矩阵  一、公司业务组合矩阵的涵义 制定公司层战略最流行的方法之一是公司业务组合矩阵。该方法是由波士顿咨询集团(Boston ConsultingGroup,BCG)于20世纪七十年代初期开发的。该法则将组织的每一个战略事业单位(SBUs)标在一种2维的矩阵图上,从而显示出哪个SBUs提供高额的潜在收益, 以及哪个SBUs是组织资源的漏斗,BCG矩阵的示意图如图所示。其中,横轴代表市场份额;纵轴表示预计的市场增长。说得更明确一些,高市场份额意味着该项业务是所在行业的领导者;高市场增长定义为销售额至少达到10%的年增长率(扣除通货膨胀因素)。 二、BCG矩阵区分出4种业务组合。 1. 现金牛(Cash cows,指低增长、高市场份额) 处在这个领域中的产品产生大量的现金,但未来的增长前景是有限的。 2. 吉星(stars,指高增长、高市场份额) 这个领域中的产品处于快速增长的市场中并且占有支配地位的市场份额,但也许会或也许不会产生正现金流量,这取决于新工厂、设备和产品开发对投资的需要量。 3. 问号(QuestionMarks,指高增长、低市场份额) 处在这个领域中的是一些投机性产品,·带有较大的风险。这些产品可能利润率很高,但占有的市场份额很小。 4.瘦狗(Dogs,指低增长、低市场份额) 这个剩下的领域中的产品既不能产生大量现金,也不需要投入大量现金,这些产品没有希望改进其绩效。 对理解BCG矩阵来说。重要的是假定存在积累学习曲线(Cumu-lativeLearnitigCurve)效应。该假定认为,如果公司能够适应当地生产产品和管理生产过程,则产品生产累积量的每一个显著的增加,都会带来可预计的单位产品成本的下降。特别是,波士顿咨询集团断言,销售量每翻一番,单位产品成本一般要下降20%-30%。这个结论显然是说,占有最大市场份额的业务将有最低的成本。

现代企业战略管理工具SWOT分析法

SWOT分析法现代企业战略管理工具(1)解析:SWOT分析法是用来确定企业自身的竞争优势、竞争劣势、机会和威胁,从而将公司的战略与公司内部资源、外部环境有机地结合起来的一种科学的分析方法。 所谓SWOT分析,即基于内外部竞争环境和竞争条件下的态势分析,就是将与研究对象密切相关的各种主要内部优势、劣势和外部的机会和威胁等,通过调查列举出来,并依照矩阵形式排列,然后用系统分析的思想,把各种因素相互匹配起来加以分析,从中得出一系列相应的结论,而结论通常带有一定的决策性。 运用这种方法,可以对研究对象所处的情景进行全面、系统、准确的研究,从而根据研究结果制定相应的发展战略、计划以及对策等。 S (strengths)是优势、W (weaknesses)是劣势,O (opportunities)是机会、T (threats)是威胁。按照企业竞争战略的完整概念,战略应是一个企业“能够做的”(即组织的强项和弱项)和“可能做的”(即环境的机会和威胁)之间的有机组合。

应用: SWOT矩形分析 SWOT分析法常常被用于制定集团发展战略和分析竞争对手情. 况,在战略分析中,它是最常用的方法之一。进行SWOT分析时,主要有以下几个方面的内容: 分析环境因素5 运用各种调查研究方法,分析出公司所处的各种环境因素,即外部环境因素和内部能力因素。外部环境因素包括机会因素和威胁因素,它们是外部环境对公司的发展直接有影响的有利和不利因素,属于客观因素,内部环境因素包括优势因素和弱点因素,它们是公司在其发展中自身存在的积极和消极因素,属主动因素,在调查分析这些因素时,不仅要考虑到历史与现状,而且更要考虑未来发展问题。 优势,是组织机构的内部因素,具体包括:有利的竞争态势;充足的财政来源;良好的企业形象;技术力量;规模经济;产品质量;市场份额;成本优势;广告攻势等。 劣势,也是组织机构的内部因素,具体包括:设备老化;管

Oracle性能优化总结

个人理解,数据库性能最关键的因素在于IO,因为操作存是快速的,但是读写磁盘是速度很慢的,优化数据库最关键的问题在于减少磁盘的IO,就个人理解应该分为物理的和逻辑的优化,物理的是指oracle产品本身的一些优化,逻辑优化是指应用程序级别的优化 物理优化: 一、优化存

3.管理员可以通过下述语句来查看数据缓冲区的使用情况 select name,value from v$sysstat where name in('db block gets','consistent gets','physica l reads'); 数据缓冲区使用命中率(physical reads除以db block gets加consistent gets之和)一定要小于10%,否则需要增加数据缓冲区大小 4.管理员可以通过执行下述语句,查看日志缓冲区的使用情况 select name,value from v$sysstat where name in ('redo entries','redo log space requests') 根据查询出的结果可以计算出日志缓冲区的申请失败率:requests除以entries 申请失败率应该解决与0,否则说明日志缓冲区开设太小,需要增加Oracle数据库的日志缓冲区 二、物理I/0的优化 1.在磁盘上建立数据文件前首先运行磁盘碎片整理程序 为了安全地整理磁盘碎片,需关闭打开数据文件的实例,并且停止服务。如果有足够的连续磁盘空间建立数据文件,那么就容易避免数据文件产生碎片。 2.不要使用磁盘压缩(Oracle文件不支持磁盘压缩) 3.不要使用磁盘加密 加密像磁盘压缩一样加了一个处理层,降低磁盘读写速度。如果担心自己的数据可能泄露,可以使用dbms_obfuscation包和label security选择性地加密数据的敏感部分 4.使用RAID raid使用应注意: 选择硬件raid超过软件raid;日志文件不要放在raid5卷上,因为raid5读性能高而写性能差;把日志文件和归档日志放在与控制文件和数据文件分离的磁盘控制系统上 5.分离页面交换文件到多个磁盘物理卷 跨越至少两个磁盘建立两个页面文件。可以建立四个页面文件并在性能上受益,确保所有页面文件的大小之和至少是物理存的两倍。

干货收藏:战略管理最常用的六种分析工具

干货收藏:战略管理最常用的六种分析工具 2014-11-20MBA智库 MBA智库ID:mbalib 新朋友点击标题下面蓝色字“MBA智库”关注 老朋友点击右上角,转发或分享本页面内容 小智推荐:经管百科微信号(mbalibwiki ) 一、战略管理分析工具之波特五力分析模型 五力分析模型是迈克尔·波特(Michael Porter)于80年代初提出的战略管理分析工具,对企业战略制定产生全球性的深远影响。用于竞争战略的分析,可以有效的分析客户的竞争环境。五力分别是:供应商的讨价还价能力、购买者的讨价还价能力、潜在竞争者进入的能力、替代品的替代能力、行业内竞争者现在的竞争能力。五种力量的不同组合变化最终影响行业利润潜力变化。 二、战略管理分析工具之安迪·格鲁夫的六力分析模型

六力分析的概念是英特尔前总裁安迪·格鲁夫(Andrew S. Grove),以波特的五力分析架构为出发点,重新探讨并定义产业竞争的六种影响力。 他认为影响产业竞争态势的因素分别是: 1.现存竞争者的影响力、活力、能力; 2.供货商的影响力、活力、能力; 3.客户的影响力、活力、能力; 4.潜在竞争者的影响力、活力、能力;

5.产品或服务的替代方式; 6.协力业者的力量。 透过此六种竞争力量的战略管理分析,有助于厘清企业所处的竞争环境,点出产业中竞争的关键因素,并界定最能改善产业和企业本身获利能力的策略性创新。 三、战略管理分析工具之新7S原则 新7S原则(Principal of New 7S),由美国管理大师达·维尼提出,强调的是企业能否打破现状、抓住主动权和建立一系列暂时的优势。 新7S原则的经营思维架构,具体包括: 这里的“7S”指的是: (1)更高的股东满意度(Stockholder satisfaction)。这里的“股东”是一个十分广泛的概念,即客户的概念,包括过去企业最重视的股东、市场导向管理中迅速得到重视的顾客以及近几年人本管理的主角即员工。

Oracle_SQL性能优化技巧大总结

(1)选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表. (2) WHERE子句中的连接顺序.: ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE 子句的末尾. (3) SELECT子句中避免使用 * : ORACLE在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间 (4)减少访问数据库的次数: ORACLE在内部执行了许多工作: 解析SQL语句, 估算索引的利用率, 绑定变量 , 读数据块等; (5)在SQL*Plus , SQL*Forms和Pro*C中重新设置ARRAYSIZE参数, 可以增加每次数据库访问的检索数据量 ,建议值为200 (6)使用DECODE函数来减少处理时间: 使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表. (7)整合简单,无关联的数据库访问: 如果你有几个简单的数据库查询语句,你可以把它们整合到一个查询中(即使它们之间没有关系) (8)删除重复记录: 最高效的删除重复记录方法 ( 因为使用了ROWID)例子: DELETE FROM EMP E WHERE E.ROWID > (SELECT MIN(X.ROWID)FROM EMP X WHERE X.EMP_NO = E.EMP_NO); (9)用TRUNCATE替代DELETE: 当删除表中的记录时,在通常情况下, 回滚段(rollback segments ) 用来存放可以被恢复的信息. 如果你没有COMMIT事务,ORACLE会将数据恢复到删除之前的状态(准确地说是恢复到执行删除命令之前的状况) 而当运用TRUNCATE时, 回滚段不再存放任何可被恢复的信息.当命令运行后,数据不能被恢复.因此很少的资源被调用,执行时间也会很短. 译者按: TRUNCATE只在删除全表适 用,TRUNCATE是DDL不是DML) (10)尽量多使用COMMIT: 只要有可能,在程序中尽量多使用COMMIT, 这样程序的性能得到提高,需求

ORACLE+SQL性能优化系列

ORACLE SQL性能优化系列 0ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQ L句级或是会话(session)级对其进行覆盖. 为了使用基于成本的优化器(CBO, Cost-Based Optimizer) , 你必须经常运行analyze 命令,以增加数据库中的对象统计信息(object statist ics)的准确性. 如果数据库的优化器模式设置为选择性(CHOOSE),那么实际的优化器模式将和是否运行过analyze命令有关. 如果table已经被analyze过, 优化器模式将自动成为CBO , 反之,数据库将采用RULE形式的优化器. 在缺省情况下,ORACLE采用CHOOSE优化器, 为了避免那些不必要的全表扫描(full table scan) , 你必须尽量避免使用CHOOSE优化器,而直接采用基于规则或者基于成本的优化器. 1.访问Table的方式 ORACLE 采用两种访问表中记录的方式: a.全表扫描 全表扫描就是顺序地访问表中每条记录. ORACLE采用一次读入多个数据块(dat abase block)的方式优化全表扫描. b.通过ROWID访问表

你可以采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物 理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高. 2.共享SQL语句 为了不重复解析相同的SQL语句,在第一次解析之后, ORACLE将SQL语句存放在内存中.这块位于系统全局区域SGA(system global area)的共享池(shared bu ffer pool)中的内存可以被所有的数据库用户共享. 因此,当你执行一个SQL语句(有时被称为一个游标)时,如果它和之前的执行过的语句完全相同, ORACLE 就能很快获得已经被解析的语句以及最好的执行路径. ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用. 可惜的是ORACLE只对简单的表提供高速缓冲(cache buffering) ,这个功能并不适用于多表连接查询. 数据库管理员必须在init.ora中为这个区域设置合适的参数,当这个内存区域越大,就可以保留更多的语句,当然被共享的可能性也就越大了. 当你向ORACLE 提交一个SQL语句,ORACLE会首先在这块内存中查找相同的语句. 这里需要注明的是,ORACLE对两者采取的是一种严格匹配,要达成共享,SQL语句必须完全相同(包括空格,换行等). 共享的语句必须满足三个条件: A. 字符级的比较: 当前被执行的语句和共享池中的语句必须完全相同. 例如: SELECT * FROM EMP;

Oracle RAC 11g r2性能调优 - 解决查询慢问题

知也无涯 Oracle RAC 11g r2查询太慢 --------------------------------------------------- Oracle RAC 11g r2查询太慢 Problem Description --------------------------------------------------- Redhat 5 双机 测试1:双实例,ASM磁盘组包含3个磁盘(SAN)。在其中一个实例中执行:SELECT c.operaccount || ':' || c.PASSWORD || '@' || a.PATH, a.dll, a.description, '1.gif' FROM hcs2000.dllnames a, hcs2000.operdllnames b, hcs2000.operaccount c WHERE a.dllnameid = b.dllnameid AND b.operid = c.operid AND upper(c.operaccount) = USER ORDER BY a.dllnameid; 第一次查询,25秒。第二次查询,3秒。第三次查询,1.6秒。过10分钟后查询,26秒。 测试2:在其中一台主机上创建基于ASM磁盘组的单个实例, 第一次查询,14秒。第二次查询,3秒。第三次查询,0.7秒。第四次查询,3.5秒。 测试3:在其中一台主机上创建基于文件系统的单个实例, 第一次查询,5秒。第二次查询,2.2秒。第三次查询,2.1秒。 测试4:在PC的VMware虚拟机里面单实例查询,只需0.001秒或0秒。 测试1中的查询太慢了,请问怎么查看问题原因,如何调优? Dear customer, Array请您执行以下动作: 如果可以,请在您提到的4个场景下都生成以下文件,并请添加您 的说明后,作为附件更新到SR上: ACTION PLAN -----------------------

oracle性能优化总结

Oracle 性能优化50个方法https://www.doczj.com/doc/0b2567257.html,

1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会话(session)级对其进行覆盖. 为了使用基于成本的优化器(CBO, Cost-Based Optimizer) , 你必须经常运行analyze 命令,以增加数据库中的对象统计信息(object statistics)的准确性. 如果数据库的优化器模式设置为选择性(CHOOSE),那么实际的优化器模式将和是否运行过analyze命令有关. 如果table已经被analyze过, 优化器模式将自动成为CBO , 反之,数据库将采用RULE形式的优化器. 在缺省情况下,ORACLE采用CHOOSE优化器, 为了避免那些不必要的全表扫描(full table scan) , 你必须尽量避免使用CHOOSE优化器,而直接采用基于规则或者基于成本的优化器. 2. 访问Table的方式 ORACLE 采用两种访问表中记录的方式: a. 全表扫描全表扫描就是顺序地访问表中每条记录. ORACLE采用一次读入多个数据块(database block)的方式优化全表扫描,这样的访问方式是效率最低的. b. 通过ROWID访问表你可以采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索 引列的查询就可以得到性能上的提高. 3. 共享SQL语句 为了不重复解析相同的SQL语句,在第一次解析之后, ORACLE将SQL语句存放在内存中.这块位于系统全局区域SGA(system global area)的共享池(shared buffer pool)中的内存可以被所有的数据库用户共享. 因此,当你执行一个SQL语句(有时被称为一个游标)时,如果它和之前的执行过的语句完全相同, ORACLE就能很快获得已经被解析的语句以及最好的执行路径. ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用. 可惜的是ORACLE 只对简单的表提供高速缓冲(cache buffering) ,这个功能并不适用于多表连接查询. 数据库管理员必须在init.ora中为这个区域设置合适的参数,当这个内存区域越大,就可以保留更多的语句,当然被共享的可能性也就越大了. 当你向ORACLE 提交一个SQL语句,ORACLE会首先在这块内存中查找相同的语句. 这里需要注明的是,ORACLE对两者采取的是一种严格匹配,要达 成共享,SQL语句必须完全相同(包括空格,换行等). 共享的语句必须满足三个条件: A. 字符级的比较: 当前被执行的语句和共享池中的语句必须完全相同. 例如: SELECT * FROM EMP; 和下列每一个都不同 SELECT * from EMP; Select * From Emp;

ORACLE性能优化之SQL优化-优化器

Oracle9i优化器介绍 By Davis E-Mail:todavis@https://www.doczj.com/doc/0b2567257.html, Blog:https://www.doczj.com/doc/0b2567257.html, 选择合适的优化器目标 默认情况下,CBO 以最佳吞吐量为目标,这意味着Oracle 使用尽可能少的资源去处理被语句访问到的所有行;当然CBO 也可以用最快的响应速度来优化SQL,这意味着Oracle 用尽可能少的资源去处理被语句访问到的第一行或前面少数行,当然这种情况对于整个语句 来说可能消耗更多的资源。 优化器产生的执行计划会因―优化器目标‖的不同而不同。如果以最佳吞吐量为目标, 结果更倾向于使用全表扫描而不是索引扫描,或者使用排序合并连接而不是嵌套循环连接;如果以最快的响应速度为目标,其结果则通常倾向于使用索引扫描和嵌套循环连接。 例如,假使你有一个语句既能运行于嵌套循环连接又能运行于排序合并连接,排序合并连接能够较快的返回全部查询结果,而嵌套循环能快速的返回第一行或前面少数行结果。如果你是以提高吞吐量为优化器目标,优化器就会倾向于选择排序合并连接;如果你的优化器目标是提高响应速度,则优化器倾向于选择嵌套循环连接。 选择优化器目标要以你的应用为基础,一般规则是: 1、对于批处理应用,以最佳吞吐量为优化目标为好。例如Oracle 报表应用程序。 2、对于交互式应用,以最快响应速度为优化目标为好。例如SQLPLUS 的查询。 影响优化器优化目标的因素主要有: 1、OPTIMIZER_MODE 初始化参数。 2、数据字典中的CBO 统计数据。 3、用来改变CBO 优化目标的Hints。 OPTIMIZER_MODE初始化参数 这个初始化参数用来规定实例的默认优化方法。其值列表及说明如下: Value CHOOSE ALL_ROWS Description 此为缺省值。优化器既可以使用基于成本的优化方法(CBO),也可以使用基于规则的优化方法(RBO),其决定于是否有可用的统计信息。 1、如果在被访问的表中,至少有一个表在数据字典中有可用的统计 信息存在,则优化器使用基于成本的方法。 2、如果在被访问的表中,只有部分表在数据字典中有可用的统计信 息,优化器仍然会使用基于成本的方法,但是优化器必须为无统 计信息的表利用一些内部信息去尝试其他的统计,比如分配给这 些表的数据块的数量等,这可能会导致产生不理想的执行计划。 3、如果在被访问的表中,没有一个表在数据字典中有统计信息,则 优化器使用基于规则的方法。 不论是否有统计信息存在,优化器都使用基于成本的方法,并以最佳吞 1

战略环境分析工具及研究示例

战略环境分析工具与研究示例 一、战略环境分析工具 1、PEST分析模型 PEST是一种企业所处宏观环境分析模型,所谓PEST即:Political(政治)、Economic(经济)、Social(社会)与Technological(科技)。这些是企业的外部环境, 一般不受企业掌握,这些因素也被戏称为“Pest(有害物)”。 P:政治法律环境要素 政治会对企业监管、客户消费能力以及其他与企业经营有关的活动产生十分重大的影响。一个国家或地区的政治制度、体制、方针政策、法律法规等方面的因素常常制约、影响着企业的经营行为,尤其影响企业较长期的投资行为。 E:经济要素 经济要素是指国民经济发展的总体概况,国际与国内经济形式及经济发展趋势,企业所面临的产业环境与竞争环境等。市场营销人员需要从短期与长期两个方面来看待一个国家的经济与贸易环境及发展趋势,以便在制定营销策略时综合的考虑。 S:社会与文化要素 一定时期整个社会发展的一般状况,主要包括社会道德风尚,文化传统,人口变动趋势,文化教育,价值观念,社会结构等。各国或各地区的社会与文化因素对企业经营的影响不尽相同。 T:科技要素 科技要素是指目前社会技术总水平及变化趋势,包括技术变迁,技术突破对企业影响,以及技术对政治、经济社会环境之间的相互作用的表现等。科技要素具有变化快,变化大,影响面大等特点,它不仅是全球化的驱动力,也是企业的竞争优势所在。 2、SWOT分析模型 SWOT分析是一种企业内部分析法,它根据企业的内在条件进行分析,找出企业的优势、劣势及核心竞争力之所在。其中,S代表Strength(优势),W代表Weakness(弱势或劣势),O代表Opportunity(机会),T代表Threat(威胁),其中, S、W是内部因素,O、T是外部因素。按照企业竞争战略的完整概念,战略应是一个

ORACLE 性能优化系列

ORACLE SQL性能优化系列 关键字ORA CEL SQL Performance tuning 出处https://www.doczj.com/doc/0b2567257.html, 1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会话(session)级对其进行覆盖. 为了使用基于成本的优化器(CBO, Cost-Based Optimizer) , 你必须经常运行analyze 命令,以增加数据库中的对象统计信息(object statistics)的准确性. 如果数据库的优化器模式设置为选择性(CHOOSE),那么实际的优化器模式将和是否运行过analyze命令有关. 如果table已经被analyze过, 优化器模式将自动成为CBO , 反之,数据库将采用RULE形式的优化器. 在缺省情况下,ORACLE采用CHOOSE优化器, 为了避免那些不必要的全表扫描(full table scan) , 你必须尽量避免使用CHOOSE优化器,而直接采用基于规则或者基于成本的优化器. 2. 访问Table的方式 ORACLE 采用两种访问表中记录的方式:

a. 全表扫描 全表扫描就是顺序地访问表中每条记录. ORACLE采用一次读入多个数据块(database block)的方式优化全表扫描. b. 通过ROWID访问表 你可以采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高. 3. 共享SQL语句 为了不重复解析相同的SQL语句,在第一次解析之后, ORACLE将SQL语句存放在内存中.这块位于系统全局区域SGA(system global area)的共享池(shared buffer pool)中的内存可以被所有的数据库用户共享. 因此,当你执行一个SQL 语句(有时被称为一个游标)时,如果它 和之前的执行过的语句完全相同, ORACLE就能很快获得已经被解析的语句以及最好的 执行路径. ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用. 可惜的是ORACLE只对简单的表提供高速缓冲(cache buffering) ,这个功能并不适用于多表连接查询. 数据库管理员必须在init.ora中为这个区域设置合适的参数,当这个内存区域越大,就可以保留更多的语句,当然被共享的可能性也就越大了. 当你向ORACLE 提交一个SQL语句,ORACLE会首先在这块内存中查找相同的语句. 这里需要注明的是,ORACLE对两者采取的是一种严格匹配,要达成共享,SQL语句必须

Oracle性能调优原则

Oracle性能调优原则 任何事情都有它的源头,要解决问题,也得从源头开始,影响ORACLE性能的源头非常多,主要包括如下方面:数据库的硬件配置:CPU、内存、网络条件1. CPU:在任何机器中CPU的数据处理能力往往是衡量计算机性能的一个标志,并且ORACLE是一个提供并行能力的数据库系统,在CPU方面的要求就更高了,如果运行队列数目超过了CPU处理的数目,性能就会下降,我们要解决的问题就是要适当增加CPU的数量了,当然我们还可以将需要许多资源的进程KILL掉;2. 内存:衡量机器性能的另外一个指标就是内存的多少了,在ORACLE中内存和我们在建数据库中的交换区进行数据的交换,读数据时,磁盘I/O必须等待物理I/O操作完成,在出现ORACLE 的内存瓶颈时,我们第一个要考虑的是增加内存,由于I/O的响应时间是影响ORACLE性能的主要参数,我将在这方面进行详细的讲解3. 网络条件:NET*SQL负责数据在网络上的来往,大量的SQL会令网络速度变慢。比如10M的网卡和100的网卡就对NET*SQL有非常明显的影响,还有交换机、集线器等等网络设备的性能对网络的影响很明显,建议在任何网络中不要试图用3个集线器来将网段互联。OS参数的设置下表给出了OS的参数设置及说明,DBA可以根据实际需要对这些参数进行设置内核参数名说明bufpages对buffer空间不按静态分配,采用动态分配,使bufpages值随nbuf一起对

buffer空间进行动态分配。Create_fastlinks对HFS文件系统允许快速符号链接dbc_max_pct加大最大动态buffer空间所占物理内存的百分比,以满足应用系统的读写命中率的需要。Dbc_min_pct设置最小动态buffer空间所占物理内存的百分比desfree提高开始交换操作的最低空闲内存下限,保障系统的稳定性,防止出现不可预见的系统崩溃(Crash)。Fs_async允许进行磁盘异步操作,提高CPU 和磁盘的利用率lotsfree提高系统解除换页操作的空闲内存的上限值,保证应用程序有足够的可用内存空间。Maxdsiz针对系统数据量大的特点,加大最大数据段的大小,保证应用的需要。(32位)maxdsiz_64bitmaximum process data segment size for 64_bitMaxssiz加大最大堆栈段的大小。(32_bit)maxssiz_64bit加大最大堆栈段的大小。(64_bit)Maxtsiz提高最大代码段大小,满足应用要求maxtsiz_64bit原值过大,应调小Minfree提高停止交换操作的自由内存的上限Shmem允许进行内存共享,以提高内存的利用率Shmmax设置最大共享内存段的大小,完全满足目前的需要Timeslice由于系统的瓶颈主要反映在磁盘I/O上,因此降低时间片的大小,一方面可避免因磁盘I/O不畅造成CPU的等待,从而提高了CPU的综合利用率。另一方面减少了进程的阻塞量。Unlockable_mem提高了不可锁内存的大小,使可用于换页和交换的内存空间扩大,用以满足系统对内存管理的要求。用户SQL质量以上讲的都是硬件方面的东西,在条件有限的条件下,我们可以调整应用程序的SQL质量:1. 不要进行全表扫描(Full Table Scan):全表扫描

常用战略分析工具有哪些

常用战略分析工具有哪些 导语: 战略分析是一种通过资料的收集和整理,分析组织的内外环境。其中SWOT 分析法是常用的一种分析工具。那么这类图形是怎么绘制的呢?其实采用一些专业的软件就可以绘制。 免费获取商务图表软件:https://www.doczj.com/doc/0b2567257.html,/businessform/ SWOT 图表制作软件 亿图图示专家是一个快速创建漂亮的商业图表的全功能软件。无论是势态分析图(SWOT分析图)、矩阵图,还是列表图、过程及业务图,亿图软件都能轻松应对。使用预置的符号图库及超过5000个矢量图形,绘制商业图表再简单不过了! 亿图软件的操作面板非常类似于微软的产品。窗口上方是带有许多选项卡的工具栏,包括各种类型的功能。左边是带有符号和图表模板的库面板,按不同类别进行排序。用户可以同时打开多个符号库。窗口正中是创建仪表盘的画板。

SWOT 图表制作软件 亿图图示专家是一个快速创建漂亮的商业图表的全功能软件。无论是势态分析图(SWOT分析图)、矩阵图,还是列表图、过程及业务图,亿图软件都能轻松应对。使用预置的符号图库及超过5000个矢量图形,绘制商业图表再简单不过了!

系统需求 Windows 7, 8, 10, XP, Vista, Citrix Mac OSX 10.10+ Linux Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Mint, Knoppix, RedHat, Gentoo及更多 亿图图示专家软件的功能特点: 酷似微软程序的界面,操作简单。 带有广泛的图表和图形模板。 许多图表有智能行为,极大地简化用户的工作。例如,通过使用柱形图上的浮动按钮,用户可以一次点击即添加类别,设定最大值、设置系列数量、数值等。 支持数据导入。将销售数据按照一定的格式保存,并将该文件导入到软件中,就可以自动生成图表。 一组漂亮的外观主题可以容易地更改整个图表的外观。 极易添加图像、照片和编辑文本字段。 强大的导出功能包括BMP、JPEG、EMF、WMF、PDF、SVG、HTML、Word、PowerPoint 等更多格式。 SWOT 分析用符号模板 SWOT 分析符号通常由一个网格表示,共分四节,每一个都用于SWOT 的副标题︰优势、劣势、机会和威胁。 下面包含一些问题示例,其答案可以插入到SWOT网格的相关部分。这些问题是例子或者讨论点,并且显然可以根据SWOT 分析的主题改变。明确的确定SWOT

相关主题
文本预览
相关文档 最新文档