百万级朝上数据量的表如果允许见多少索引合适

BankingRegulatorLLM 2011-08-13 01:36:47
现在工作第一次面对百万级以上数据量的、100朝上个字段的表,

因为是第一次写存储过程,碰到select这些表的语句特别多,在不建索引的时候

再对这些表做查询的时候特慢,所以我建了好几个索引,但是都说不能太多,想请问多少个不会带来维护上的压力

还有我建立的许多索引经常不生效,许多网友回答说可能是 数据隐式转换,请问数据隐式转换和索引有什么关系

还有如何在合适的情况去用函数索引,什么情况下用?
...全文
59 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
horizonlyhw 2011-08-13
  • 打赏
  • 举报
回复
索引多不多 都看具体需求
但是 如果表设计的合理,不会需要非常多的索引,毕竟能从ID找到人 就不会需要从名字找到人(用逻辑去优化这块)

隐式转换是说 你在某个索引列上进行了运算、转换等,造成sql解析的时候,不会按照索引去走。尽量避免这种状况,不然 你的索引就白建了。
灰哥 2011-08-13
  • 打赏
  • 举报
回复
索引怎么建还得看你日常的SQL怎样写,经常拿什么样的条件做为检索数据的where条件。
只有充分分析这些你才能建立合适的索引...
你光说百w级数据别人是帮不了你的,而且百万也挺少的撒。
淡定的峰哥 2011-08-13
  • 打赏
  • 举报
回复
索引对DML(INSERT,UPDATE,DELETE)附加的开销是很高的,有个测试数据
索引对于Insert性能降低56%
索引对于Update性能降低47%
索引对于Delete性能降低29%
因此对于写IO压力比较大的系统,表的索引需要仔细评估必要性

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧