我们最常用的数据库相对较小(5GB),因此,我们的16 5GB内存专用SQL Server 2012数据库服务器选择将所有使用过的表缓存在内存中(缓冲区缓存命中率始终为100% )。我们团队中的一些人希望迁移到Server 2014以提高内存中表的性能,但是我不相信这样做会提高性能,因为我们的表已经在内存中了。
SQL Server 2014中的新内存表是否还有更多内容,或者在我的场景中确实没有什么收获?
发布于 2017-08-24 17:03:30
我们团队中的一些人希望迁移到Server 2014以提高内存中表的性能.
这完全取决于:
但是,我不相信这样做会提高性能,因为我们的表已经在内存中了。
您应该怀疑它是否能够提高性能,但是原因并不是因为数据已经在内存中了。使用本机编译可以锁定和锁存代码,减少代码执行,这是主要到期。
因此,如果你的瓶颈不是锁或锁…你所得到的实际收益将微乎其微。如果实际的瓶颈是客户端,这种情况可能会更加严重。
有一个关于IMOLTP的用例的伟大的文章,在我们讨论它的时候,您可能想看看2016年以及IMOLTP在高级实时分析中的使用。
SQL Server 2014中的新内存表是否还有更多内容,或者在我的场景中确实没有什么收获?
内存中的对象(在本例中是表)不只是将数据固定在内存中。他们的内存结构,并且没有锁和锁锁。完全不同。
在数据的存储方式、数据如何影响数据库启动等方面还有其他不同之处。
https://dba.stackexchange.com/questions/184265
复制相似问题