Aquí podría ser tu PUBLICIDAD


Tamaño de archivo de página O / S de Windows apropiado para SQL Server

votos
16

¿Alguien sabe una buena regla general para el tamaño de archivo de paginación apropiado para un servidor de Windows 2003 que ejecuta SQL Server?

Publicado el 05/08/2008 a las 18:07
fuente por usuario Brandon Wood
En otros idiomas...        العربية       

8 respuestas

votos
11

Con el debido respeto a Remus (a quien respeto enormemente), estoy en total desacuerdo. Si su archivo de página es lo suficientemente grande como para soportar un volcado completo, realizará un volcado completo cada vez. Si usted tiene una gran cantidad de memoria RAM, esto puede causar un pequeño destello que se convirtió en un corte importante.

Usted no quiere que su servidor tenga que escribir 1 TB de memoria RAM en el disco si hay un problema transitorio de una sola vez. Si hay un problema recurrente, puede aumentar el archivo de página para capturar un volcado completo. Me gustaría esperar a hacerlo hasta que haya sido isntructed por PSS (u otra persona calificada para analizar un volcado completo) que solicitar para capturar un volcado completo. Un porcentaje muy pequeño de los DBA sabe cómo analizar un volcado completo. Un mini-dump es sufficent para solucionar la mayoría de los problemas que surgen de todos modos.

Además, si el servidor está configurado para permitir un 1 TB volcado completo y se produce un problema recurrente, la cantidad de espacio libre en disco me recomiendan tener a la mano? Se podría llenar toda una SAN en un solo fin de semana.

Un archivo de página 1.5 * RAM era la norma de vuelta en los días en los que la suerte de tener un servidor SQL Server con 3 o 4 GB de RAM. Este ya no es el caso. Os dejo el archivo de página en el tamaño y la configuración por defecto de Windows en todos los servidores de producción (a excepción de un servidor de SSAS que está experimentando la presión de memoria).

Y sólo para aclarar, he trabajado con los servidores que van de 2 GB de RAM 2 TB de RAM. Después de más de 11 años, sólo he tenido el fin de ampliar el archivo de paginación para capturar un volcado completo de una vez.

Respondida el 05/10/2011 a las 10:39
fuente por usuario Robert L Davis


Aquí podría ser tu PUBLICIDAD


votos
10

Independientemente del tamaño de la memoria RAM, aún necesita un archivo de paginación al menos 1.5 veces la cantidad de RAM física. Esto es cierto, incluso si tiene una máquina de RAM de 1 TB, necesitará un archivo de paginación de 1.5 TB en el disco (suena loco, pero es cierto).

Cuando un proceso solicita memoria a MEM_COMMIT a través de VirtualAlloc / VirtualAllocEx, el tamaño solicitado debe reservarse en el archivo de paginación. Esto fue cierto en el primer sistema Win NT, y sigue siendo cierto en la actualidad, vea Administrar la memoria virtual en Win32 :

Cuando se confirma la memoria, se asignan páginas físicas de memoria y se reserva espacio en un archivo de paginación .

Descubierto algunos casos extremos extraños, SQL Server siempre pedirá páginas MEM_COMMIT. Y dado que SQL utiliza una política de administración de memoria dinámica que reserva por adelantado la mayor cantidad posible de agrupaciones de almacenamientos intermedios (reservas y confirmaciones en términos de VAS), SQL Server solicitará al iniciar una gran reserva de espacio en el archivo de paginación. Si el archivo de paginación no tiene el tamaño correcto, los errores 801/802 comenzarán a aparecer en el archivo y las operaciones de ERRORLOG de SQL.

Esto siempre causa cierta confusión, ya que los administradores suponen erróneamente que una gran RAM elimina la necesidad de un archivo de paginación. En verdad, sucede lo contrario, una RAM grande aumenta la necesidad de un archivo de paginación, solo por el funcionamiento interno del administrador de memoria de Windows NT. El archivo de paginación reservado es, afortunadamente, nunca usado.

Respondida el 22/11/2009 a las 11:11
fuente por usuario Remus Rusanu

votos
3

Según Microsoft, "como la cantidad de memoria RAM en un ordenador aumenta, la necesidad de un archivo de página disminuye." En el artículo se pasa a describir cómo utilizar registros de rendimiento para determinar la cantidad del archivo de paginación está realmente siendo usado. Intenta configurar el archivo de paginación a la memoria del sistema 1.5X para empezar, a continuación, hacer el seguimiento recomendado y hacer ajustes a partir de ahí.

Cómo determinar el tamaño de archivo de página adecuado para las versiones de 64 bits de Windows

Respondida el 03/08/2010 a las 07:58
fuente por usuario Doctuh D.

votos
2

Recientemente tuvimos algunos problemas de rendimiento con uno de nuestros SQL Server que no pudimos restringir por completo, y en realidad usamos uno de nuestros tickets de asistencia de Microsoft para ayudarlos a solucionar los problemas. Apareció el tamaño óptimo de archivo de paginación para usar con SQL Server, y la recomendación de Microsoft es que sea 1 1/2 veces la cantidad de RAM .

Respondida el 10/09/2009 a las 06:05
fuente por usuario Brandon Wood

votos
2

Cuanto mayor sea, mejor será el tamaño del conjunto de trabajo de la aplicación, donde empezará a obtener rendimientos decrecientes. Puede intentar encontrar esto aumentando o disminuyendo lentamente el tamaño hasta que vea un cambio significativo en las tasas de aciertos de caché. Sin embargo, si la tasa de aciertos de la caché es superior al 90%, probablemente esté bien. En general, debe vigilar esto en un sistema de producción para asegurarse de que no haya superado su asignación de RAM.

Respondida el 23/12/2008 a las 03:45
fuente por usuario ConcernedOfTunbridgeWells

votos
1

Después de mucha investigación dedicados a nuestros servidores SQL Server que se ejecutan x64 Enterprise en Windows 2003 Enterprise x64 no tienen ningún archivo de paginación.

Simplemente, el archivo de paginación es una caché de archivos que se puede gestionar por el sistema operativo y SQL tiene su propio sistema de gestión de la memoria interna.

El artículo hace referencia MS no se puede considerar que el consejo es para el sistema operativo se ejecuta fuera de la caja de servicios tales como el intercambio de archivos.

Tener un archivo de página simplemente grava el disco I / O, ya que Windows está tratando de ayudar, cuando sólo el sistema operativo de SQL puede hacer el trabajo.

Respondida el 24/05/2011 a las 01:47
fuente por usuario Alex

votos
1

Si busca un alto rendimiento, querrá evitar la paginación por completo, por lo que el tamaño del archivo de página será menos significativo. Invierta en la mayor cantidad de RAM posible para el servidor de bases de datos.

Respondida el 11/08/2008 a las 01:22
fuente por usuario Sean Carpenter

votos
0

En este caso, la recomendación normal de 1,5 veces la RAM física total no es la mejor. Esta recomendación muy general se proporciona bajo la suposición de que toda la memoria está siendo utilizado por los procesos "normales", que en general pueden tener sus páginas menos utilizadas, se trasladaron al disco sin generar problemas de rendimiento masivo para el proceso de solicitud de la memoria pertenece.

Para los servidores que ejecutan SQL Server (generalmente con grandes cantidades de memoria RAM), la mayor parte de la RAM física está comprometida con el proceso de SQL Server y debe ser (si está configurado correctamente) encerrado en la memoria física, evitando que se localicen en la el archivo de paginación . SQL Server administra su propia memoria con mucho cuidado con el rendimiento en mente, el uso de una gran parte de la RAM asignada a su proceso como una caché de datos para reducir / S de disco. No tiene sentido para la página cabo esas páginas de caché de datos en el archivo de paginación, como el único propósito de tener los datos en la memoria RAM en el primer lugar es para reducir / S de disco. (Tenga en cuenta que el sistema operativo Windows también utiliza la memoria RAM disponible de manera similar como caché de disco para acelerar el funcionamiento del sistema.) Dado que SQL Server ya gestiona su propio espacio de memoria, este espacio de memoria no debe ser considerado "paginable",

En lo que respecta a MEM_COMMIT mencionado por Remus, la terminología es confuso porque en la jerga de memoria virtual, "reservado" nunca se refiere a la asignación real, sino a la prevención del uso de un espacio de direcciones (espacio no físico) por otro proceso. Memoria disponible para ser "comprometida" es básicamente igual a la suma de RAM y archivo de paginación tamaño físico, y haciendo un MEM_COMMIT solo disminuye la cantidad disponible en la agrupación comprometida. No , no asignar una página coincidente en el archivo de paginación en ese momento. Cuando una página de memoria se escribe realmente comprometida a, que es cuando el sistema de memoria virtual asignará una página de memoria física y posiblemente golpee otra página de memoria de la RAM física para el archivo de paginación. Ver MSDN función VirtualAlloc referencia.

El sistema operativo Windows realiza un seguimiento de las presiones de memoria entre procesos de aplicación y su propio mecanismo de caché de disco y decide cuando debe topar páginas no bloqueados memoria de físico al archivo de paginación. Mi entendimiento es que tener un archivo de paginación que es demasiado grande en comparación con el espacio real no bloqueado memoria puede resultar en Windows overzealously paginación a cabo memoria de la aplicación para el archivo de paginación, lo que resulta en aquellas aplicaciones que sufren las consecuencias de los fallos de página (bajo rendimiento).

Siempre y cuando el servidor no está ejecutando otros procesos de la memoria-comedor, un tamaño de archivo de paginación de 4 GB debería ser suficiente. Si ha configurado SQL Server para permitir que las páginas de bloqueo en la memoria, también se debe considerar la posibilidad de ajuste de memoria máximo de SQL Server para que salga algo de memoria RAM física disponible para el sistema operativo por sí mismo y otros procesos.

802 errores en SQL Server indican que el sistema no puede cometer cualquiera de las páginas más para la caché de datos. El aumento del tamaño de archivo de paginación sólo ayudará en esta situación en la medida en Windows es capaz de página impresa en la memoria de los procesos no son de SQL Server. Permitiendo que la memoria de SQL Server para crecer en el archivo de paginación en esta situación podría deshacerse de los mensajes de error, pero es contraproducente, debido al punto anterior acerca de la razón de la caché de datos en el primer lugar.

Respondida el 04/04/2014 a las 12:51
fuente por usuario js5