Dear All
系统里有下面的语句,其中MDN是Varchar类型,在Where条件中MDN=13811276353,这个写法有问题,后面是一串数字而不是加引号的字符串,这会导致oracle做index的full scan,极其消耗CPU,请改成下面的形式:mdn=’13811276353’
可以看到,两种写法的执行计划不一样。前一条语句运行0.3秒,后一种0.03秒,相差10倍。
SELECT DISTINCT mdn
FROM nm_net_user_17520548
WHERE mdn = 13811276353;
SELECT STATEMENT, GOAL = ALL_ROWS 600 1 12
HASH UNIQUE 600 1 12
INDEX FAST FULL SCAN NETMESSAGE NM_NET_USER_17520548_MDN_IDX 599 1 12
SELECT DISTINCT mdn
FROM nm_net_user_17520548
WHERE mdn = '13811276353';
SELECT STATEMENT, GOAL = ALL_ROWS 4 1 12
SORT UNIQUE NOSORT 4 1 12
INDEX RANGE SCAN NETMESSAGE NM_NET_USER_17520548_MDN_IDX 3 1 12
第一个地方改了以后,SELECT DISTINCT mdn
FROM nm_net_user_17520548
WHERE mdn = ‘13811276353’;
观察oracle的CPU消耗比较高的5个进程从99%,下降到45%。
第二个地方改了以后,
SELECT *
FROM nm_data_17520548_15126274 tbl
WHERE tbl.mdn = ‘13811314270’;
观察oracle的CPU消耗比较高的10个进程从45%,下降到25%。
系统总体的处理能力从30条美妙到150条每秒,处理能力大幅提升。
熬了一个通宵,几处问题调整后,下发速度从20TPS提高到150TPS,多谢大家
分享到:
相关推荐
### 超酷30个Oracle语句优化规则详解 #### 一、选用适合的Oracle优化器 在Oracle数据库中,优化器的选择对于查询性能至关重要。Oracle提供了三种优化器模式来帮助用户根据实际情况选择最合适的执行计划: 1. **...
### Oracle语句优化53个规则详解 #### 一、选用适合的Oracle优化器 在Oracle数据库中,优化器的选择对于SQL语句的执行效率至关重要。Oracle提供了三种优化器模式: 1. **基于规则的优化器(RULE)**:这是一种较...
本文将深入探讨"性能优化案例分析与Oracle语句优化53个规则详解"这一主题,涵盖Oracle语句优化、数据库优化以及SQL优化的关键知识点。 首先,Oracle语句优化是提升系统性能的核心手段之一。在"Oracle语句优化53个...
这篇文档“Oracle语句优化规则汇总.pdf”很可能提供了关于如何提高Oracle数据库查询效率、减少资源消耗的关键信息。以下是一些可能涵盖在文档中的关键知识点: 1. **索引优化**: - 使用合适的索引类型,如B树索引...
本文将深入探讨Oracle语句优化的若干关键规则,帮助你提升数据库的运行效率。 1. **选择正确的索引策略**:索引是提升查询速度的关键。为经常出现在WHERE子句中的列创建索引可以显著加速查询。B树索引适用于等值...
Oracle语句优化是数据库管理中的关键环节,旨在提高SQL查询的效率,减少资源消耗,提升系统性能。本文将深入解析30个Oracle语句优化规则,聚焦于优化器的选择、表的访问方式以及SQL语句的共享机制。 首先,Oracle...
"Oracle 语句优化" 本文将详细地介绍 Oracle 语句优化的方法和技巧,涵盖多表关联、EXISTS 和 IN 语句的使用、INDEX_JOIN 优化、WHERE 和 HAVING 语句的区别、NOT IN 和 <> 操作符的使用、LIKE 操作符的替代、UNION...
Oracle语句优化是数据库管理中至关重要的一环,它可以极大地提升SQL查询的效率,减少资源消耗,进而改善整个系统的性能。以下是根据标题、描述和部分内容提炼出的一些Oracle语句优化规则: 1. **选择合适的优化器**...
### Oracle语句优化53个规则详解 #### 一、选用适合的ORACLE优化器 在Oracle数据库中,语句优化对于提升查询性能至关重要。优化器的选择直接影响到查询计划的质量,进而影响整体性能。 **1.1 ORACLE的优化器类型*...
### Oracle语句优化53个规则详解 #### 一、选用适合的Oracle优化器 在Oracle数据库中,优化器的选择对于SQL语句的执行效率至关重要。Oracle提供了三种优化器模式: 1. **基于规则的优化器(RULE)**:这是一种较...
### Oracle语句优化详解 #### 引言 Oracle数据库因其卓越的性能和强大的功能,在企业级应用中占据重要地位。然而,随着数据量的不断增长和业务复杂度的提升,如何优化SQL语句以提高查询效率成为DBA和开发者面临的...
### Oracle语句优化53个规则详解 #### 一、选用适合的Oracle优化器 在Oracle数据库中,优化器的选择对于提高查询效率至关重要。Oracle提供了三种优化器模式: 1. **基于规则的优化器(Rule-Based Optimizer, RBO...
### ORACLE语句优化53条 #### 一、选择合适的优化模式 ORACLE提供了三种主要的优化器模式:RULE-based optimizer(RBO)、Cost-based optimizer(CBO)以及CHOOSE,这三种模式的选择对查询性能有着直接的影响。 1...