zoukankan      html  css  js  c++  java
  • Library Cache Lookup

    Libraey Cache Data Access

    library cache是关于SQL语句的SGA中的一系列的链表,

    library cache是通过访问一系列的hash buckets,实现使用hash table,

    每个特定的hash,链接到SQL语句

    链接到SQL语句挂载hash buckets的列表,

    每个语句在特定的列表上Hashes到一个hash

    链表是一系列的处理或引用,事实上,SQL语句本身组成了句柄,在每个句柄下,可能有多个相同SQL

    语句的版本,同一条SQL语句多个版本发生在如下情况:

    --指向不同的对象(不同的用户)

    --绑定变量类型不同

    --优化器模式不同或者NLS设置不同

    多版本的信息存储在单独的子library cache cursors,当一条新的SQL被解析时,

    语句被Hash,被放到一个链表于hash值关联。不同的SQL语句可能有相同的

    HASH.为了找到library cache中的sql语句,SQL语句被hash,扫描列表来查找匹配的SQL语句,如果存在多个版本,逐个匹配。

    匹配SQL语句时通过访问parent library cursor,余下的信息存在在子游标中,

    如果多个版本存在,多个版本的子游标依次访问。

     

     

     

     

  • 相关阅读:
    iBatis,第二次亲密接触
    微斯人,吾谁与归
    一个月了
    生命在于运动
    眼皮跳了好几天
    往返
    中病毒,学习批处理

    爱如潮水
    今天夏至
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/3798110.html
Copyright © 2011-2022 走看看