请教关于数据表分区的几个疑问?

zhlin118 2011-07-06 01:49:12
我现在的系统应用1年时间不到,主业务表的数据量也就20W条,但系统一次又一次变慢,首先我承认数据表的部分设计存在问题,另外软件的技术架构和框架也有一定问题,这两点已成硬伤了,目前要改变比较困难,所以我只能从数据库优化了。关于数据表,期间慢的时候我已经加过一些索引,当时是有很大的改善,可是到现在,系统又慢下来了,所以这次我考虑使用表分区了,请问20W的数据量使用表分区是不是很夸张?有没有这个必要?

首先什么情况下使用表分区?优缺点?
数据表分区建立后能从根本上改善软件的查询效率吗(主要是维持多久,以后会不会又慢下来)?

大家如果有更好的建议,希望给我点拨一下,小弟在此拜谢了!

...全文
121 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jyh070207 2011-07-06
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 zhlin118 的回复:]
引用 8 楼 jyh070207 的回复:

20w数据没有必要表分区,考虑性能优化,如果表中字段过多或者需要经常需要更新删除的话,
可以考虑将一个表拆分为多个表.


如果从改软件的角度考虑,我想的是,软件设计上做些更改,数据量较大的表,定期做分离备份,保证软件常用操作查询的是一个月内的数据,一月前的数据每周进行一次数据转移(存储过程定时执行),如果要统计一个月前的数据,软件自动去历……
[/Quote]
如果数据可以明确按某个关键字(比如会计期间或年月)分段,而且过往的数据只需查询,不再更新删除,可以这样做,一个记录当前处理活动状态的表,加一个记录历史状态的表,做查询时,可以用视图将两个表串为一个表用.
zhlin118 2011-07-06
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jyh070207 的回复:]

20w数据没有必要表分区,考虑性能优化,如果表中字段过多或者需要经常需要更新删除的话,
可以考虑将一个表拆分为多个表.
[/Quote]

如果从改软件的角度考虑,我想的是,软件设计上做些更改,数据量较大的表,定期做分离备份,保证软件常用操作查询的是一个月内的数据,一月前的数据每周进行一次数据转移(存储过程定时执行),如果要统计一个月前的数据,软件自动去历史备份表检索,这样软件的常规的查询操作是不是会很快?不知道我这种处理方式合理性好不好。
fanzhouqi 2011-07-06
  • 打赏
  • 举报
回复
20W 就分区 确实有点夸张
jyh070207 2011-07-06
  • 打赏
  • 举报
回复
20w数据没有必要表分区,考虑性能优化,如果表中字段过多或者需要经常需要更新删除的话,
可以考虑将一个表拆分为多个表.
zhlin118 2011-07-06
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 jamespanjunwei 的回复:]

定个维护计划,每周一次
1.检查数据库完整性
2.更新统计信息
3.重新组织索引
4.重新生成索引
[/Quote]

多谢指点,我先试着优化一下,我估计现在数据碎片很严重,刚才看到网上说数据收缩计划容易产生碎片!!我这每周都有收缩计划。。
老潘 2011-07-06
  • 打赏
  • 举报
回复
定个维护计划,每周一次
1.检查数据库完整性
2.更新统计信息
3.重新组织索引
4.重新生成索引
老潘 2011-07-06
  • 打赏
  • 举报
回复
20W数据没必要用表分区。楼主可以检查下索引碎片
zhlin118 2011-07-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 acherat 的回复:]

20W表分区。。。太奢侈了。

你DBCC你的数据看是什么问题,修复下数据库,就像你说的重建索引什么的,按之前你优化的那个再来次看看。
[/Quote]

呃,DBCC,还没用过呢!= =,我先试一下,但这样优化之后,系统可能会有一点点改善,但还是不会有很大的突破!
AcHerat 元老 2011-07-06
  • 打赏
  • 举报
回复
20W表分区。。。太奢侈了。

你DBCC你的数据看是什么问题,修复下数据库,就像你说的重建索引什么的,按之前你优化的那个再来次看看。
zhlin118 2011-07-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 chuanzhang5687 的回复:]

跟缓存有没有关系?
[/Quote]

请问你是说的哪个缓存? 系统压根就没用缓存!!因为即时性比较高,都是直接查的数据库!!
chuanzhang5687 2011-07-06
  • 打赏
  • 举报
回复
跟缓存有没有关系?

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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