oracle碎片小结

author:skate

time:2010-05-31

我们在使用windows的时候,都知道要定期整理磁盘碎片,因为磁盘碎片会影响性能,给管理上带来额外的

负担。那oracle更是如此,当随着数据增加,oracle处理海量数据本身就已经很费力了啊,如果再有大量

的碎片,那就是雪上加霜啊。所以碎片要引起dba的高度重视,尽早发现尽早处理。

碎片是怎么产生的呢?

简单理解就是由于更新和删除产生一些碎小的不能被再次使用的空间,根据每种不同的碎片他们的产生也是有区别的

block-level的碎片,而block又分为data block和index block,在data block中存放的是row数据,在index block

中存放的是索引键值数据,所以按上面所说,block-level碎片有细分为row-level碎片和Index Leaf Block-level碎片。

oracle的每一个对象都是存储在segment中,而oracle的最小分配单位是extents(区),在数据更新删除中也会产生碎片

这一级别的碎片就是segment碎片。segment又存在datafile中,而tablespace又是包含datafile的逻辑概念。所以这一层

是tablespace-level碎片;tablespace是在disk上存储,所以这一层就是disk-level碎片。

简单图示如下

disk-level fragmention

tablespace-level fragmentation

segment-level fragmentation

block-level fragmentation

row-level fragmentation

index leaf block-level fragmentation

顺便提下oracle extents存在的理由

一个extents是由多个相连的block组成的,多个extents做成一个segment;extent是oracle的最小分配单位

extent的优点:

1. 提高空间分配,释放的效率,降低管理block的资源成本

2. 提高扫描的效率,因为extent是由相连blocks做成的特性,可以一次读取更多的内容,较低io读写次数

extent的缺点

容易产生碎片

如何确定产生了碎片的呢?

一。表空间碎片确定参考

由于自由空间碎片是由几部分组成,如范围数量、最大范围尺寸等,我们可用 FSFI--Free Space Fragmentation Index

(自由空间碎片索引)值来直观体现:

FSFI=100*SQRT(max(extent)/sum(extents))*1/SQRT(SQRT(count(extents)))

可以看出,FSFI 的最大可能值为 100 (一个理想的单文件表空间)。随着范围的增加, FSFI 值缓慢下降,而随着最大范

围尺寸的减少,FSFI 值会迅速下降。通过如下语句查询F

相关文档:

Oracle存储过程包含三部分:过程声明,执行过程部分,存储过程异常。

Oracle存储过程可以有无参数存储过程和带参数存储过程。

一、无参程序过程语法

1 create or replace procedure NoParPro

2 as  ;

3 begin

4 ;

5 exception  &nb ......

Exam Number/Code : 1z0-047

Exam Name : Oracle Database SQL Expert

Questions and Answers : 278 Q&As

Update Time: 2010-04-15

1. Which two statements are true regarding the execution of the correlated subqueries? (Choose two.)

A. The nested query executes after the outer query returns th ......

Exam Number/Code : 1z0-047

Exam Name : Oracle Database SQL Expert

Questions and Answers : 278 Q&As

Update Time: 2010-04-15

1. Which two statements are true regarding the execution of the correlated subqueries? (Choose two.)

A. The nested query executes after the outer query returns th ......

服务器启动的过程

Oracle数据服务器的常规启动过程:

1、启动TNS监听             C:\Documents and Settings\Administrator>lsnrctl start

......

1.创建表:

a. 创建xs表中计算机专业学生的备份

Create table xs_jsj as select * from xs where zym=’计算机’;

b.完整的例子:

Create table test ......

oracle碎片产生原因,oracle碎片小结相关推荐

  1. oracle cpu 100%原因,oracle 12.1 cpu 100%

    查看整体负载 cpu使用居高不下;基本上整体CPU是百分80%以上了; 此时:物理读600MB/s,REDO也不算太高; 全为latch free,一般为bug高发区 检查相关SQL 基本为系统SQL ...

  2. Oracle错误04043原因,oracle常见错误代码说明备忘

    1.ORA-01031:insufficient privileges 原因:该用户没有操作权限.一般建表空间,建用户点,必需得要DBA权限的数据库用户才行,一般用户没赋予其权限,则创建会失败. 2. ...

  3. Oracle之索引和索引碎片问题解决

    反正死锁问题你看到刚才那个结果就够了,就是他已经把死锁问题给你解决了,毕竟你只要出现死锁,毕竟有一方用户就弹出来了,退出了,直接就弹出来了,这是ORACLE系统自己去解决了,咱们继续往下看 下面咱们要 ...

  4. oracle查看表和索引碎片,Oracle 表空间索引存储与碎片检查

    Oracle 表空间索引存储与碎片检查 Oracle 表空间索引存储检查,Oracle 表空间索引碎片查看,包括查看系统表中的用户索引.索引的存储情况检查.索引的选择性.确定索引的实际碎片. 1.查看 ...

  5. oracle 作业 断开原因,解惑 | Oracle JOB 异常中断原因分析

    注释 今天研发同事找我确认 PKG_WMS.proc_TaskMain 存储的 job 是否还在运行,竟发现 dba_jobs.NEXT_DATE=4000/1/1. 如下看看究竟原因吧~ JOB 信 ...

  6. mysql 回收空间_MySQL表的碎片整理和空间回收小结

    MySQL表碎片化(Table Fragmentation)的原因 关于MySQL中表碎片化(Table Fragmentation)产生的原因,简单总结一下,MySQL Engine不同,碎片化的原 ...

  7. Oracle中TO_DATE格式的使用小结

    Oracle中TO_DATE格式的使用小结 TO_DATE格式(以时间:2007-11-02   13:45:25为例)              Year:               yy two ...

  8. ORACLE JOB 失败 查看,Oracle JOB异常中断原因分析

    注释 今天研发同事找我确认 PKG_WMS.proc_TaskMain 存储的 job 是否还在运行,竟发现 dba_jobs.NEXT_DATE=4000/1/1,如下看看究竟原因吧~ JOB 信息 ...

  9. mysql怎么把值更新成space,MySQL表的碎片整理和空间回收小结

    MySQL表碎片化(Table Fragmentation)的原因 关于MySQL中表碎片化(Table Fragmentation)产生的原因,简单总结一下,MySQL Engine不同,碎片化的原 ...

  10. 数据结构考研:电脑磁盘碎片的定义、产生原理和清理原因(文件碎片/机械硬盘/固态硬盘/硬盘清理/计算机/软件工程/王道论坛)

    一.问题背景 博主最近在浏览王道论坛的数据结构书籍,其中提到数据的存储结构有4种,其中之一就是顺序存储,顺序存储可以实现随机存取,但只能使用物理地址上相邻的一整块存储单元,因此可能产生较多的外部碎片. ...

最新文章

  1. Android 使用 setImageResource 清空图片
  2. Mysql 根据一个表数据更新另外一个表
  3. 稀疏矩阵按列转置核心代码
  4. html读取字典endfor,Flask和HTML,从python字典迭代到HTML表
  5. Xml文件数据的优点
  6. 阿里云应用配置管理ACM发布,重新定义云上配置的存放方式
  7. Hibernate中常见问题 No row with the given identifier exists问题
  8. 异常来自 HRESULT:0x800A01A8
  9. Kotlin-高阶函数
  10. vue中this.$set的用法
  11. npm 下载第三方包
  12. 科技爱好者周刊(第 199 期):俄罗斯的 HTTPS 证书问题
  13. Android 打造万能网络解析框架
  14. [软件工程] 可行性研究
  15. 服务器登录显示sa登录失败,U8应用服务器配置时提示登录SA失败发现是由于未能找到存储过程‘sp_password’的解决方案...
  16. Linux学习(4)-文件颜色,绿色,蓝色,白色,红色等代表的意义
  17. 公云等相关应用怎样用
  18. 一种三分频电路的实现与仿真
  19. 工程建设项目管理信息系统
  20. C#的OpenFileDialog和SaveFileDialog的常见用法

热门文章

  1. 分布式理论与分布式架构设计理论
  2. linux宿主机文件拷贝,linux 虚拟机和宿主机相互拷贝文件
  3. qlv是什么格式的视频,怎么把qlv格式转换成mp4
  4. 文件压缩原理是什么?
  5. Django默认用户模型类和父类 AbstractUser 介绍
  6. 贴片晶振的焊接方法和注意事项
  7. 关于java Stream流将list集合分组之后与原list的集合的顺序不一致的问题
  8. 关于将图片转成base64的方法
  9. 通过TABULATE过程制作汇总报表
  10. ong拼音汉字_汉语拼音ong的发音方法