viernes, 15 de abril de 2011

DMV para optimización en SQL Server Tip 07

Esta serie de blogs incluye T-SQL y DMV que pueden ser utilizadas para detectar problemas de rendimiento de SQL Server y su posible solución.

Otro de los componentes que se pueden revisar para la optimización de SQL Server es el Buffer Pool, que es el componente que almacena y administra el caché de datos de SQL Server. La información detallada sobre el Buffer Pool la podemos obtener mediante la DMV sys.dm_os_buffer_descriptors,  esta DMV devuelve información sobre todas las páginas que están siendo utilizadas por el  Buffer Pool, con base en estos resultados podemos ver la distribución del Buffer Pool de acuerdo al uso que se le está dando, y devuelve el pagetype que puede ser un Data Page, Index Page o un TEXT_MIX_PAGE (más información sobre los tipos páginas disponible en http://msdn.microsoft.com/en-us/library/ms190969.aspx).

 

Si ejecutamos el siguiente estatuto

 

select * from sys.dm_os_buffer_descriptors

 

Se obtiene información de la distribución del Buffer Pool. En este resultado vemos todas las páginas que están siendo utilizadas por el buffer pool, recordemos que cada página de SQL Server es de 8KB, en este caso cada página de datos del caché tiene un descriptor del buffer. Los descriptores del buffer representan de forma única cada página que está actualmente siendo utilizada en caché de una instancia de SQL Server.

 

image

 

Si queremos una vista resumida de esta información podemos ejecutar el siguiente T-SQL.

 

SELECT count(database_id) * 8 / 1024 AS 'Cache Usado (MB)' --multiplicamos la cantidad paginas para convertilas en MB
    ,CASE database_id
        WHEN 32767 THEN 'BD Recursos'
        ELSE db_name(database_id)
        END AS 'NombreBaseDatos'
FROM sys.dm_os_buffer_descriptors
GROUP BY db_name(database_id) ,database_id

 

Este T-SQL da como resultado la cantidad de caché utilizado por cada base de datos de la instancia actual de SQL Server.

 

image

 

Ing. Eduardo Castro Martínez

http://comunidadwindows.org

http://ecastrom.blogspot.com

 

SQL Server Performance

martes, 12 de abril de 2011

Laboratorio de Entrenamiento de SQL Azure Scripts

Les comparto los links para descargar los laboratorios sobre SQL del Entrenamiento para desarrollar en la Nube Parte (WorkShop) tercer día , para descargar los recursos para el laboratorio ingresen al siguiente enlace  http://bit.ly/g8UZFt ahí encontrarán las instrucciones para hacer el laboratorio, la PPT y los scripts de demostración utilizados en el entrenamiento.

 

 

Saludos,

Eduardo Castro

http://ecastrom.blogspot.com

 

SQL Server Performance

lunes, 11 de abril de 2011

SQL Server Peer-to-Peer Transactional Replication para escalabilidad y alta disponibilidad

El Peer-to-Peer Transactional Replication de SQL Server es útil cuando deseamos escalabilidad en las operaciones de sólo lectura de ambientes grandes, por ejemplo, si tenemos una aplicación Web, podemos tener varias instancias de SQL Server y configurar el Peer-to-Peer Transactional Replication entre ellas, de esta forma las operaciones de lectura pueden ser distribuidas entre las distintas instancias. También podríamos escalar las escrituras ya que todas actualizaciones, inserciones y borrados se replican de una instancia a las demás, en este caso se debe tener en cuenta lo siguiente:

 

  • Si una fila se modifica en más de un nodo, puede producir un conflicto o que una actualización en un nodo sobreescriba la actualización de otro.

  • Siempre hay alguna latencia implicada cuando se realiza la replicación. Para las aplicaciones que requieren que se vea el cambio más reciente inmediatamente esta configuración puede no ser la más adecuada. Para mayor información sobre detección de conflictos pueden leer este artículo Detección de conflictos en la replicación punto a punto

 

Los siguientes son escenarios comunes para replicación Peer-To-Peer (http://technet.microsoft.com/es-es/library/ms151196.aspx)

 

Peer-to-peer replication, two nodes

 

Peer-to-peer replication to dispersed locations

 

Peer-to-peer replication, three and four nodes

 

 

 

Saludos,

 

Eduardo Castro Martínez

http://ecastrom.blogspot.com

http://comunidadwindows.org

http://tiny.cc/comwindows

 

SQL Server Performance

viernes, 8 de abril de 2011

DMV para optimización en SQL Server Tip 06

Esta serie de blogs incluye T-SQL y DMV que pueden ser utilizadas para detectar problemas de rendimiento de SQL Server y su posible solución. Las DMV más comunes para determinar problemas de rendimiento con SQL Server son las siguientes:

 

  • DMV relacionadas con Memory allocation tracking
    sys.dm_os_memory_brokers
    sys.dm_os_memory_nodes

 

  • DMV relacionadas con el Resource Governor
    sys.dm_resource_governor_configuration
    sys.dm_resource_governor_resource_pools
    sys.dm_resource_governor_workload_groups

 

  • DMV relacionadas con Query performance 
    sys.dm_exec_query_stats
    Sys.dm_exec_requests
    sys.dm_exec_procedure_stats
    sys.dm_exec_trigger_stats

 

En siguientes post veremos el detalle de cada una de ellas.

 

Saludos,

 

Ing. Eduardo Castro Martinez, PhD

http://ecastrom.blogspot.com

http://comunidadwindows.org

24 Horas SQL Pass Recordings están disponbiles

Las sesiones grabadas que puede ser vistas por demanda del Evento de 24 Horas de SQL Pass están disponibles en la siguiente dirección http://bit.ly/hDiudC Dentro de las sesiones podrán encontrar el siguiente contenido:

 

March 15, 2011 (GMT)

Session 01: SQL Server Alwayson: The Next Generation High Availability Solution (Lara Rubbelke)

Session 02: Dashboards Design And Practice Using SSRS (Jen Stirrup)

Session 03: Spatial Data: Cooler Than You'd Think (Hope Foley)

Session 04: SQL Server Performance Tools (Cindy Gross)

Session 05: Cool Tricks To Pull From Your SSIS Hat (Julie Smith)

Session 06: No More Bad Dates: Best Practices for Working with Dates and Times (Kendra Little)

Session 07: SQL Server Performance (Isabel de la Barra)

Session 08: T-SQL Code Sins: The Worst Things We Do To Code And Why (Jen McCown)

Session 09: Multidimensional Thinking (Stacia Misner)

Session 10: Bad Plan! Sit! (Gail Shaw)

Session 11: Indexes And Execution Plans (Kim Tessereau)

Session 12: Many-To-Many Dimensions: ETL To Cube (Lisa Phillip)

March 16, 2011 (GMT)

Session 13: Reporting Services 201: the Next Level (Jes Borland)
Session 14:
Replication, Log Shipping and Mirroring: Oh My! (Wendy Pastrick)
Session 15:
Entity Framework: Not As Evil As You May Think (Julie Lerman)

Session 16: All About SQL Server Memory Settings For DBAs (Vyshnavi Thota)

Session 17: Tips & Tricks For Dynamic Reporting Services Reports (Pam Shaw)

Session 18: T-SQL Awesomeness: 3 Ways To Write Cool SQL (Audrey Hammonds)

Session 19: Intelligent ETL With SQL Server (Jyoti Gupta)

Session 20: Clever Queries: Crafting MDX Queries To Get The Most Out Of SSRS (Erika Bakse)

Session 21: Five Physical Database Design Blunders And How To Avoid Them (Karen Lopez)

Session 22: What You Don't Know About SSRS 2008 R2 (Kathi Kellenberger)

Session 23: Index Internals For Mere Mortals (Michelle Ufford)

Session 24: Twitterdata On Azure (End-To-End Demo) – How We Did It (Lynn Langit)

 

Saludos,

 

Eduardo Castro Martinez

http://ecastrom.blogspot.com

http://comunidadwindows.org

Laboratorio de Entrenamiento de SQL Azure Links

Les comparto los links para descargar los laboratorios sobre SQL del Entrenamiento para desarrollar en la Nube Parte (WorkShop) , para descargar los recursos para el laboratorio es el siguiente http://bit.ly/g8UZFt ahí encontrarán las instrucciones para hacer el laboratorio, la PPT y los scripts de demostración utilizados en el entrenamiento.

 

Saludos,

 

Eduardo Castro

http://ecastrom.blogspot.com

miércoles, 6 de abril de 2011

DMV para optimización en SQL Server Tip 04

Esta serie de blogs incluye T-SQL y DMV que pueden ser utilizadas para detectar problemas de rendimiento de SQL Server y su posible solución.

Les comparto la presentación que utilicé en el evento sobre optimización de SQL Server, la pueden ver en esta dirección http://slidesha.re/hUvQ4R

 

image

 

Ing. Eduardo Castro Martínez

http://comunidadwindows.org

http://ecastrom.blogspot.com