我很好奇压缩数据表如何影响 SQL Server 的缓冲池。
内存中的数据是像在磁盘上一样被压缩,还是完全解压缩?
如果数据被压缩存储在缓冲池中,那么在执行语句时,在给定时间,有多少瞬时解压数据保存在内存中;一行/页,整个表(假设有足够的空闲页来保存数据),还是“取决于”?
我很好奇压缩数据表如何影响 SQL Server 的缓冲池。
内存中的数据是像在磁盘上一样被压缩,还是完全解压缩?
如果数据被压缩存储在缓冲池中,那么在执行语句时,在给定时间,有多少瞬时解压数据保存在内存中;一行/页,整个表(假设有足够的空闲页来保存数据),还是“取决于”?
当数据在缓冲池中时,它会被压缩。读取行/列时需要对行/列内的数据进行解压。存储引擎团队(写这些东西的人)写了一篇关于这个的博客文章,里面有一些很好的信息。(是的,我从博客文章中窃取了上述内容。)