1、索引(index):索引是为了提高数据检索的性能而建立的,利用它可快速的确定指定的信息。索引分为:B-Tree Index(最常用)、全局或局部索引、位图索引(Bitmap Index)、函数索引、反向键索引、键压缩索引、分区索引。

索引通常能提高select/update/delete的性能,会降低insert的速度。

1.1)B-Tree Index:B树索引是一个典型的树结构。

其包含的组件主要是:

叶子节点(Leaf node):包含条目直接指向表里的数据行;

分支节点(Branch node):包含的条目指向索引里其他的分支节点或者是叶子节点; 根节点(Root node):一个B树索引只有一个根节点,它实际就是位于树的最顶端 的分支节点。

按照存储结构的不同可分为簇索引(clustered index)和非簇索引(nonclustered index);

1.1.1) 簇索引:对表的物理 中的数据按列排序,再重新存储在磁盘上。簇索引查找数据很快,但占磁盘的空间也很大;

创建索引的语句:;create[unique][clustered;[with[pad_index],[[fillf;[sort_in_tempdb]][onfile;其中;Unique:创建唯一索引,及索引的键值不重复;Clustered:簇索引;;Pad_index:指定填充索引快,但占磁盘的空间也很大。

1.1.2)非簇索引:将行定位器按关键字的值用一定的方式排序,与表的行在数据页的排序是不匹配的。一个表可以建立很多非簇索引,但只能建立一个簇索引。

创建索引的语句:

create [unique] [clustered|nonclustered] index index_name on {table|view} (column[asc|desc])

[with [pad_index], [[fillfactor=fillfactor], [ignore_dup_key], [drop_existing], [statistics_norecompute],

[sort_in_tempdb]][on filegroup]

其中

Unique:创建唯一索引,及索引的键值不重复。

Clustered:簇索引;

Pad_index:指定填充索引的内部节点的行数,至少应大于等于两行;

Fillfactor:填充因子,指定创建索引时,每个索引页的数据占索引页大小的百分比;

Ignore_dup_key:控制了当向包含于一个唯一约束中的列中插入重复数据时数据库所做的反应;

Drop_existing:指定要删除并重新创建簇索引。删除簇索引会导致所有的非簇索引被重建; Statistics_norecompute:指定分布统计不自动更新 ;

Sort_in_ tempdb:指定用于创建索引的分类排序结果将被存储到tempdb数据库中; On filegroup:指定存放索引的文件组。

oracle物理索引结构,oracle学习笔记(6)oracle物理结构--索引相关推荐

  1. oracle创建索引index,【学习笔记】Oracle索引 创建含sysdate的函数index案例

    天萃荷净 分享一篇运维DBA需求,创建含sysdate的函数index案例 1.模拟Oracle数据库环境 创建表插入数据库 [oracle@node1 ~]$ sqlplus chf/oraclep ...

  2. oracle事务数统计,【学习笔记】Oracle数据库收集统计信息的两种方法介绍案例

    天萃荷净 分享一篇关于Oracle数据库收集统计信息的办法,Oracle DBMS_STATS与Oracle analyze使用方法案例 今天群里面讨论DBMS_STATS和analyze,这里进行了 ...

  3. oracle 表复制 long,【学习笔记】Oracle数据库使用copy实现long类型转移表空间案例 ORA-00997...

    天萃荷净 使用copy实现long类型转移表空间,表空间的数据文件损坏,在转移该表空间相关表时,遇到让人郁闷的long类型.不能使用ctas和move来实现转移,最后通过古老的copy来实现该项工作. ...

  4. oracle job enq tx,【学习笔记】Oracle等待事件 enq:TX–allocate ITL entry产生原因和解决办法...

    天萃荷净 运维DBA反映Oracle数据库出现enq:TX–allocate ITL entry等待事件,结合案例分析该等待事件产生原因和解决办法 今天在分析一份awr中发现了较为明显的enq: TX ...

  5. linux oracle流复制文件,【学习笔记】Oracle ASM linux dd命令复制asm中文件 操作磁盘或者分区...

    天萃荷净 使用dd复制asm中文件,随着数据库新版本的推广ASM肯定会越来越被重视,最近准备系统的学习下ASM,以备突发情况需要,这是asm深入学习笔记 1.查询ASM某个数据文件AU信息 SQL&g ...

  6. oracle中overwrite写法,【学习笔记】Oracle 11G新特性restart的深入研究案例

    [学习笔记]Oracle 11G新特性restart的深入研究案例 时间:2016-11-26 22:35   来源:Oracle研究中心   作者:网络   点击: 次 天萃荷净 Oracle研究中 ...

  7. oracle访问控制策略查看,【学习笔记】oracle fga 细粒度访问控制研究笔记

    天萃荷净 oracle研究中心学习笔记:分享一篇关于Oracle数据库细粒度访问控制的学习笔记,详细介绍了Implement fine-grained access control (Fine-Gra ...

  8. oracle查询大小写敏感参数,【学习笔记】Oracle 11G密码大小写敏感的设置方法 sec_case_sensitive_logon参数...

    天萃荷净 分享一篇Oracle数据库密码大小写敏感设置案例,从11.1开始密码大小写敏感了,同时可以设置sec_case_sensitive_logon参数可以忽略大小写敏感(USER$.SPARE4 ...

  9. oracle的PRIPID字段,【学习笔记】Oracle进程调度策略优先级 high_priority_processes案例...

    [学习笔记]Oracle进程调度策略优先级 high_priority_processes案例 时间:2016-10-27 21:51   来源:Oracle研究中心   作者:HTZ   点击: 次 ...

  10. oracle rman本地备份,【学习笔记】Oracle RMAN 备份集存储到远程其它服务器实现方法...

    天萃荷净 应运维DBA要求,将服务器本地Oracle数据库的RMAN备份集备份存储到远程其它服务器中,结合案例详细讲解实现步骤 在linux中,要使用rman备份后传输到远程服务器上,可以选择ftp, ...

最新文章

  1. 一文掌握机器学习必备数学知识(附学习资源)
  2. 《.NET与设计模式》学习(一)
  3. Windows核心编程 第十七章 -内存映射文件(下)
  4. C++之string类
  5. 成功解决tensorflow.keras: AttributeError: ‘str‘ object has no attribute ‘decode‘
  6. [转]Nginx的负载均衡方式
  7. iOS内存管理的知识梳理
  8. springboot+security框架整合
  9. php jquery进度条,如何实现jQuery进度条效果
  10. 关于并查集的Python实现代码
  11. Linux如何从零开始搭建rsync服务器(centOS6)
  12. 三维重建笔记_三维重建方法导图
  13. Java练习 SDUT-1294_选票统计
  14. [System Design] 系统设计 (2) -- 数据库设计
  15. Java二十三设计模式之-----桥接模式
  16. python调用c++动态库_python调用c++开发的动态库
  17. Virtex-4 cameralink开发板PCI图像采集卡定制FPGA-HDMI编码-LVDS相机
  18. ISP(六) 空间域图像变换(图像反转、对数变换、幂次变换、分段线性变换、直方图均衡与匹配)
  19. 微盟WOS新商业操作系统正式公测
  20. 世界地图各大洲鼠标移入切换显示

热门文章

  1. DOS 入侵、群发邮件、心脏起搏器……病毒攻击简史!
  2. 5G 基站功耗,到底有多可怕?
  3. 为前端工程之崛起而编程!
  4. 吃亏的程序员,如何拿到 9 个月的年终奖?
  5. 5 万条微信语音升入太空;阿里京东否认停止社招;雷军开怼华为 | 极客头条...
  6. 哈工大女孩学计算机毕业转行,2020考生切记,上985读这些专业,据说都是“坑”!...
  7. 如何化身BAT面试收割机?不愧是大佬
  8. IDEA 创建 MAVEN 父子工程
  9. java窗口小程序atm_写一个ATM机小程序(JAVA), 目前老师 讲到了 静态工厂
  10. php fastdfs扩展,php如何安装fastdfs扩展