`

重建索引的条件

阅读更多

如果索引存在碎片,那每个索引数据块上的索引数据就更少,会导致我们需要访
问更多的索引数据块。这时,我们需要考虑重建索引来释放碎片;


判断一个所以是否需要重建,我们介绍一个简单的方法:

对一个索引进行结构分析后,如果该索引占用超过了一个数据块,且满足以下条件之一:

 

1:B-tree 树的高度大于3

 

2:使用百分比低于75%

 

3:数据删除率大于15%

 

 

就需要考虑对索引重建:


SQL> analyze index VEHICLEALARM_ALARMTIME compute statistics;
Index analyzed.

 

SQL> analyze index VEHICLEALARM_ALARMTIME validate structure;
Index analyzed.

 

SQL> select btree_space, -- if > 8192(块的大小)
 height, -- if > 3
 pct_used, -- if < 75
 del_lf_rows/(decode(lf_rows,0,1,lf_rows)) *100 as deleted_pct -- if >20%
 from index_stats;

 

 


BTREE_SPACE   HEIGHT     PCT_USED  DELETED_PCT
-----------          ----------    ----------     -----------
880032              2                 89                 0

分享到:
评论

相关推荐

    (mysql面试题)MySQL中的优化技巧,如查询优化、索引优化及代码展示.txt

    解释: - 在上述代码中,我们首先展示了一个不使用优化的查询语句,然后展示了一个使用优化的...创建合适的索引可以加快查询速度,但过多的索引会影响数据的插入、更新和删除操作的性能,因此需要定期维护和重建索引。

    oracle数据库索引失效

    3. 索引本身失效 需要重建索引 下面是一些不会使用到索引的原因 索引失效 1) 没有查询条件,或者查询条件没有建立索引 2) 在查询条件上没有使用引导列 3) 查询的数量是大表的大部分,应该是30%以上。 4) 索引...

    MySQL使用命令创建、删除、查询索引的介绍

    本文主要是对如何使用命令操作MySQL索引,包括创建索引、重建索引、查询索引、删除索引的操作。以下所列示例中的 `table_name` 表示数据表名,`index_name` 表示索引名,column list 表示字段列表(如:`id`,`order_...

    mysqlsql优化进阶教程-含视频及逻辑图

    MySQL索引优化是提高数据库性能和查询效率的关键步骤之一。索引是一种数据结构,用于快速查找数据库中的记录。合理设计和使用索引可以加快查询...同时,定期重建或者重新组织索引,可以进一步提高索引的效率和性能。

    异构多机器人系统中基于VIO-UWB的协同定位与密集场景重建

    多机器人系统中的有效协作需要对...索引项多机器人系统、协作定位、密集场景重建、超宽带(UWB)、基于UWB-VIO的定位、图形刚性、协作传感、分布式感知、UGV、UAV、MAV 我们已经解决了多机器人密集场景重建中的一些挑战

    基于SWOMP分段回溯的压缩感知改进算法

    首先采用算术阈值策略和最大相关列两种状态,根据具体阶段选择不同标准提高所选索引的精度,然后引入一个回溯步骤灵活地删除以前处理中错误选择的一些索引,以较低的复杂度获得较好的重建性能。仿真结果表明,在相同条件...

    capistrano-chewy:使用Capistrano进行耐嚼任务和Elasticsearch索引管理

    Capistrano::Chewy gem在部署流程中添加了仅条件修改的Chewy索引的自动有条件重置以及已删除索引文件的删除,因此您无需手动进行。 此外,它还增加了使用远程服务器上的基础Chewy任务进行手动索引管理的可能性。 ...

    基于压缩感知的步长自适应前向后向追踪重建算法

    压缩感知(CS)是一种新的信号采样、处理和...在稀疏信号非零值服从常见分布条件下,用AFBP、FBP等算法进行重建的结果表明,AFBP的准确重建概率、重建精度与FBP相当,重建时间明显少于FBP,能够更高效地重建稀疏度未知信号。

    oracle的sql优化

     索引最好单独建立表空间,必要时候对索引进行重建  必要时候可以使用函数索引,但不推荐使用  Oracle中的视图也可以增加索引,但一般不推荐使用  *Sql语句中大量使用函数时候会导致很多索引无法使用上,要针对...

    Sphinx+MySQL_jgsj

    前言:本文阐述的是一款经过生产环境检验的千万...Sphinx创建索引的速度为:创建100万条记录的索引只需3~4分钟, 创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    6. 步骤5/8:先决条件检查 如果你的电脑满足要求但仍然显示检查失败,这时候直接忽略,勾选全部忽略 7. 步骤6/8:概要信息 核对将要安装数据的详细信息,并保存响应文件,以备以后查看。然后点击完成数据库安装 ...

    SQLite学习手册(带目录)

    三、重建索引 四、数据分析 五、数据清理 SQLite学习手册(数据库和事物) 一、Attach数据库 二、Detach数据库 三、事物 SQLite学习手册(表达式) 一、常用表达式 二、条件表达式 三、转换表达式 SQLite学习手册(数据...

    重建——改善既有代码的设计

    重构(名词):对软件内部结构的一种调整,目的是在不改变"软件之可察行为"前提下,提高其可理解性,降低其修改成本.重构(动词):使用一系列重构准则(手法),在不改变"软件之可察行为"前提下,调整其结构...索引419

    SQLServer2008查询性能优化 2/2

    8.4.2 使用DROP_EXISTING子句重建索引 205 8.4.3 执行ALTER INDEX REBUILD语句 205 8.4.4 执行ALTER INDEX REORGANIZE语句 207 8.5 填充因子的重要性 209 8.6 自动维护 212 8.7 小结 217 第9章 执行计划缓冲...

    SQLServer2008查询性能优化 1/2

    8.4.2 使用DROP_EXISTING子句重建索引 205 8.4.3 执行ALTER INDEX REBUILD语句 205 8.4.4 执行ALTER INDEX REORGANIZE语句 207 8.5 填充因子的重要性 209 8.6 自动维护 212 8.7 小结 217 第9章 执行计划缓冲...

    论文研究-随机Petri网理论在GSM-R通信系统中的仿真应用.pdf

    对STL(Stereo Lithographic)模型中三角面片进行拓扑重建是解决在机检测系统中对零件模型表面进行曲面划分的前提条件之一。在建立点-边拓扑关系的基础上,将原有基于顶点坐标值浮点数比较的半边匹配结构转化为基于...

    Sybase 数据库服务器性能优化说明

    目前监控产品使用的Sybase数据库服务器版本为11.9.2,本文档主要针对这个版本的优化做出说明,优化方法包括如下:内存优化,设备数量设置,用户连接数设置,过程缓冲区配置以及热点表的重建索引工作等。

    SQL Server数据库查询速度慢原因及优化方法

    11、重建索引 DBCC REINDEX ,DBCC INDEXDEFRAG,收缩数据和日志 DBCC SHRINKDB,DBCC SHRINKFILE. 设置自动收缩日志.对于大的数据库不要设置数据库自动增长,它会降低服务器的性能。 在T-sql的写法上有很大的讲究,...

    基于springboot+mybatis+redis+es+bootstrap的搜索实战项目

    技术选型 springboot + mybatis + bootstrap + jqgrid + ajax + elasticsearch(用到在整合) + redis(用到在整合) ...基于数据库中数据重建es索引库 c.删除所有文档 d.关键词记录 e.远程词典操作

Global site tag (gtag.js) - Google Analytics