我在以下服务器上安装了2个sql服务器实例以及SSIS。
请注意,RAM的容量接近384 GB
这是我已应用于两个实例的最大和最小内存设置。我假设两个实例都将使用相同数量的资源,如果确实如此,那么184,320 MB(180 GB)是设置内存的一个很好的起点吗?
我将为SSIS分配多少内存?
我在以下服务器上安装了2个sql服务器实例以及SSIS。
请注意,RAM的容量接近384 GB
这是我已应用于两个实例的最大和最小内存设置。我假设两个实例都将使用相同数量的资源,如果确实如此,那么184,320 MB(180 GB)是设置内存的一个很好的起点吗?
我将为SSIS分配多少内存?
Answers:
(从屏幕截图中)我看到一个不寻常的配置,其中SQL Server的Min和Max内存设置相同。将最小内存保留为默认值。请参阅我对SQL Server最小服务器内存的回答。
要确定理想内存,请参阅-例如,如何确定理想内存?和SQL Server最大和最小内存配置
我们在生产服务器上运行了SSIS程序包,它们几乎不会引起任何内存问题。我只是为OS留了足够的内存,因为这DTExec.exe
是一个外部过程sqlserver.exe
,因此它的内存要求不会包含在MAX Memory中。此外,SSIS旨在处理内存中一行又一行的高速数据。
如果您觉得有些SSIS软件包可以运行数小时,那么我建议您监视以下SSIS性能计数器:
Buffers in use
Flat buffers in use
Private buffers in use
Buffers spooled
Rows read
Rows written
和“ 十大SQL Server集成服务最佳实践”-SQL CAT Team
进程/专用字节(DTEXEC.exe): Integration Services当前正在使用的内存量。该内存不能与其他进程共享。
进程/工作集(DTEXEC.exe): Integration Services分配的内存总量。
古老但仍然相关:集成服务:性能调整技术
SSIS需要多少内存?(真正的答案是:取决于。)
但是,乔纳森·凯海耶斯(Jonathan Kehayias)的公式非常好,或者我认为,因为它对我很有用。
https://www.sqlskills.com/blogs/jonathan/how-much-memory-does-my-sql-server-actually-need/
在Windows中为SQL Server以外的需求保留空间的简单公式是:
从1 GB开始,在4到16 GB之间的机器中,每4 GB加1 GB,在16 GB以上的机器中,每8 GB加1 GB。
之后,您应该进行一些监视以确定SSIS包是否需要更多或更少的内存。这是它取决于你的计划的一部分内存使用。如果您发现SSIS进程有问题,则需要确定是否需要更多的内存。
由于您在同一服务器上有两个实例,因此可能需要进一步调整。