加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 什么被认为是SQL Server中的“大”表?

发布时间:2020-12-12 16:40:32 所属栏目:MsSql教程 来源:网络整理
导读:我有一张有1000万条记录的表格.那是考虑了很多记录吗?我应该担心搜索时间吗?如果不是,它会不断增长,那么什么被认为是一张大桌子?表大小因素在搜索时间中有多少,我可以做些什么来改善这些问题,最好在成为问题之前? 解决方法 “大”就像“聪明” – 这是相
我有一张有1000万条记录的表格.那是考虑了很多记录吗?我应该担心搜索时间吗?如果不是,它会不断增长,那么什么被认为是一张大桌子?表大小因素在搜索时间中有多少,我可以做些什么来改善这些问题,最好在成为问题之前?

解决方法

“大”就像“聪明” – 这是相对的. 1000万行是一个很好的大小,但是表是否很大取决于多个因素:

>多少列及其数据类型是什么?
>有多少索引?
>表的实际大小是什么(例如,可以从sys.dm_db_partition_stats获得的页数* 8kb)?
>运行什么类型的查询?
>是存储在内存中的单个索引,或者大多数查询从集群索引扫描中获益(其中基本上整个表需要在内存中)?
>机器上有多少内存?
>你认为什么大?

搜索时间不一定是由大小本身驱动的,而是索引策略的有效性和您正在搜索的查询的类型.如果你有这样的事情:

WHERE description LIKE '%foo%'

那么正常的索引不会帮助你,你应该开始担心.您可以考虑全文搜索这样的案例.

具有单个INT列(例如Numbers表)的表中的1000万行是没有的.具有长描述,XML,地理数据,图像等的1000万行产品是另一回事.

有一个原因,SQL Server的最大容量规范不会记录表中行数的上限.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读