14.读书笔记收获不止Oracle之 索引
14.读书笔记收获不止Oracle之 索引 1. B树索引索引和表一样,都是逻辑体系结构中的段的一种。当建一个T表,就产生一个T表的表SEGMENT。当在T表的某些列上建索引IDX_T,就产生一个IDX_T的索引SEGMENT。 索引建在表的具体列上,存在目的就是让表的查询更快,效率更高。表记录丢失关乎生死,而索引丢失只需重建即可。 索引是数据库学习中最实用的技术之一,深刻理解和掌握索引的知识,能在数据库相关工作中发挥巨大的作用。 索引结构如下图1: 叶子块 Leaf 存储了 keycolumn value(索引列具体值),以及能具体定位到数据块所在位置的rowid. Leaf叶子块主要存储了key column value( 索引列具体值)以及能具体定位到数据块所在位置的rowid. 2. 创建索引步骤建索引先进行排序,这一步在内存中执行。然后排序后的列值和ROWID入块成索引,填满一块接一块,此时会出现他们的上层块来管理这些块。上层块管理超过上限后,又会出现上层块的上层块来管理。 3. 关于索引高度最底层的叶子块indexblock装具体的数据,比较容易被填满。特别是对长度很长的列建索引时更是如此。一个500G的表,记录几百亿条,高度不过6层而已。 4. 索引存储列值索引除了存储了索引列的具体内容,还包含了标记定位行数据在数据库中位置的ROWID。 5. 索引本身有序索引在建的时候,对列进行了排序操作,索引是有序的。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |