我今天参加了一次采访。采访者问我有一张名为“研究”的表格。这张表只有10个记录。正常选择查询需要更多时间
现在,当我查询表 select * from Research 它需要更长的时间约20秒。
可能是什么原因?
我无法想象如果一张桌子只有10条记录,这张桌子如何花费这么多时间。
我今天参加了一次采访。采访者问我有一张名为“研究”的表格。这张表只有10个记录。正常选择查询需要更多时间
现在,当我查询表 select * from Research 它需要更长的时间约20秒。
可能是什么原因?
我无法想象如果一张桌子只有10条记录,这张桌子如何花费这么多时间。
这个问题有点模糊,取决于他们雇用什么,而不是一个好的。我的猜测是,这个问题是想让你知道你会在这种情况下做什么。像这些问题通常非常具体的问题来自他们亲身经历的问题。有很多事情会导致这种情况。我会问,它一直是这样吗?其他表具有相同的问题吗?把它扔回去。质疑系统构建,数据库和I/O的位置。如果OTJ刚刚开始,我的第一次检查就是确保它们没有用完磁盘空间。主要是因为这是常见的,如果不抓住更多的事情会很快出现错误,如果他们还没有。其次是使用DBCC SHOWCONTIG(Table_Name)检查表的碎片级别。如果这里有一些可怕的#(常见于堆表),一个简单的解决方案是删除并重新创建表。
** **堵/极其缓慢的IO子系统:)/挂起/很慢的网络连接...... – lad2025
其他交易我无法说清楚。你能详细写下吗?没有待处理的交易。 – NJadon
这与阻塞相同。想象一下其他一些查询在'Research'表上获得独占锁定(例如更新数据)。在读取提交的隔离级别中,您无法读取它。 – lad2025