环境信息
- 操作系统:Windows Server 2012 R2(64 位)
- 内存:16.00GB
- CPU : Intel(R) Xeon(R) CPU E5-2609 @ 2.40GHz
- SQL:Windows SQL Server 2012 标准版
简要数据库数据信息
- 10多张表中,其中一张有varbinary(max)类型的列
- 该表有超过1m的记录,每列都有缩略图数据,大约占20k
简表规格
- 表名:注册缩略图
- 列名:UserId、ThumbData、已创建、已更新
- 列类型:int、varbinarymax、datetime、datetime
- 已用空间信息:行:1,034,300 | 保留:34,092,160 KB | 数据:34,054,872 KB | 索引大小:31040 KB | 未使用:6248 KB
询问
SELECT * FROM RegisteredThumbnail WHERE UserId = 512315
Run Code Online (Sandbox Code Playgroud)
此查询需要大约 6:45 分钟才能获取预期的行。
为了克服这个问题,索引是我唯一的选择吗?
通过将二进制数据替换为图像 url 作为字符串数据来更改图像数据的存储方式会有很大帮助吗?
由于这是当前的操作系统,因此更改列并不是一个好主意。
任何想法将不胜感激。
尚未配置索引。