当前位置: 首页 > news >正文

oracle共享池(shared pool):一、工作原理、组成部分 二、软硬解析过程

文章目录

  • oracle整体结构图
  • 共享池(shared pool)
    • shared pool的作用
    • shared pool的组成
    • 查询 shared pool 各组成部分大小
    • 硬解析和软解析


oracle整体结构图

在这里插入图片描述

共享池(shared pool)

shared pool的作用

1、 将 sql 语句解析成执行计划

2、 对执行计划进行执行,读取数据

3、 将读取到的数据返回给客户端

解析====》执行===》返回,此处涉及到“解析”,下文将详细分析和总结,

shared pool的组成

在这里插入图片描述
① free 空间

② 库缓存,用于缓存 SQL 语句和执行计划,比如最近执行过的sql语句、pl/sql过程和包

③ 字典缓存,存储数据库自己本身的信息,包括数据字典,比如:表的定义,口令,表的结构,用户名,权限等信息,尽可能多的熟悉数据字典,才能更好的掌握oracle,相关free、libaray cache、shared pool等相关大小情况都可以在v$sgastat (内存字典)中进行查看,方便数据库监控、管理以及后期通过修改参数来改变大小空间

查询 shared pool 各组成部分大小

1、select * from v$sgastat a where a.name= ’ library cache ’ ;查看库缓存大小信息

2、select * from v$sgastat a where a.pool =‘shared pool’ and a.name=‘free memory’;查看共享大小和空闲大小信息

3、select * from v$sgastat a where a.name=‘row cache’;查看字典缓存大小

硬解析和软解析

在 shard pool 中,前台进程会将 SQL 语句解析成执行计划,这部分中解析方式有两种:硬解析和软解析。

1、oracle执行sql的步骤过程:

1.1、语法检查(syntax check)
检查此sql的拼写是否语法。
1.2、语义检查(semantic check)
诸如检查sql语句中的访问对象是否存在及该用户是否具备相应的权限。

1.3、对sql语句进行解析(prase)
利用内部算法对sql进行解析,生成解析树(parse tree)及执行计划(execution plan)。
1.4、执行sql,返回结果(execute and return)

根据sql处理过程确定,软硬解析发生再1.3步骤过程中,

硬解析过程:

1.语法、语义及权限检查;2.查询转换(通过应用各种不同的转换技巧,会生成语义上等同的新的SQL语句,如count(1)会转为count(*));3.根据统计信息生成执行计划(执行计划由很多种,但是一定选择成本最低,消耗资源最少,最优的方案执行计划);4.将游标信息(执行计划)保存到库缓存。

软解析过程:

1.语法、语义及权限检查;2.将整条SQL 直接在库缓存中执行计划

1、硬解析( hard parse ) : 当一条 SQL 语句进入共享池后,没有解析成执行计划的缓存,就需要进行硬解析—消耗资源大,成本高,速度慢

2、软解析( soft parse ) : 当一条 SQL 语句进入共享池后,共享池中有执行计划的缓存,就进行软解析—shared pool中获取缓存的sql,如果没有的情况下则会发生硬解析过程,

查看解析的相关信息,
在这里插入图片描述
1、cpu解析时间
2、执行计划解析时间
3、解析总数=硬解析总数+软解析总数,可以得到软解析总数,
4、硬解析总数
5、解析失败总数

相关文章:

oracle共享池(shared pool):一、工作原理、组成部分 二、软硬解析过程

文章目录 oracle整体结构图共享池(shared pool)shared pool的作用shared pool的组成查询 shared pool 各组成部分大小硬解析和软解析 oracle整体结构图 共享池(shared pool) shared pool的作用 1、 将 sql 语句解析成执行计划 …...

设计模式六大原则中的里氏替换原则

设计模式六大原则中的里氏替换原则(Liskov Substitution Principle, LSP)是面向对象设计中一个至关重要的原则,它定义了继承的基本原则和约束,确保子类能够透明地替换父类,而不会破坏系统的正确性和稳定性。以下是对里…...

安装Cellpose

Cellpose是目前运用范围最广、效果最好的细胞分割模型,以下是安装方法。 3.1 安装cellpose 3.1.1 创建cellpose 打开Anaconda Navigator,如下图所示: 图3.1.1.1 Anaconda Navigator 依次点击 Environments、Create,在弹出的窗中&#xff0…...

图卷积神经网络算法

图神经网络 图卷积神经网络 GNN GCN 算法 咨询 图卷积神经网络(GCN) python D码,应用于节点分类。元学习,自监督学,transformer,lstm,cnn,bert,GAN,交通预测 …...

【C#】System.Text.Json

文章目录 主要特点使用场景基本用法序列化反序列化 自定义序列化与反序列化注意事项 System.Text.Json 是 .NET Core 3.0 及更高版本中引入的一个高性能的、低内存的 JSON 序列化与反序列化库。它是 .NET Core 和 .NET 5/6/7 等新版本中推荐的 JSON 处理方式,因为它…...

经典游戏,用java实现的坦克大战小游戏

今天给大家分享一个使用java编写的坦克大战小游戏,整体还是挺好玩的,通过对这款游戏的简单实现,加深对java基础的深刻理解。 一、设计思路 1.坦克大战小游戏通过java实现,其第一步需要先绘制每一关对应的地图,地图包括…...

linux开通端口命令

这块需要开通8088 8083 端口限制 查看已开放端口:sudo firewall-cmd --list-ports 开放8083端口:sudo firewall-cmd --add-port8088/tcp --permanent 开放8088端口:sudo firewall-cmd --add-port8083/tcp --permanent 移除端…...

5、并发锁机制之synchronized

并发锁机制之synchronized i/i--引起的线程安全问题分析原因分析i的JVM字节码指令i--的JVM 字节码指令结论 解决方案 synchronized的使用加锁方式使用synchronized解决之前的共享问题方式一方式二 synchronized底层实现原理分析查看synchronized的字节码指令序列重量级锁实现之…...

职场那些事:应对施暴者的智慧

在职场中,有些人用各种手段让你感到难受,让你屈服,甚至适应他们的变态心理。面对这种人,最重要的就是保持低调。🤐 很多同事选择倾诉,然而这其实是个大错特错。正如鲁迅所说,“同事间的悲欢并不…...

精细化管理和智慧化运营的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用…...

vue项目配置基础路由vue-router

1、运行以下命令安装vue-router yarn add vue-router 2、在src目录下的components中新建两个vue页面 3、在src目录下新建router文件夹,在router文件夹下面新建index.js文件 4、配置main.js文件 //引入Vue import Vue from "vue"; //引入App import App…...

2024年入职/转行网络安全,该如何规划?_网络安全职业规划

前言 前段时间,知名机构麦可思研究院发布了 《2022年中国本科生就业报告》,其中详细列出近五年的本科绿牌专业,其中,信息安全位列第一。 网络安全前景 对于网络安全的发展与就业前景,想必无需我多言,作为…...

【Python系列】执行 Shell 命令的六种方法

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

2024华为OD机试真题-部门人力分配Python-C卷D卷-200分

【华为OD机试】-(C卷+D卷)-2024最新真题目录 目录 题目描述 输入描述 输出描述 用例1 考点 解题思路 代码 题目描述 部门在进行需求开发时需要进行人力安排。 当前部门需要完成 N 个需求,需求用 requirements 表述,requirements[i] 表示第 i 个需求的工作量大小,单…...

【Leetcode 1436 】旅行终点站—— 哈希表

给你一份旅游线路图,该线路图中的旅行线路用数组 paths 表示,其中 paths[i] [cityAi, cityBi] 表示该线路将会从 cityAi 直接前往 cityBi 。请你找出这次旅行的终点站,即没有任何可以通往其他城市的线路的城市。 题目数据保证线路图会形成一…...

springboot自动配置原理-面试题

网络上看很多文章并没什么用,重点没说到,不知道从那里入手讲,刷到的直接按照下面这个,背出来就行了 1、当启动springboot应用程序的时候,会先创建SpringApplication的对象,在对象的构造方法中会进行某些参数…...

【C++题解】1140 - 亲密数对

欢迎关注本专栏《C从零基础到信奥赛入门级(CSP-J)》 问题:1140 - 亲密数对 类型:自定义函数 题目描述: 键盘输入 N ,N 在 2 至 2000 之间,求 2 至 N 中的亲密数对,就是 A 的因子和…...

学习大数据DAY40 基于 hive 的数据处理

目录 Hive 复合数据定义方法 Hive 复合数据查询方法 hive 内置函数 上机练习 Hive 复合数据定义方法 Hive 复合数据查询方法 hive 内置函数 -- 查看系统自带的函数 show functions; -- 显示自带的函数的用法 desc function upper; -- 详细显示自带的函数的用法 desc …...

[数据集][目标检测]手钳检测数据集VOC+YOLO格式141张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):141 标注数量(xml文件个数):141 标注数量(txt文件个数):141 标注类别…...

SQL注入(head、报错、盲注)

目录 【学习目标、重难点知识】 【学习目标】 【重难点知识】 1. 报错注入 1.1 那么什么是报错注入呢? 1.2 报错注入原理 extractvalue函数 updatexml函数 1.3 靶场解析 靶场练习 2. HEAD注入 2.1 相关全局变量 2.2 靶场解析 burp暴力破解 靶场练习 3…...

完整贡献指南:如何为endoflife.date添加新的产品支持信息

完整贡献指南:如何为endoflife.date添加新的产品支持信息 【免费下载链接】endoflife.date Informative site with EoL dates of everything 项目地址: https://gitcode.com/gh_mirrors/en/endoflife.date 你是否想为开源项目贡献自己的力量,但不…...

Qwen3-Embedding-4B应用分享:打造智能法律合同检索系统,快速找到关键条款

Qwen3-Embedding-4B应用分享:打造智能法律合同检索系统,快速找到关键条款 1. 引言:法律合同检索的痛点与解决方案 在法律实务工作中,合同审查是一项耗时且关键的任务。律师和法务人员经常需要从数百页的合同中快速定位特定条款&…...

Qwen3-TTS开源模型教程:Gradio接口封装+API服务发布完整指南

Qwen3-TTS开源模型教程:Gradio接口封装API服务发布完整指南 1. 前言:为什么你需要一个专属的语音合成服务? 想象一下,你正在开发一个智能客服应用,需要为不同国家的用户提供多语言的语音回复;或者你是一个…...

自动驾驶RL微调实战:如何用MotionLM提升模型可靠性(附Waymo数据集配置)

自动驾驶RL微调实战:如何用MotionLM提升模型可靠性(附Waymo数据集配置) 在自动驾驶技术快速迭代的今天,强化学习(RL)微调已成为提升模型可靠性的关键手段。不同于传统模仿学习(IL)的…...

VSCode里装个Cline,真能让写代码快10倍?我的真实体验和避坑指南

VSCode里装个Cline,真能让写代码快10倍?我的真实体验和避坑指南 第一次听说Cline这个VSCode插件时,我内心是充满怀疑的。作为一个在代码堆里摸爬滚打多年的开发者,早已对各种"革命性"工具免疫。但当我看到同行在短短十分…...

Labelme标注实战:5分钟搞定语义分割数据集制作(附避坑指南)

Labelme标注实战:5分钟搞定语义分割数据集制作(附避坑指南) 当你第一次接触计算机视觉项目时,可能会被海量的标注需求吓到。别担心,今天我要分享的是如何用Labelme这个轻量级工具,快速完成语义分割数据标注…...

告别手动调参!用Simulink扫频法+PID Tuner,10分钟搞定升降压电路的PI控制器设计

10分钟自动化PI设计:Simulink扫频与PID Tuner在升降压电路中的实战技巧 电力电子工程师们对这样的场景一定不陌生:面对一个全新的升降压电路拓扑,为了获得稳定的输出电压,不得不花费数小时甚至数天时间反复调整PI控制器的参数。传…...

Phi-4-mini-reasoning效果实测:在高考数学压轴题上的分步推导与结论匹配度

Phi-4-mini-reasoning效果实测:在高考数学压轴题上的分步推导与结论匹配度 1. 模型能力概述 Phi-4-mini-reasoning是一款专注于推理任务的文本生成模型,特别擅长处理需要多步逻辑推导的数学题和逻辑题。与通用聊天模型不同,它被设计为直接接…...

3分钟上手弹幕盒子:零基础高效制作自定义弹幕的免费工具

3分钟上手弹幕盒子:零基础高效制作自定义弹幕的免费工具 【免费下载链接】danmubox.github.io 弹幕盒子 项目地址: https://gitcode.com/gh_mirrors/da/danmubox.github.io 弹幕盒子是一款专业的在线自定义弹幕生成工具,以轻量化架构设计为核心&a…...

YOLOFuse实战案例:如何利用红外+RGB融合提升森林火情监测精度

YOLOFuse实战案例:如何利用红外RGB融合提升森林火情监测精度 1. 森林火情监测的痛点与挑战 森林火灾是全球性的生态灾难,每年造成巨大经济损失和生态破坏。传统监测手段主要依赖可见光摄像头和人工巡查,存在明显局限性: 夜间失…...