查询效率问题

冬夜 2016-08-30 06:15:49
请教个问题
数据库中有两个表记录数比价大,一个8000W+ 每天增长100W, 一个4000W+ 每天增长 50W,都做了联合索引,现在感觉反应有点慢,查询一条记录或统计一个数据的时候 运行时间可能会超1S,想将这量个表做分区表,通过时间进行区分,但是还有几个查询在条件里没有时间要求,这样分区后会不会影响效率?

另外:记录数大起来对插入新数据和更新数据(条件为主键)会不会有影响?
...全文
153 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
薛定谔的DBA 2016-08-30
  • 打赏
  • 举报
回复
按时间分区,那查询条件有时间的话是最好的,只查询时间所跨的分区;但是条件要是没有时间,而是其他字段,这样所有分区都会查询了,所有分区都查询,对于那些只操作部分分区的就有影响了。 另外:数据库对插入和更新肯定有影响 1. 删除和更新对于条件的筛选,数据多了会查找更久,不走索引就麻烦了; 2.对于插入数据,如果其他对该表的查询使用了索引,那不要紧; 如果在插入数据时,而其他查询进行了扫描不使用索引,则需要等待,因为插入的这条数据正在进行; 插入数据,同样也会进行聚集索引的排序;
shoppo0505 2016-08-30
  • 打赏
  • 举报
回复
看数据量,这个执行时间还是可以接受的。 个人建议,像这种情况,还是提升硬件来解决问题比较好。

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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