优化,一张容纳海量数据的表,会经常被更新和插入数据(插入数据更多),在不同时间段还会被查询,这样的表需要建立索引么?
我的初衷是要提高效率,不管是对表查询还是插入,更新,不管用什么办法,请高人们给予意见!
------解决方案--------------------
------解决方案--------------------索引肯定要建立,特别是那些经常用到的查询字段。
------解决方案--------------------
1、合理的建立索引,特别是作为Where条件的字段;
2、注意锁定,如果允许读取脏数据的话,查询的时候加上with(nolock);
3、如果数据分布比较均匀,可以尝试分区表;
4、查询的时候注意使用索引,避免使用like '%...'、not in等不能使用索引的语句;
5、特别注意不要使用select *这种方式返回数据;
6、服务器的数据库文件分布合理,如果没有使用磁盘阵列的话可以减少IO争用...
还有很多优化方面的技巧,论坛里面很多这方面的帖子,可以查阅一下。
------解决方案--------------------这种问题只能在一个大方向上具体问题具体分析了。慢不是索引就能解决问题的,你要考虑实际应用。
------解决方案--------------------插入就不要索引
查询就要建立强大索引
需求是矛盾的,看你自己偏重哪方面
我的建议,按天分表,只有当天表是无索引的,其他所有历史表索引做到最强大,联合成视图
------解决方案--------------------
------解决方案--------------------