zoukankan      html  css  js  c++  java
  • DBA 培训相应内容笔记

    014-12-23
    slow hang lock 三种常见性能问题
    hang;整个数据库不响应,无法创建新连接.
    hanganalyze输出. dump文件是否有问题信息, 文件是否有其他信息
    工具:AWR . 10046, ORADBUG, RDA, SQL TRACE, PL/SQL
     
     
    优化器: RBO CBO
    CHOOSE FIRST_ROWS ALL_ROWS
    ROWID
    RECURSIVE CALLS
    ROW SOURCE
    PREDICATE (WHERE条件)
    DRIVING TABLE (驱动表, 通常oracle从左到右. 表数据最少,最为驱动表, 循环嵌套代价少) 被探查表
    PROBED TABLE 被探查表
    CONCATENATED INDEX 复合索引
    SELECTIVITY
     
    FULL TABLE SACNS
    TABLE ACCESS BY ROWID 对单条数据查找速度最快的方式.
    INDEX UNIQUE SACN 索引唯一性扫描. 索引扫描->带出rowid->对表进行存取.
    INDEX RANGE SCAN 索引范围扫描.  >= <=. 组合索引只只用部分.非唯一索引扫描.
    INDEX FULL SCAN 索引全扫描. 顺序与组合索引相同,则会触发扫描.
    INDEX FAST FULL SACN 索引快速扫描, 不会进行排序.
     
    表连接
    SORT MERGE JOIN 合并排序索引, 耗用内存. 以内存换取时间??
    1)非等值连接,效率较高.
    2)关联的列上都有索引,效果好.
    3)2个较大的row source连接,比NL(嵌套循环)连接要好.
    4)sort merge返回的row source过大,会导致过多的rowid在表中查询,过多的IO,性能下降.
     
    NESTED LOOPS 循环嵌套连接.
    1)DRIVING row source比较小,
    2)可以先返回已经连接的行,不必等待所有连接操作都完成才返回数据,可实现快速响应.
     
    HASH JOIN 哈希连接.
    只能再CBO 基于代价中使用





  • 相关阅读:
    记录排序算法
    Redis 记录
    ELK Windows环境 强行记录
    前端组件 bootstrap-select 下拉 多选 搜索
    记一次微信点赞小网站的事故
    来自加班的吐槽
    .net 比较器
    做一个.net core 小项目 遇到的一些坑
    即使通讯架构
    resultMap 映射
  • 原文地址:https://www.cnblogs.com/hijushen/p/4223542.html
Copyright © 2011-2022 走看看