Pregunta

En una de mis aplicaciones tengo una de 1gb tabla de base de datos que se utiliza para los datos de referencia.Tiene una enorme cantidad de lecturas que vienen de la mesa pero no se escribe nunca.Me preguntaba si hay alguna manera de que los datos pueden ser cargados en la memoria RAM para que no se accede a ellos desde el disco?

Estoy usando SQL Server 2005

¿Fue útil?

Solución

Si tienes suficiente RAM, SQL va a hacer un trabajo excepcional determinar qué se debe cargar en la memoria RAM y lo de buscar en el disco.

Esta es una pregunta mucho y me recuerda a la gente tratando de configurar manualmente que "core" de su proceso de ejecución en-deja que el sistema operativo (o en este caso la DB) a hacer lo que fue diseñado.

Si desea comprobar que SQL es, de hecho, de la lectura de su mirada-seguridad de los datos de la caché, entonces usted puede iniciar una prueba de carga y el uso de Sysinternals FileMon, Process Explorer y El Monitor De Procesos para verificar que el de 1GB, la tabla no se leen de la.Por esta razón, a veces nos ponen a nuestra "búsqueda" de datos en un grupo de archivos independiente, así que es muy fácil de controlar cuando se accede a ella en el disco.

Espero que esto ayude.

Otros consejos

Usted va a querer echar un vistazo a memcached.Es lo que un montón de grandes (y también a escala) sitios que se utilizan para manejar problemas como este.Si usted tiene un par de servidores de repuesto, usted puede configurar fácilmente a ellos para mantener la mayoría de sus datos en la memoria.

http://en.wikipedia.org/wiki/Memcached

http://www.danga.com/memcached/

http://www.socialtext.net/memcached/

Sólo para aclarar el tema para el sql2005 y hasta:

Esta funcionalidad se introdujo para el rendimiento en SQL Server versión 6.5.DBCC PINTABLE tiene muy indeseable efectos secundarios.Estos incluyen la potencial de dañar el grupo de búferes.DBCC PINTABLE no es necesario y tiene ha eliminado para evitar adicional problemas.La sintaxis para este comando todavía funciona, pero no afecta a la servidor.

DBCC PINTABLE explícitamente pin de una tabla en el núcleo si desea asegurarse de que queda almacenada en caché.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top