时间:2021-07-01 10:21:17 帮助过:23人阅读
先找出执行频率最高的sql,然后找出量比较大的表,然后把就是结合查询计划去实现这些语句的 索引 覆盖,还是sqlserver强大,查询计划是图形化的,mysql得explan有些弱呀。 1.作为where、join字段在生产环境下的使用频率,注意 索引 在哪些情况下不被使用 2.
先找出执行频率最高的sql,然后找出量比较大的表,然后把就是结合查询计划去实现这些语句的索引覆盖,还是sqlserver强大,查询计划是图形化的,mysql得explan有些弱呀。
1.作为where、join字段在生产环境下的使用频率,注意索引在哪些情况下不被使用 2.大数据表要做到CURD性能综合平衡:充分考虑索引对CUD的影响 3.OLTP和OLAP:用时间和空间来减少即需查询 4.需要使用唯一索引来保证数据的业务约束。5.原则索引应尽量使用数值字段 6.聚集索引和非聚集索引:最频字段或主键。7. 索引无法解决的问题要通过OLAP、(分布式)缓存等解决。索引对硬盘的伤害,即索引会增加写硬盘,写对硬盘的伤害比读大。
1:和数据操作方式有关,简单说就是SQL怎么写,查询条件和更新条件;2:和数据操作频次有关,读频率高和写频率高,处理思路会有不同;3:和数据容量有关;4:和数据分布特征有关;特别是复合索引设计,需呀理解数值分布的均匀度和散列特征;
索引本身带来的代价(变更频度,索引维护单次开销,索引空间,并发开销), 索引带来的好处(查询的开销变化, 查询的频度), 这两者的交叉点, 就是选择使用/不使用新的索引的交叉点