索引的基本操作与存储效率的体验_第1页
索引的基本操作与存储效率的体验_第2页
索引的基本操作与存储效率的体验_第3页
索引的基本操作与存储效率的体验_第4页
索引的基本操作与存储效率的体验_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软工二班软工二班 0141122737 0141122737 钱雪茹钱雪茹 参照示例上机操作,多 次重做实验记录耗时, 并做分析比较 内容一内容二内容三内容四 参照示例做类似实验, 多次实验记录耗时,并 做分析比较 oracle中影响数据存取 效率的因素分析及体会 参照实验示例,测试其 它数据库管理系统中使 用索引或不使用索引的 效果。 讨论内容 参照示例上机操作 with reference to the sample computer operation 1 对约有8万条记录的表进行单记录插入与所有所有记录排序查询(分别对两个不同字段进行排序),执行耗时(以 毫秒为单位)比较,测试使用索引

2、与不使用索引、使用聚集索引与非聚集索引、对唯一值字段与非唯一值字段建立 索引并排序等情况的执行状况。从中能领略到使用索引的作用与意义,并能在其他需要建立索引的场合利用这种测 试办法来分析与比较。 (1)创建表 itbl,并插入8 万条记录 (4)对itbl表 id字段建非聚 集索引 (2)下面是 测试命令执行 的代码。 (6)对itbl表 mm字段建聚 簇索引 (3)未建索 引时 (5)对itbl表 mm字段建非 聚集索引 操作步骤 (1)创建表itbl,并插入8万条记录。 增加缺失序 列 在表在表itbl中生成中生成 80000条记录条记录 表生成 (3)未建索引时: 1)单记录插 入(约1

3、9毫秒) (3)未建索引时: 2) 查询所有 记录,按id排 序(约126毫 秒)。 (3)未建索引时: (3)查询所 有记录,按 mm排序(约 125毫秒) (3)未建索引时: (4)查询 mm=1的所 有记录,按id 排序(约16毫 秒) (4)对itbl表id字段建非聚集索引 1) 建索引毫 时(约53毫秒) (4)对itbl表id字段建非聚集索引 2) 单记录插 入(约35毫秒) (4)对itbl表id字段建非聚集索引 3)查询所有记 录,按id排序 (约203毫秒) (4)对itbl表id字段建非聚集索引 4) 查询所有 记录,按mm 排序(约119 毫秒) (4)对itbl表id字

4、段建非聚集索引 5) 查询 mm=1的所 有记录,按id 排序(约2毫秒) (4)对itbl表id字段建非聚集索引 6) 删除索引 (约547毫秒) (5)对itbl表mm字段建非聚集索引 1) 建索引毫 时(约56毫秒) (5)对itbl表mm字段建非聚集索引 2) 单记录插 入(约22毫秒) (5)对itbl表mm字段建非聚集索引 3) 查询所有 记录,按id排 序(约111毫 秒) (5)对itbl表mm字段建非聚集索引 4) 查询所有 记录,按mm 排序(约12毫 秒) (5)对itbl表mm字段建非聚集索引 5) 查询 mm=1的所 有记录,按id 排序(约53毫 秒) (5)对it

5、bl表mm字段建非聚集索引 6) 删除索引 (约37毫秒) (6)对itbl表mm字段建聚簇索引 (6)对itbl表mm字段建聚簇索引 单记录插入到 表itbl2(约11 毫秒) (6)对itbl表mm字段建聚簇索引 单记录插入到 表itbl3(约13 毫秒) (6)对itbl表mm字段建聚簇索引 表itbl2查询 所有记录,按 id排序(约125 毫秒) (6)对itbl表mm字段建聚簇索引 表itbl3查询 所有记录,按 id排序(约12 毫秒) (6)对itbl表mm字段建聚簇索引 表itbl2查询 所有记录,按 mm排序(约 119毫秒) (6)对itbl表mm字段建聚簇索引 表itb

6、l3查询 所有记录,按 mm排序(约 13毫秒) (6)对itbl表mm字段建聚簇索引 对表itbl2查 询mm=1的 所有记录,按 id排序(约15 毫秒) (6)对itbl表mm字段建聚簇索引 对表itbl3查 询mm=1的 所有记录,按 id排序(约12 毫秒) 未建索引未建索引非聚集索引非聚集索引非聚集索引非聚集索引对itbl2表建 聚簇索引 对itbl3表建 聚簇索引 单记录插入 (ms) 19/1735/3219/1811/1013/11 查询所有记 录,按id排 序(ms) 126/121203/198111/112125/12412/13 查询所有记 录,按mm 排序(ms)

7、125/123119/11612/10119/11713/10 查询mm=1 的所有记录 (ms) 16/142/35315/1312/11 当表中为80万条记录 增加缺失序列 当表中为80万条记录 当表中为80万条记录 1) 单记录插 入 当表中为80万条记录 2) 查询所有 记录,按id 排序 当表中为80万条记录 (3)对itbl 表id字段建 非聚集索引 1) 建索 引毫时 当表中为80万条记录 (3)对itbl 表id字段建 非聚集索引 2) 单记 录插入 当表中为80万条记录 (3)对itbl 表id字段建 非聚集索引 3) 查询 所有记 录,按 id排序 当表中为80万条记录 (

8、3)对itbl 表id字段建 非聚集索引 4) 删除 索引 当表中为80万条记录 未建索引未建索引建立聚簇索引建立聚簇索引 单记录插入16/1331/29 查询所有记录,按id排序1002/10011170/1162 参照示例做类似实验 with reference to the sample do similar experiment 2 另找一个含较多记录的表 增加缺失序列 另找一个含较多记录的表 另找一个含较多记录的表 (1)未建 索引时 1)单记录 插入 另找一个含较多记录的表 (1)未建 索引时 2)查询所 有记录, 按id排序 另找一个含较多记录的表 (2)对 itbl表id字 段

9、建非聚 集索引 1)建索引 毫时 另找一个含较多记录的表 (2)对 itbl表id字 段建非聚 集索引 2)单记录 插入 另找一个含较多记录的表 (2)对 itbl表id字 段建非聚 集索引 3)查询所 有记录, 按id排序 另找一个含较多记录的表 未建索引未建索引建非聚集索引建非聚集索引 单记录插入15/1316/14 查询所有记录,按id排序16/1216/17 影响数据存取效率的因素 factors that influence efficiency of data access 3 在本次试验中,体现的oracle中影响数据存取效率的因素为,1.数据库中 数据量的多少。2.查询语句是否

10、为最佳。3.是否建立合适的索引。同时,若对oracle 建立索引,当对oracle数据进行查询时,oracle本身会选择是否使用索引, 但这种选择,有时是不准确的。 oracle中影响数 据存取效率的因 素分析与体会 什么情况下应 该建立索引 什么情况下应不 建或少建索引 索引的优势与劣势 虽然索引通过一组排序后的索引来取代默认的全表扫描检索方式,从而提高 检索的效率,但创建和维护索引是有代价的。一是索引需要占用物理空间; 二是当对表中的记录进行增加,删除和修改时,索引也要自动维护,降低了 数据的维护速度。因此是否应该在列上创建索引要权衡索引的利弊。 01010202 04040303 1.表的主关键字,表的主关键字, 自动建立唯一索引自动建立唯一索引 2.表的字段表的字段 唯一约束唯一约束 3.直接条件查询的字段直接条件查询的字段 4.查询中与其它表关联的查询中与其它表关联的 字段,常常建立了外键关系字段,常常建立了外键

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论