SlideShare una empresa de Scribd logo
1 de 40
Descargar para leer sin conexión
Entendiendo el Sistema de
Almacenamiento de Datos y SQL Server
Jose Redondo
Expositor
 Jose Redondo
 Chapter Leader SQL PASS Venezuela – Caracas Chapter
 DPA SolidQ
 Senior Consultant SynergyTPC, Bogotá - Colombia
 ​MCP | MCTS - MS SQL Server; MTA - DAF | SQL Server MVP
Organización
Patrocinadores / Sponsors
 GOLD
 SILVER
 BRONCE
 Personal/Swag
Dispositivos de almacenamiento
Agenda
 Estructura del sistema base
 Controlador de Discos, Adaptador de Bus del Host
e Interfaces
 Fundamentos de discos de almacenamiento
 Arreglos redundantes de discos de bajo perfil
 Fundamentos de arreglos SAN
 Conceptos básicos de almacenamiento de estado solido
 SQL Server y el Sistema de Archivos
 Probando el nuevo sistema de almacenamiento
 Supervisión del sistema de almacenamiento
Estructura del sistema base
Bus del Sistema
El servidor se compone de varios bus y
controladores que se comunican el uno
del otro y a la CPU.
Bus Frontal
 Por lo general, único acceso a la
memoria
 Bus del sistema más veloz
 HyperTransport / Quickpath
reemplazando a FSB
Bus Controlador I/O
 También conocido como el bus de
periféricos
 Todos los dispositivos
 Todas las ranuras de expansión
Estructura del sistema base
Tipo de Bus Velocidad MB / Segundo
PCI 32-bit/33 MHz 133
PCI-X 1066
PCI Express x1, 4, 8, 16 250, 1000, 2000, 4000
PCI Express 2.0 x16, 32 8000,16000
PCI Express 3.0 x16 (2011~) 32000
Buses Periféricos y Velocidades
Estructura del sistema base
Tipo de Bus Velocidad MB / Segundo
SATA/SAS150, 300, 600 150, 300, 600
Fibre Channel 1G,2G, 4G, 8G 106, 212, 425, 850
iSCSI1Gbit, 10Gbit 125, 1250
Velocidades de las Interfaces
Controlador de Discos, Adaptador de Bus
del Host e Interfaces
Unidad de caché de 2MB a 64 MB+
 Segmentación Adaptable
 Pre-Fetch
Adaptadores RAID de Bus Host
 Lee la memoria caché
 Todo el almacenamiento escrito en caché
¡ADVERTENCIA!
 Escribe habitualmente
 Pagar ahora o pagar más tarde
 Escribe la toma precedencia sobre lecturas efectuadas
 Pool de buffer de 16GB vs. 256 MB de caché de I/O. Hagan
los cálculos
Los Fundamentos de Discos de
Almacenamiento
SAS es el rey de las cargas de trabajo pesadas
Comando en cola
 SAS admite un máximo de 216 por lo general un límite de 64
 SATA admite un máximo de 32
Detección y recuperación de errores
 No es inteligente
 El comando set en SCSI es mejor
Dúplex
 SAS es full dúplex y dual por unidad puerto
 SATA es única a doble cara y maneja un solo puerto
I/O Multi-path
 Nativo de SAS a nivel de unidad.
 Disponible para SATA a través de expansores.
SAS o SATA
Los Fundamentos de Discos de
Almacenamiento
Los discos duros emiten lo siguiente: Sólo eres tan rápido como el canal más lento o
más estrecho, ya que para alimentar a otras partes del sistema, hay que añadir una
cantidad extra de unidades de discos solo para obtener el I/O deseado a consumir en el
servidor.
Breaking news: El problema no es el tamaño es la velocidad.
Unidades de Discos
Tiempo Por el año 1981 Hoy día Mejora
Capacidad 10MB 1470MB 147x
Busqueda HDD 85ms/busqueda 3.3ms/busqueda 20x
IO/Seg 11.4 IO/Seg 303 IO/Seg 26x
Rendimiento de
Procesamiento HDD
5mbit/Seg 1000mbit/Seg 200x
Velocidad CPU 8088 4.77Mhz (.33 MIPS) Core i7 965(18322 MIPS) 5521x
Los Fundamentos de Discos de
Almacenamiento
Cabecera/Sectores/Cilindros
 No una verdadera representación física!!!
Ubicación del dato/pista
 Pistas exteriores comprimen más datos = Más MB / Seg
 Pistas interiores buscan más rápido = Más I/O Seg
 Más discos no = Más velocidad!!!
 HDD actual sólo tienen un canal de lectura/escritura
Estructura Física
Los Fundamentos de Discos de
Almacenamiento
 Las pistas son un camino
alrededor del disco
 Los sectores son una sola porción
/ pedazo de un disco
 Cilindro son a través de los discos
y se componen de sectores
 Cabezas de hacen la lectura y la
escritura
Ubicación del sector de dato
Los Fundamentos de Discos de
Almacenamiento
Velocidades típicas 73 GB SAS/SCSI
 Velocidad de rotación - 15,000 RPM
 Promedio de búsqueda aleatoria I/O - En la realidad 5.5 ms Tiempo
de lectura; 6.0 ms Escritura teórica; 2.9 ms Lectura; 3.3 Escritura
 Tasa de Transferencia Secuencial 65MB ~ 120MB/seg
 Tasa de Transferencia Aleatoria 10MB ~ 30MB/seg
 Memoria caché puede afectar el tamaño de bloque de dato entre 4 ~ 64k
 Búsqueda secuencial entre pista en I/O - 0.5 ms de lectura, 0.7 ms
de escritura
 Latencia de rotación - 2.0 ms
Rendimiento de disco
Los Fundamentos de Discos de
Almacenamiento
Tiempo de búsqueda El tiempo necesario para mover las cabezas de lectura/escritura sobre la superficie del disco a la pista requerida. El tiempo de
búsqueda es aproximadamente proporcional a la distancia que deben mover las cabezas.
Latencia de rotación Pasa el tiempo tomado, después de la finalización de la búsqueda, para el disco hasta que el primer sector dirigida sus
acciones bajo las cabezas de lectura/escritura. En promedio, la latencia de rotación es la mitad de una rotación completa.
Tiempo de transferencia El tiempo necesario para que el disco gire o rote hasta que hayan pasado todos los sectores incluidos en el marco de las
cabezas de lectura - escritura.
Velocidad de giro (RPM) Tiempo Promedio de Latencia (ms) Aplicaciones Típicas Actuales
5,400 5.6 IDE Desktop/Laptop
7,200 4.2 Estándar Actual IDE/SATA
10,000 3 High-end estándar SATA SAS/SCSI
15,000 2 Máximo Actual SAS/SCSI
Los Fundamentos de Discos de
Almacenamiento
Calculando la búsqueda máxima aleatoria por segundo
Búsqueda máxima aleatoria por segundo
 1000 / (Tiempo de búsqueda[ms] + latencia[ms]) = IO/Seg
 1000 / (4.7 + 2.0) = 204 Lectura/Seg
 1000 /(3.3+2.0) = 188 Escritura/Seg
Latencia de efectos en cola!!!
Los Fundamentos de Discos de
Almacenamiento
Utilización máxima para mejor rendimiento
 Escritura máxima de búsqueda por segundo = 188
 La curva de ejecución sea en un 80%
 Configure para que el promedio I/O de 140 aplique
aleatoriamente por segundo en disco I/O
 Esto es un 75% de capacidad máxima
 Mantener baja latencia!!!
Arreglos redundantes de discos de bajo
perfil
 El I/O secuencial es mucho más rápido
 Tiempo de búsqueda 5.5ms → 0.7ms
 Cálculo rinde 370 I/O por segundo
 o 277 I/O por segundo @ 75%
 > 300+ I/O por segundo es común para secuencial
 A medida que aumenta el I/O también incrementa la
Latencia
 Rendimiento secuencial del disco puede estar cerca del
rendimiento del SSD
Fundamentos de arreglos SAN
 Se necesitan dos o más discos
 No hay espacio en el disco
perdido debido a la creación
de bandas
 El rendimiento es más rápido
al leer y escribir
 No ofrece ninguna protección
de datos
 Cuantos más discos, más
riesgo
RAID 0 - Striping
Fundamentos de arreglos SAN
 Sólo dos discos
 Velocidad de escritura de un
disco
 Velocidad de lectura de dos
discos
 La capacidad es igual al
tamaño de un disco
RAID 1 - Mirroring
Fundamentos de arreglos SAN
 Requiere 4 o más unidades
 Es un espejo de 2 Raid 0
Stripes
 Puede perder dos unidades y
todavía funcionar
 Sólo la mitad del espacio
disponible
 No es lo mismo que RAID 10
RAID 0 + 1 – Dos Mirroring RAID 0 Stripes
Fundamentos de arreglos SAN
 Mejor rendimiento de lectura y
escritura
 Requiere 4 o más unidades
 Es un juego de espejos striped
 Puede perder n/2 unidades en
donde es el número total de
unidades en el arreglo
 Sólo la mitad de la capacidad
disponible
RAID 10 – Dos RAID 1 Striping Mirrors
Fundamentos de arreglos SAN
 Considerado el mejor arreglo
 Requiere 3 o más unidades
 Stripe en todas las unidades
con paridad
 Puede perder 1 unidad y
seguir funcionando
 La capacidad es n-1 donde n
es el número de unidades en
el arreglo
RAID 5 – Striping con paridad
Fundamentos de arreglos SAN
 Doble protección RAID 5
 4 o más discos
 Es un Stripe con dos unidades
de paridad
 Puede perder dos unidades y
seguir funcionando
 La capacidad es n-2, donde n
es el número de unidades en
el arreglo
RAID 6 – RAID 5 con esteroides
Fundamentos de arreglos SAN
 RAID 0 = Fallo del disco = Perdida de dato
 Más disco más riesgo
 RAID 1 = Dos veces la seguridad
 RAID 5 = Fiabilidad a pequeña escala
 Más disco = Mayor riesgo
 RAID 6 = Fiabilidad a gran escala
 Más GB = Más riesgo
 RAID 10 = Fiabilidad en cualquier escala
 Susceptible a fallos de disco correlacionados
 Es complicado calcular las tasas de fracaso
 La regla de oro, más de 8 unidades en un RAID 5 podrían ser desastrosas
 Velocidad de lectura no aplicable en las grandes unidades de 1 TB son un peligro real
 Los discos del mismo lote sufren la misma suerte (Fallos Correlacionados)
 Aplique en páginas corruptas en versión 2000 y haga CheckSum para versión 2005/2008
 Restaurar copias de seguridad con regularidad.
Atención: Esto un Plan de Recuperación NO ES un Plan de Copia de Seguridad...
Confiabilidad RAID
Fundamentos de arreglos SAN
 RAID 10
 1 IOPs Lectura - 2 IOPs Escritura
 RAID 5
 1 IOPs Lectura - 4 IOPs Escritura
 Ambos objetivos, tanto Stripe así como el de Paridad Stripe deben ser
leído y la paridad calculada serán escrita en ambas
 Advertencia de lectura puede ser tan rápido como n-1 disco
 RAID 6
 1 IOPs Lectura - 6 IOPs Escritura
 Ambos objetivos, tanto Stripe así como las dos Paridades Stripes deben
ser leído y la paridad calculada deberán escribirse en las tres
 Advertencia de lectura puede ser tan rápido como n-2 discos
Capacidad o Performance
Fundamentos de arreglos SAN
 SQL Server Data Files
 Pagina de 8k
 Extensible a 64k
 256k lectura por delante
 El tamaño del cluster RAID debe establecerse en 64k o
256k
 Iniciar el tamaño del cluster en 64k
 Mover el tamaño del cluster a 256k para un mejor rendimiento secuencial
 Conocer el I/O del escenario
 Por lo general, 256k encaja en el 99% de nuestras necesidades
Configurando y estableciendo el nivel de RAID
Fundamentos de arreglos SAN
 Tipos de I/O separados!!!
 Los archivos de datos tienden a Leer - Escribir aleatoriamente
 Los archivos del Registro de Transacciones tienen 0 aleatorio al Leer - Escribir
 Más de un Log en una unidad = Aleterioridad Lecturas - Escritura
 Mejor aplicar el Log con datos AUNQUE...
 LUN's separado sin disco compartido
 RAID 1 o 10 para el Registro de Transacciones
 Exige una carga fuerte de ejecución
 RAID 5, 6 o 10 para Datos
 Si son mas del 10% de ejecución de escritura en disco, debería empozar a buscar un RAID
10
 Entendiendo las escrituras incurriendo en las lecturas!!!
Configurando y estableciendo el nivel de RAID
Fundamentos de arreglos SAN
 Sectores del disco físico 512 bytes, 4,096 bytes
 No se puede restaurar o adjuntar una base de datos de un tamaño más
grande del sector en un disco de tamaño de sector más pequeño. 4096
puede continuar en un 512 pero no 512 a 4096
 Esté al tanto de un posible mayor rendimiento al configurar arreglos
RAID
 Tamaño de Stripe y tamaño del requerimiento de I/O determinan el
rendimiento del escenario
 Pequeños Stripe + Grandes requerimientos de I/O = Dividir el I/O en
subprocesos mas eficientes
 No se suman, :-(.
 10 unidades de 80MB/seg = 800MB/seg
 La regla de oro es 15MB/seg por unidad
Tamaño de Stripe, de Bloques y Modelo de I/O
Conceptos básicos de almacenamiento de
estado solido
 Sin partes móviles, I/O medidos en microsegundos.
 Por lo tanto, al azar el I/O es 200 x o mejor que el disco duro
 Por lo general, se lee más rápido que cuando escribe
 Cuando a mucho, de 4 a 1 depende del fabricante
 Uso diferente que un HDD
 Puede perder capacidad con el tiempo
 Puede ralentizar su entorno debido a la nivelación de desgaste
 Varias capas de corrección de errores
 Costoso
 SAS 15k drive $2.00/GB
 SSD $8.00/GB
 No tiene que ser una condición para establecer un disco duro!!!
Discos de Estado Solido
Conceptos básicos de almacenamiento de
estado solido
 Entender lo que está comprando y por qué.
 ¿Estás comprando desempeño de lectura secuencial?
 ¿Estás comprando desempeño de lectura aleatoria?
 ¿Están comprando ejecución de rendimiento aleatorio?
 ¿Estás comprando fiabilidad?
Estado Solido vs. Estado Solido
Unidad GB
Escritura
MB/Seg
Lectura
MB/Seg
Escritura
/Seg
Lectura
/Seg
Seek WL/D $ $/GB $/Lectura $/Escritura
IoDrive
Dou
640 1GB 1.4GB 127K 181K 80μs 5TB $15k $25.39 $0.11 $0.08
X25-M 160 70MB 250MB 35K 3.3K 85μs 100GB $750 $4.60 $0.02 #0.02
Imp. -4x -5x -5x -4x -55x - -10x -20x -5x -5x 3x
Conceptos básicos de almacenamiento de
estado solido
 Redes de área de almacenamiento / Almacenamiento IP
 Esencialmente un sistema informático especializado
 Red especializada mediante Fibre Channel
 O Ethernet mediante iSCSI
 Ideal para redundancia o agrupamiento
 Se centró en la consolidación del almacenamiento de
información no velocidad
 NAS no es un SAN!
Red de área de almacenamiento
Conceptos básicos de almacenamiento de
estado solido
 Configuración interna del disco
 Los discos se dividen en slicers
 Los sectores se agrupan en números de unidad lógica (LUN's)
 Se presentan como los volúmenes de su host
 Tamaño para cargas de IO no de espacio en disco.
 No comparta sus discos con otras aplicaciones como Exchange
 Usted y su administrador de Exchange les aseguro que estarán muy
tristes
 Esté atento a esos lugares nada gratos
Red de área de almacenamiento
SQL Server y el Sistema de Archivos
 Escrituras en registro de transacciones
 Secuencial 512 bytes a 64KB
 Archivo de datos de Lectura/Escritura
 8KB
 Lectura adelantada, muy importante en la versión Enterprise Edition
 8 KB para 125KB
 Bulk Insert
 8 KB para 128KB
 Crear base de datos
 512 byte - Inicialización completa solamente en el registro de transacciones
 Copia de seguridad de Lectura/Escritura secuencial
 1 MB
 Restauración secuencial de Lectura/Escritura
 64K
 DBCC CHECKDB
 Lectura secuencial 8K-64K
 DBCC DBREINDEX
 Leer fase secuencial (Ver Lectura adelantada)
 Escribir fase secuencial
 Cualquier múltiplo de 8K hasta 128K
 DBCC SHOWCONTIG
 Lectura secuencial 8K-64K
SQL Server y el Sistema de Archivos
http://technet.Microsoft.com/en-us/library/cc966500.aspx
ACID y WAL
 ACID (Atomicidad, Coherencia, Aislamiento y Durabilidad) es lo que hace a nuestra base de datos confiable
 WAL (Write-Ahead Logging) es cómo se logra el ACID. Básicamente, el registro debe ser tratado en el disco antes
de que se modifique el archivo de datos
Los canales estable
 Medios estable no es sólo la unidad de disco. Un controlador con una memoria caché con respaldo de batería
también se considera estable
FUA (Forced Unit Access - Unidad de Acceso Forzado)
 FILE_FLAG_WRITETHROUGH le indica el sistema operativo subyacente que no utilice el almacenamiento en
caché de escritura ya que no se considera un canal estable
 FILE_FLAG_NO_BUFFERING le indica el sistema operativo no utilizar la caché del sistema con el archivo de datos
a tratar
Acceso a archivos
 SQL Server utiliza acceso asincrónico para archivos de registro y datos.
 SQL Server intentará y garantizará escribir en el archivo de datos dentro de bloques más grandes
 El registro de transacciones siempre se escribe en forma secuencial.
Todas estas reglas son aplicadas en los escenarios expuestos con la salvedad del "TempDB". Puesto que TempDB es
recreado cada vez que se reinicia el servidor conllevando con esto que cada vez que el tiempo de recuperación no es un
problema.
SQL Server y el Sistema de Archivos
Formato de las particiones de datos a 64k de tamaño en clúster
para el rendimiento. SQL Server lee 64k en bloque si es posible
Alineamiento de sectores para evitar dividir el I/O
 MBR ocupa los primeros 63 sectores dejando su partición a partir de los
64
 Uso diskpar (Windows 2000/2003 pre SP1)
 Use diskpart (Windows 2003 SP1 o superior)
 Windows 2008 establece salida de 1MB
 Atención: Desfragmentación del disco no va a arreglar esto!!!
 El formato de partición completa no va a arreglar esto tampoco!!!
 Compruebe los servidores en estado de pre compilación
('Build'), Win2k/2003
 La app WMIC PARTITION ubica los
BlockSize, StartingOffset, Nombre, Índice, etc
Probando el nuevo sistema de
almacenamiento
SQLIO
 Pruebas de lecturas o escrituras
 No es el mejor para cargas de trabajo mixtas
 Encontraras capacidad máxima y mayores problemas
Iometer
 http://www.iometer.org/
 General IO System Tester
 Muy flexible
 Prueba de cargas de trabajo mixtas
 Puede ser difícil de usar
Supervisión del sistema de almacenamiento
Tiempo de respuesta = Tiempo de Servicio + Tiempo de Espera
Disk Queue Length - Longitud de la cola en disco
 Más relevante desde hace 10 años a la fecha
 Máscara de cache DQ
 Focalizado en latencia y en espera
sys.dm_io_virtual_file_stats
 Te da que tiempo a leer y escribir el I/O
 Te da una cantidad superior de datos tanto escritos y leídos a nivel de
archivo
 Ideal para encontrar zonas álgidas en la SAN
sys.dm_os_wait_stats
 Te imparte lo que SQL Server está haciendo del lado del I/O
 Sólo en un nivel de instancia es aplicado
Entendiendo el Sistema de
Almacenamiento de Datos y SQL Server
Jose Redondo - SQL Server MVP
Correos: redondoj@gmail.com | jredondo@solidq.com
Twitter: @redondoj
Blog: redondoj.wordpress.com

Más contenido relacionado

Similar a Entendiendo el sistema de almacenamiento de datos y SQL Server

Monitoreo tunning postgresql_2011
Monitoreo tunning postgresql_2011Monitoreo tunning postgresql_2011
Monitoreo tunning postgresql_2011Lennin Caro
 
El Disco Duro
El Disco DuroEl Disco Duro
El Disco Durozdb
 
Computador personal, partes (Parte2)
Computador personal, partes (Parte2)Computador personal, partes (Parte2)
Computador personal, partes (Parte2)Andres Ovalles
 
File System Management
File System ManagementFile System Management
File System ManagementJuan Sánchez
 
Sistema de archivos y almacenamiento secundario
Sistema de archivos y almacenamiento secundarioSistema de archivos y almacenamiento secundario
Sistema de archivos y almacenamiento secundarioSusan Cuellar Silva
 
Discos duros
Discos durosDiscos duros
Discos durospoladio1
 
El disco duro
El disco duroEl disco duro
El disco durojosarta
 
Disco duro
Disco duroDisco duro
Disco duromeudys
 
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo Freddy Patricio Ajila Zaquinaula
 
Disco Duro
Disco DuroDisco Duro
Disco Duroskapunk
 
Disco Duro
Disco DuroDisco Duro
Disco Duroskapunk
 
Discos duros
Discos durosDiscos duros
Discos durosJAV_999
 
Disco duro
Disco duroDisco duro
Disco durolonenabb
 
Disco Duro
Disco DuroDisco Duro
Disco Durobrayan
 

Similar a Entendiendo el sistema de almacenamiento de datos y SQL Server (20)

Monitoreo tunning postgresql_2011
Monitoreo tunning postgresql_2011Monitoreo tunning postgresql_2011
Monitoreo tunning postgresql_2011
 
8.discos duros
8.discos duros8.discos duros
8.discos duros
 
El Disco Duro
El Disco DuroEl Disco Duro
El Disco Duro
 
Computador personal, partes (Parte2)
Computador personal, partes (Parte2)Computador personal, partes (Parte2)
Computador personal, partes (Parte2)
 
Discos duros
Discos durosDiscos duros
Discos duros
 
File System Management
File System ManagementFile System Management
File System Management
 
Sistema de archivos y almacenamiento secundario
Sistema de archivos y almacenamiento secundarioSistema de archivos y almacenamiento secundario
Sistema de archivos y almacenamiento secundario
 
Discos duros
Discos durosDiscos duros
Discos duros
 
El disco duro
El disco duroEl disco duro
El disco duro
 
S e n a
S e n aS e n a
S e n a
 
Disco duro
Disco duroDisco duro
Disco duro
 
Disco duro
Disco duroDisco duro
Disco duro
 
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo
Memoria Externa, Unidadad de Entrada/Salida, Introducción al Sistema Operativo
 
Disco Duro
Disco DuroDisco Duro
Disco Duro
 
Disco Duro
Disco DuroDisco Duro
Disco Duro
 
Discos duros
Discos durosDiscos duros
Discos duros
 
Discos duros
Discos durosDiscos duros
Discos duros
 
Discos duros
Discos durosDiscos duros
Discos duros
 
Disco duro
Disco duroDisco duro
Disco duro
 
Disco Duro
Disco DuroDisco Duro
Disco Duro
 

Más de Joseph Lopez

Entorno de datos Microsoft Cloud
Entorno de datos Microsoft CloudEntorno de datos Microsoft Cloud
Entorno de datos Microsoft CloudJoseph Lopez
 
Microsoft Azure Data Environment
Microsoft Azure Data EnvironmentMicrosoft Azure Data Environment
Microsoft Azure Data EnvironmentJoseph Lopez
 
Aplicando SQL Server 2016 en Microsoft Azure Virtual Machine
Aplicando SQL Server 2016 en Microsoft Azure Virtual MachineAplicando SQL Server 2016 en Microsoft Azure Virtual Machine
Aplicando SQL Server 2016 en Microsoft Azure Virtual MachineJoseph Lopez
 
Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...
Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...
Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...Joseph Lopez
 
Conociendo los cambios de SQL Server a partir de 2012 a 2016
Conociendo los cambios de SQL Server a partir de 2012 a 2016Conociendo los cambios de SQL Server a partir de 2012 a 2016
Conociendo los cambios de SQL Server a partir de 2012 a 2016Joseph Lopez
 
Aplicando Azure Search en Sistemas Hibridos
Aplicando Azure Search en Sistemas HibridosAplicando Azure Search en Sistemas Hibridos
Aplicando Azure Search en Sistemas HibridosJoseph Lopez
 
Performance Tuning en Azure SQL Database
Performance Tuning en Azure SQL DatabasePerformance Tuning en Azure SQL Database
Performance Tuning en Azure SQL DatabaseJoseph Lopez
 
Tablas temporales en SQL Server 2016 y Azure SQL Database v12
Tablas temporales en SQL Server 2016 y Azure SQL Database v12Tablas temporales en SQL Server 2016 y Azure SQL Database v12
Tablas temporales en SQL Server 2016 y Azure SQL Database v12Joseph Lopez
 
Perspectiva de Microsoft Business Intelligence a partir de la integracion con...
Perspectiva de Microsoft Business Intelligence a partir de la integracion con...Perspectiva de Microsoft Business Intelligence a partir de la integracion con...
Perspectiva de Microsoft Business Intelligence a partir de la integracion con...Joseph Lopez
 
Recuperación ante desastres y continuidad del negocio con Azure SQL Database
Recuperación ante desastres y continuidad del negocio con Azure SQL DatabaseRecuperación ante desastres y continuidad del negocio con Azure SQL Database
Recuperación ante desastres y continuidad del negocio con Azure SQL DatabaseJoseph Lopez
 
DBA para SharePoint
DBA para SharePointDBA para SharePoint
DBA para SharePointJoseph Lopez
 
Introducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data WarehouseIntroducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data WarehouseJoseph Lopez
 
In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016Joseph Lopez
 
Introducción a Azure DocumentDB
Introducción a Azure DocumentDBIntroducción a Azure DocumentDB
Introducción a Azure DocumentDBJoseph Lopez
 
Big Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivasBig Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivasJoseph Lopez
 
Introduccion a Power BI
Introduccion a Power BIIntroduccion a Power BI
Introduccion a Power BIJoseph Lopez
 
Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...
Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...
Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...Joseph Lopez
 
Inteligencia de Negocio - Que Planeta es eso?
Inteligencia de Negocio - Que Planeta es eso?Inteligencia de Negocio - Que Planeta es eso?
Inteligencia de Negocio - Que Planeta es eso?Joseph Lopez
 
Introduccion a las Bodegas de Datos
Introduccion a las Bodegas de DatosIntroduccion a las Bodegas de Datos
Introduccion a las Bodegas de DatosJoseph Lopez
 
Microsoft Azure SQL Database
Microsoft Azure SQL DatabaseMicrosoft Azure SQL Database
Microsoft Azure SQL DatabaseJoseph Lopez
 

Más de Joseph Lopez (20)

Entorno de datos Microsoft Cloud
Entorno de datos Microsoft CloudEntorno de datos Microsoft Cloud
Entorno de datos Microsoft Cloud
 
Microsoft Azure Data Environment
Microsoft Azure Data EnvironmentMicrosoft Azure Data Environment
Microsoft Azure Data Environment
 
Aplicando SQL Server 2016 en Microsoft Azure Virtual Machine
Aplicando SQL Server 2016 en Microsoft Azure Virtual MachineAplicando SQL Server 2016 en Microsoft Azure Virtual Machine
Aplicando SQL Server 2016 en Microsoft Azure Virtual Machine
 
Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...
Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...
Conociendo Dynamic Data Masking en entornos de producción con SQL Server 2016...
 
Conociendo los cambios de SQL Server a partir de 2012 a 2016
Conociendo los cambios de SQL Server a partir de 2012 a 2016Conociendo los cambios de SQL Server a partir de 2012 a 2016
Conociendo los cambios de SQL Server a partir de 2012 a 2016
 
Aplicando Azure Search en Sistemas Hibridos
Aplicando Azure Search en Sistemas HibridosAplicando Azure Search en Sistemas Hibridos
Aplicando Azure Search en Sistemas Hibridos
 
Performance Tuning en Azure SQL Database
Performance Tuning en Azure SQL DatabasePerformance Tuning en Azure SQL Database
Performance Tuning en Azure SQL Database
 
Tablas temporales en SQL Server 2016 y Azure SQL Database v12
Tablas temporales en SQL Server 2016 y Azure SQL Database v12Tablas temporales en SQL Server 2016 y Azure SQL Database v12
Tablas temporales en SQL Server 2016 y Azure SQL Database v12
 
Perspectiva de Microsoft Business Intelligence a partir de la integracion con...
Perspectiva de Microsoft Business Intelligence a partir de la integracion con...Perspectiva de Microsoft Business Intelligence a partir de la integracion con...
Perspectiva de Microsoft Business Intelligence a partir de la integracion con...
 
Recuperación ante desastres y continuidad del negocio con Azure SQL Database
Recuperación ante desastres y continuidad del negocio con Azure SQL DatabaseRecuperación ante desastres y continuidad del negocio con Azure SQL Database
Recuperación ante desastres y continuidad del negocio con Azure SQL Database
 
DBA para SharePoint
DBA para SharePointDBA para SharePoint
DBA para SharePoint
 
Introducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data WarehouseIntroducción a Microsoft Azure SQL Data Warehouse
Introducción a Microsoft Azure SQL Data Warehouse
 
In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016In-Memory OLTP en SQL Server 2016
In-Memory OLTP en SQL Server 2016
 
Introducción a Azure DocumentDB
Introducción a Azure DocumentDBIntroducción a Azure DocumentDB
Introducción a Azure DocumentDB
 
Big Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivasBig Data - Desarrollando soluciones efectivas
Big Data - Desarrollando soluciones efectivas
 
Introduccion a Power BI
Introduccion a Power BIIntroduccion a Power BI
Introduccion a Power BI
 
Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...
Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...
Introducción a Power BI bajo escenarios empresariales híbridos con SQL Server...
 
Inteligencia de Negocio - Que Planeta es eso?
Inteligencia de Negocio - Que Planeta es eso?Inteligencia de Negocio - Que Planeta es eso?
Inteligencia de Negocio - Que Planeta es eso?
 
Introduccion a las Bodegas de Datos
Introduccion a las Bodegas de DatosIntroduccion a las Bodegas de Datos
Introduccion a las Bodegas de Datos
 
Microsoft Azure SQL Database
Microsoft Azure SQL DatabaseMicrosoft Azure SQL Database
Microsoft Azure SQL Database
 

Entendiendo el sistema de almacenamiento de datos y SQL Server

  • 1. Entendiendo el Sistema de Almacenamiento de Datos y SQL Server Jose Redondo
  • 2. Expositor  Jose Redondo  Chapter Leader SQL PASS Venezuela – Caracas Chapter  DPA SolidQ  Senior Consultant SynergyTPC, Bogotá - Colombia  ​MCP | MCTS - MS SQL Server; MTA - DAF | SQL Server MVP
  • 4. Patrocinadores / Sponsors  GOLD  SILVER  BRONCE  Personal/Swag
  • 6. Agenda  Estructura del sistema base  Controlador de Discos, Adaptador de Bus del Host e Interfaces  Fundamentos de discos de almacenamiento  Arreglos redundantes de discos de bajo perfil  Fundamentos de arreglos SAN  Conceptos básicos de almacenamiento de estado solido  SQL Server y el Sistema de Archivos  Probando el nuevo sistema de almacenamiento  Supervisión del sistema de almacenamiento
  • 7. Estructura del sistema base Bus del Sistema El servidor se compone de varios bus y controladores que se comunican el uno del otro y a la CPU. Bus Frontal  Por lo general, único acceso a la memoria  Bus del sistema más veloz  HyperTransport / Quickpath reemplazando a FSB Bus Controlador I/O  También conocido como el bus de periféricos  Todos los dispositivos  Todas las ranuras de expansión
  • 8. Estructura del sistema base Tipo de Bus Velocidad MB / Segundo PCI 32-bit/33 MHz 133 PCI-X 1066 PCI Express x1, 4, 8, 16 250, 1000, 2000, 4000 PCI Express 2.0 x16, 32 8000,16000 PCI Express 3.0 x16 (2011~) 32000 Buses Periféricos y Velocidades
  • 9. Estructura del sistema base Tipo de Bus Velocidad MB / Segundo SATA/SAS150, 300, 600 150, 300, 600 Fibre Channel 1G,2G, 4G, 8G 106, 212, 425, 850 iSCSI1Gbit, 10Gbit 125, 1250 Velocidades de las Interfaces
  • 10. Controlador de Discos, Adaptador de Bus del Host e Interfaces Unidad de caché de 2MB a 64 MB+  Segmentación Adaptable  Pre-Fetch Adaptadores RAID de Bus Host  Lee la memoria caché  Todo el almacenamiento escrito en caché ¡ADVERTENCIA!  Escribe habitualmente  Pagar ahora o pagar más tarde  Escribe la toma precedencia sobre lecturas efectuadas  Pool de buffer de 16GB vs. 256 MB de caché de I/O. Hagan los cálculos
  • 11. Los Fundamentos de Discos de Almacenamiento SAS es el rey de las cargas de trabajo pesadas Comando en cola  SAS admite un máximo de 216 por lo general un límite de 64  SATA admite un máximo de 32 Detección y recuperación de errores  No es inteligente  El comando set en SCSI es mejor Dúplex  SAS es full dúplex y dual por unidad puerto  SATA es única a doble cara y maneja un solo puerto I/O Multi-path  Nativo de SAS a nivel de unidad.  Disponible para SATA a través de expansores. SAS o SATA
  • 12. Los Fundamentos de Discos de Almacenamiento Los discos duros emiten lo siguiente: Sólo eres tan rápido como el canal más lento o más estrecho, ya que para alimentar a otras partes del sistema, hay que añadir una cantidad extra de unidades de discos solo para obtener el I/O deseado a consumir en el servidor. Breaking news: El problema no es el tamaño es la velocidad. Unidades de Discos Tiempo Por el año 1981 Hoy día Mejora Capacidad 10MB 1470MB 147x Busqueda HDD 85ms/busqueda 3.3ms/busqueda 20x IO/Seg 11.4 IO/Seg 303 IO/Seg 26x Rendimiento de Procesamiento HDD 5mbit/Seg 1000mbit/Seg 200x Velocidad CPU 8088 4.77Mhz (.33 MIPS) Core i7 965(18322 MIPS) 5521x
  • 13. Los Fundamentos de Discos de Almacenamiento Cabecera/Sectores/Cilindros  No una verdadera representación física!!! Ubicación del dato/pista  Pistas exteriores comprimen más datos = Más MB / Seg  Pistas interiores buscan más rápido = Más I/O Seg  Más discos no = Más velocidad!!!  HDD actual sólo tienen un canal de lectura/escritura Estructura Física
  • 14. Los Fundamentos de Discos de Almacenamiento  Las pistas son un camino alrededor del disco  Los sectores son una sola porción / pedazo de un disco  Cilindro son a través de los discos y se componen de sectores  Cabezas de hacen la lectura y la escritura Ubicación del sector de dato
  • 15. Los Fundamentos de Discos de Almacenamiento Velocidades típicas 73 GB SAS/SCSI  Velocidad de rotación - 15,000 RPM  Promedio de búsqueda aleatoria I/O - En la realidad 5.5 ms Tiempo de lectura; 6.0 ms Escritura teórica; 2.9 ms Lectura; 3.3 Escritura  Tasa de Transferencia Secuencial 65MB ~ 120MB/seg  Tasa de Transferencia Aleatoria 10MB ~ 30MB/seg  Memoria caché puede afectar el tamaño de bloque de dato entre 4 ~ 64k  Búsqueda secuencial entre pista en I/O - 0.5 ms de lectura, 0.7 ms de escritura  Latencia de rotación - 2.0 ms Rendimiento de disco
  • 16. Los Fundamentos de Discos de Almacenamiento Tiempo de búsqueda El tiempo necesario para mover las cabezas de lectura/escritura sobre la superficie del disco a la pista requerida. El tiempo de búsqueda es aproximadamente proporcional a la distancia que deben mover las cabezas. Latencia de rotación Pasa el tiempo tomado, después de la finalización de la búsqueda, para el disco hasta que el primer sector dirigida sus acciones bajo las cabezas de lectura/escritura. En promedio, la latencia de rotación es la mitad de una rotación completa. Tiempo de transferencia El tiempo necesario para que el disco gire o rote hasta que hayan pasado todos los sectores incluidos en el marco de las cabezas de lectura - escritura. Velocidad de giro (RPM) Tiempo Promedio de Latencia (ms) Aplicaciones Típicas Actuales 5,400 5.6 IDE Desktop/Laptop 7,200 4.2 Estándar Actual IDE/SATA 10,000 3 High-end estándar SATA SAS/SCSI 15,000 2 Máximo Actual SAS/SCSI
  • 17. Los Fundamentos de Discos de Almacenamiento Calculando la búsqueda máxima aleatoria por segundo Búsqueda máxima aleatoria por segundo  1000 / (Tiempo de búsqueda[ms] + latencia[ms]) = IO/Seg  1000 / (4.7 + 2.0) = 204 Lectura/Seg  1000 /(3.3+2.0) = 188 Escritura/Seg Latencia de efectos en cola!!!
  • 18. Los Fundamentos de Discos de Almacenamiento Utilización máxima para mejor rendimiento  Escritura máxima de búsqueda por segundo = 188  La curva de ejecución sea en un 80%  Configure para que el promedio I/O de 140 aplique aleatoriamente por segundo en disco I/O  Esto es un 75% de capacidad máxima  Mantener baja latencia!!!
  • 19. Arreglos redundantes de discos de bajo perfil  El I/O secuencial es mucho más rápido  Tiempo de búsqueda 5.5ms → 0.7ms  Cálculo rinde 370 I/O por segundo  o 277 I/O por segundo @ 75%  > 300+ I/O por segundo es común para secuencial  A medida que aumenta el I/O también incrementa la Latencia  Rendimiento secuencial del disco puede estar cerca del rendimiento del SSD
  • 20. Fundamentos de arreglos SAN  Se necesitan dos o más discos  No hay espacio en el disco perdido debido a la creación de bandas  El rendimiento es más rápido al leer y escribir  No ofrece ninguna protección de datos  Cuantos más discos, más riesgo RAID 0 - Striping
  • 21. Fundamentos de arreglos SAN  Sólo dos discos  Velocidad de escritura de un disco  Velocidad de lectura de dos discos  La capacidad es igual al tamaño de un disco RAID 1 - Mirroring
  • 22. Fundamentos de arreglos SAN  Requiere 4 o más unidades  Es un espejo de 2 Raid 0 Stripes  Puede perder dos unidades y todavía funcionar  Sólo la mitad del espacio disponible  No es lo mismo que RAID 10 RAID 0 + 1 – Dos Mirroring RAID 0 Stripes
  • 23. Fundamentos de arreglos SAN  Mejor rendimiento de lectura y escritura  Requiere 4 o más unidades  Es un juego de espejos striped  Puede perder n/2 unidades en donde es el número total de unidades en el arreglo  Sólo la mitad de la capacidad disponible RAID 10 – Dos RAID 1 Striping Mirrors
  • 24. Fundamentos de arreglos SAN  Considerado el mejor arreglo  Requiere 3 o más unidades  Stripe en todas las unidades con paridad  Puede perder 1 unidad y seguir funcionando  La capacidad es n-1 donde n es el número de unidades en el arreglo RAID 5 – Striping con paridad
  • 25. Fundamentos de arreglos SAN  Doble protección RAID 5  4 o más discos  Es un Stripe con dos unidades de paridad  Puede perder dos unidades y seguir funcionando  La capacidad es n-2, donde n es el número de unidades en el arreglo RAID 6 – RAID 5 con esteroides
  • 26. Fundamentos de arreglos SAN  RAID 0 = Fallo del disco = Perdida de dato  Más disco más riesgo  RAID 1 = Dos veces la seguridad  RAID 5 = Fiabilidad a pequeña escala  Más disco = Mayor riesgo  RAID 6 = Fiabilidad a gran escala  Más GB = Más riesgo  RAID 10 = Fiabilidad en cualquier escala  Susceptible a fallos de disco correlacionados  Es complicado calcular las tasas de fracaso  La regla de oro, más de 8 unidades en un RAID 5 podrían ser desastrosas  Velocidad de lectura no aplicable en las grandes unidades de 1 TB son un peligro real  Los discos del mismo lote sufren la misma suerte (Fallos Correlacionados)  Aplique en páginas corruptas en versión 2000 y haga CheckSum para versión 2005/2008  Restaurar copias de seguridad con regularidad. Atención: Esto un Plan de Recuperación NO ES un Plan de Copia de Seguridad... Confiabilidad RAID
  • 27. Fundamentos de arreglos SAN  RAID 10  1 IOPs Lectura - 2 IOPs Escritura  RAID 5  1 IOPs Lectura - 4 IOPs Escritura  Ambos objetivos, tanto Stripe así como el de Paridad Stripe deben ser leído y la paridad calculada serán escrita en ambas  Advertencia de lectura puede ser tan rápido como n-1 disco  RAID 6  1 IOPs Lectura - 6 IOPs Escritura  Ambos objetivos, tanto Stripe así como las dos Paridades Stripes deben ser leído y la paridad calculada deberán escribirse en las tres  Advertencia de lectura puede ser tan rápido como n-2 discos Capacidad o Performance
  • 28. Fundamentos de arreglos SAN  SQL Server Data Files  Pagina de 8k  Extensible a 64k  256k lectura por delante  El tamaño del cluster RAID debe establecerse en 64k o 256k  Iniciar el tamaño del cluster en 64k  Mover el tamaño del cluster a 256k para un mejor rendimiento secuencial  Conocer el I/O del escenario  Por lo general, 256k encaja en el 99% de nuestras necesidades Configurando y estableciendo el nivel de RAID
  • 29. Fundamentos de arreglos SAN  Tipos de I/O separados!!!  Los archivos de datos tienden a Leer - Escribir aleatoriamente  Los archivos del Registro de Transacciones tienen 0 aleatorio al Leer - Escribir  Más de un Log en una unidad = Aleterioridad Lecturas - Escritura  Mejor aplicar el Log con datos AUNQUE...  LUN's separado sin disco compartido  RAID 1 o 10 para el Registro de Transacciones  Exige una carga fuerte de ejecución  RAID 5, 6 o 10 para Datos  Si son mas del 10% de ejecución de escritura en disco, debería empozar a buscar un RAID 10  Entendiendo las escrituras incurriendo en las lecturas!!! Configurando y estableciendo el nivel de RAID
  • 30. Fundamentos de arreglos SAN  Sectores del disco físico 512 bytes, 4,096 bytes  No se puede restaurar o adjuntar una base de datos de un tamaño más grande del sector en un disco de tamaño de sector más pequeño. 4096 puede continuar en un 512 pero no 512 a 4096  Esté al tanto de un posible mayor rendimiento al configurar arreglos RAID  Tamaño de Stripe y tamaño del requerimiento de I/O determinan el rendimiento del escenario  Pequeños Stripe + Grandes requerimientos de I/O = Dividir el I/O en subprocesos mas eficientes  No se suman, :-(.  10 unidades de 80MB/seg = 800MB/seg  La regla de oro es 15MB/seg por unidad Tamaño de Stripe, de Bloques y Modelo de I/O
  • 31. Conceptos básicos de almacenamiento de estado solido  Sin partes móviles, I/O medidos en microsegundos.  Por lo tanto, al azar el I/O es 200 x o mejor que el disco duro  Por lo general, se lee más rápido que cuando escribe  Cuando a mucho, de 4 a 1 depende del fabricante  Uso diferente que un HDD  Puede perder capacidad con el tiempo  Puede ralentizar su entorno debido a la nivelación de desgaste  Varias capas de corrección de errores  Costoso  SAS 15k drive $2.00/GB  SSD $8.00/GB  No tiene que ser una condición para establecer un disco duro!!! Discos de Estado Solido
  • 32. Conceptos básicos de almacenamiento de estado solido  Entender lo que está comprando y por qué.  ¿Estás comprando desempeño de lectura secuencial?  ¿Estás comprando desempeño de lectura aleatoria?  ¿Están comprando ejecución de rendimiento aleatorio?  ¿Estás comprando fiabilidad? Estado Solido vs. Estado Solido Unidad GB Escritura MB/Seg Lectura MB/Seg Escritura /Seg Lectura /Seg Seek WL/D $ $/GB $/Lectura $/Escritura IoDrive Dou 640 1GB 1.4GB 127K 181K 80μs 5TB $15k $25.39 $0.11 $0.08 X25-M 160 70MB 250MB 35K 3.3K 85μs 100GB $750 $4.60 $0.02 #0.02 Imp. -4x -5x -5x -4x -55x - -10x -20x -5x -5x 3x
  • 33. Conceptos básicos de almacenamiento de estado solido  Redes de área de almacenamiento / Almacenamiento IP  Esencialmente un sistema informático especializado  Red especializada mediante Fibre Channel  O Ethernet mediante iSCSI  Ideal para redundancia o agrupamiento  Se centró en la consolidación del almacenamiento de información no velocidad  NAS no es un SAN! Red de área de almacenamiento
  • 34. Conceptos básicos de almacenamiento de estado solido  Configuración interna del disco  Los discos se dividen en slicers  Los sectores se agrupan en números de unidad lógica (LUN's)  Se presentan como los volúmenes de su host  Tamaño para cargas de IO no de espacio en disco.  No comparta sus discos con otras aplicaciones como Exchange  Usted y su administrador de Exchange les aseguro que estarán muy tristes  Esté atento a esos lugares nada gratos Red de área de almacenamiento
  • 35. SQL Server y el Sistema de Archivos  Escrituras en registro de transacciones  Secuencial 512 bytes a 64KB  Archivo de datos de Lectura/Escritura  8KB  Lectura adelantada, muy importante en la versión Enterprise Edition  8 KB para 125KB  Bulk Insert  8 KB para 128KB  Crear base de datos  512 byte - Inicialización completa solamente en el registro de transacciones  Copia de seguridad de Lectura/Escritura secuencial  1 MB  Restauración secuencial de Lectura/Escritura  64K  DBCC CHECKDB  Lectura secuencial 8K-64K  DBCC DBREINDEX  Leer fase secuencial (Ver Lectura adelantada)  Escribir fase secuencial  Cualquier múltiplo de 8K hasta 128K  DBCC SHOWCONTIG  Lectura secuencial 8K-64K
  • 36. SQL Server y el Sistema de Archivos http://technet.Microsoft.com/en-us/library/cc966500.aspx ACID y WAL  ACID (Atomicidad, Coherencia, Aislamiento y Durabilidad) es lo que hace a nuestra base de datos confiable  WAL (Write-Ahead Logging) es cómo se logra el ACID. Básicamente, el registro debe ser tratado en el disco antes de que se modifique el archivo de datos Los canales estable  Medios estable no es sólo la unidad de disco. Un controlador con una memoria caché con respaldo de batería también se considera estable FUA (Forced Unit Access - Unidad de Acceso Forzado)  FILE_FLAG_WRITETHROUGH le indica el sistema operativo subyacente que no utilice el almacenamiento en caché de escritura ya que no se considera un canal estable  FILE_FLAG_NO_BUFFERING le indica el sistema operativo no utilizar la caché del sistema con el archivo de datos a tratar Acceso a archivos  SQL Server utiliza acceso asincrónico para archivos de registro y datos.  SQL Server intentará y garantizará escribir en el archivo de datos dentro de bloques más grandes  El registro de transacciones siempre se escribe en forma secuencial. Todas estas reglas son aplicadas en los escenarios expuestos con la salvedad del "TempDB". Puesto que TempDB es recreado cada vez que se reinicia el servidor conllevando con esto que cada vez que el tiempo de recuperación no es un problema.
  • 37. SQL Server y el Sistema de Archivos Formato de las particiones de datos a 64k de tamaño en clúster para el rendimiento. SQL Server lee 64k en bloque si es posible Alineamiento de sectores para evitar dividir el I/O  MBR ocupa los primeros 63 sectores dejando su partición a partir de los 64  Uso diskpar (Windows 2000/2003 pre SP1)  Use diskpart (Windows 2003 SP1 o superior)  Windows 2008 establece salida de 1MB  Atención: Desfragmentación del disco no va a arreglar esto!!!  El formato de partición completa no va a arreglar esto tampoco!!!  Compruebe los servidores en estado de pre compilación ('Build'), Win2k/2003  La app WMIC PARTITION ubica los BlockSize, StartingOffset, Nombre, Índice, etc
  • 38. Probando el nuevo sistema de almacenamiento SQLIO  Pruebas de lecturas o escrituras  No es el mejor para cargas de trabajo mixtas  Encontraras capacidad máxima y mayores problemas Iometer  http://www.iometer.org/  General IO System Tester  Muy flexible  Prueba de cargas de trabajo mixtas  Puede ser difícil de usar
  • 39. Supervisión del sistema de almacenamiento Tiempo de respuesta = Tiempo de Servicio + Tiempo de Espera Disk Queue Length - Longitud de la cola en disco  Más relevante desde hace 10 años a la fecha  Máscara de cache DQ  Focalizado en latencia y en espera sys.dm_io_virtual_file_stats  Te da que tiempo a leer y escribir el I/O  Te da una cantidad superior de datos tanto escritos y leídos a nivel de archivo  Ideal para encontrar zonas álgidas en la SAN sys.dm_os_wait_stats  Te imparte lo que SQL Server está haciendo del lado del I/O  Sólo en un nivel de instancia es aplicado
  • 40. Entendiendo el Sistema de Almacenamiento de Datos y SQL Server Jose Redondo - SQL Server MVP Correos: redondoj@gmail.com | jredondo@solidq.com Twitter: @redondoj Blog: redondoj.wordpress.com