高性能索引创建策略-创新互联
目前关系数据库有六种范式:
成都创新互联是一家专注于成都网站建设、做网站与策划设计,蒲城网站建设哪家好?成都创新互联做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:蒲城等地区。蒲城做网站价格咨询:13518219792第一范式(1NF)所有属性都不可再分,即数据项不可分。
第二范式(2NF)每个实例或行必须可以被唯一的区分
第三范式(3NF)非主键列必须直接依赖于主键,不能存在传递依赖
巴斯-科德范式(BCNF)
第四范式(4NF)
第五范式(5NF,又称完美范式)。
反范式设计
索引代价
1.空间代价
2.时间代价
索引列的类型尽量要小
1.数据类型越小,查询快
2.数据类型越小,索引占用存储空间小,在一个数据页就可以放更多记录,从而减少磁盘IO带来的性能损耗
索引的选择性/离散性高的,也就是区分度高的列作为索引
索引选择性和前缀索引、
前缀索引:需要索引的列是字符串,通常用部分字符作为索引,节约空间,提高效率,
算法:SELECT COUNT(DISTINCT LEFT(str,len))/COUNT(*)
后缀索引类型邮件反着存,xxxx.@qq.com存moc.qq@xx来存
多列索引 怎么选择合适的索引顺序?
1、选择性高最高的列放到索引最前列
2,根据实际业务 找出运行频率高的查询来调整索引顺序
3,可能需要相同的列不同的顺序来建索引
设计三星索引
避免回表,回表就是随机IO,要尽量达到顺序IO
3.索引将相关的记录放到一起则获得一星;
结果集在一页或者相邻页
2.如果索引中的数据顺序和查找中的排列顺序一致则获得二星;(排序星)
排序字段需要用到的索引包含在联合索引中
1.如果索引中的列包含了查询中需要的全部列则获得三星。(宽索引星)
结果集需要的列在联合索引中(覆盖索引)
主键要很少update,冗余和重复索引
顺序IO
随机IO
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网页标题:高性能索引创建策略-创新互联
网页地址:http://abwzjs.com/article/jgeco.html