Gracias por la data!
 
Saludos
Esteban

  _____  

From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Maxi Accotto
Sent: Martes, 06 de Marzo de 2007 16:46
To: Esteban A. Zibecchi
Subject: [dbms] Dimensionamiento Servidor


Por nada, si te interesa el tema recomiendo los siguientes links
 
http://www.sql-server-performance.com/
 
http://www.sql-server-performance.com/sql_server_performance_audit3.asp
 
 


 
El día 6/03/07, Carlos Peix <[EMAIL PROTECTED]> escribió: 

Mas gracias
 
Carlos


  _____  

From: [email protected] [mailto: [email protected] <mailto:[email protected]> ] On
Behalf Of Maxi Accotto
Sent: Martes, 06 de Marzo de 2007 03:20 p.m.
To: [EMAIL PROTECTED]
Subject: [dbms] Dimensionamiento Servidor

 
jaja, mira, este tema es interesante porque hablamos por lo general de
ahorrar $$$ y en algunos casos puede ser importante el numero, hay veces que
no es una cuestion solo de ahorrar sino de la imagen que damos, si
requerimos mucho Hard es muy probable que a nuestro cliete no le guste. 
 
Los datos que te di son de un server en produccion pero asi como ese tambien
tengo otros ejemplos. Basicamente el tema de que una aplicion se pone lenta
en un 90% de los casos no es problema de Hard ni mucho menos, por lo general
tenes estos problemas 
 
1) Transacciones largas
2) Tablas temporales
3) Uso de cursores
4) Falta de indices e indices de mas donde no hay que tener
5) Diseños no eficientes lo cual para hacer una busqueda debo complicar la
query y muchas veces esto hara tener mas lecturas
 
Por lo general los problemas de performance se dan en lecturas al sistema
I/O, en pocos casos me ha tocado ver que el CPU sea realmente el problema, y
si hablamos de un 3Ghz con ese temaño de base y esos usuarios el CPU no
deberia nunca pasar el 80% 
 
Si se cargan datos de forma masiva necesitas velocidad de disco tambien.
 
Los reportes son querys que se ejecutan contra el motor, si aca somos
inteligentes y no queremos por ej resolver cosas con TSQL que las hace el
sistema de reporte entonces no deberias tener problemas, tampoco es bueno
por ej traer 1.000.000 de registros solo para ver 10 o 20, todo esto hace un
mayor consumo de IO lo cual por lo general hace que sea mas lento.
 
Hace unas semanas vi con un cliente un servidor para SAP contra SQLServer y
esta gente tiene mas de 300 usuarios con una base que hoy tiene casi 120gb y
llegara a los 500GB, el server que se puso fue:
 
Dual core x64
4GB de RAM
Discos SCSI 20k en RAId 0+1
 
De todas maneras hay algunas herramientas para hacer estress, como asi
tambien algunos tips para que nuestro servidor de base de datos no sea un
cuello de botella, algunos ya son los expuestos anteriormente y otros
podrian ser: 
 
1) Que el servidor SQL no sea tambien Controlador de Dominio
2) Que se asigne la memoria necesaria al SQL y no se lo deje libremente
3) Tratar de tener mas de un disco fisico y dividir lo que es log de
transacciones de lo que es data y tempdb (esto seria lo ideal)
4) No comprimir discos ni cosas por el estilo
5) Si tenes un antivirus en el server que no se dispare automaticamente y
sea un proceso controlado a un horario de poca carga, por lo general estas
cosas influyen bastante en la performance global del server
6) Actualizar las estadisticas
7) Tener un buen mantenimiento del log de transacciones, por ejemplo en el
modelo anterior con una base de 2GB el log no deberia ser mayor a 300MB como
mucho, un mayor log hace que se necesiten mas recursos del servidor para
poder controlarlo. 
8) Revisar el uso de indices, por cada indice que ponemos penalizamos las
sentencias de insert, update y delete
9) No resolver con SQLServer cosas para lo cual no fue pensado, si quiero un
reporte en columnas por mes eso lo deberia resolver fuera y que solo el SQL
me de la data
 
 
Un abrazo
 
-- 
----------------------------------------------------
Microsoft MVP en SQL Server
SQLTotalConsulting - Servicios & proyectos en SQLServer
Orador Culminis - Microsoft Influencier
www.sqlgurus.org <http://www.sqlgurus.org/> 
------------------------------------------- 
 


 
El día 6/03/07, Carlos Peix <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> > escribió: 

Ah, asi es facil, con experiencia cualquiera...
 
Bueh, gracias, tendre que contratarte entonces cuando necesite algo asi :-)
 
Gracias por la info, creo que nos sirve a todos.
 
Carlos


  _____  

From: [email protected] [mailto: [email protected] <mailto:[email protected]> ] On
Behalf Of Maxi Accotto
Sent: Martes, 06 de Marzo de 2007 01:34 p.m.
To: [EMAIL PROTECTED]
Subject: !-> [dbms] Dimensionamiento Servidor

 
Hola Carlos, los calculos no los hago mentales sino de experiencia, mira aca
tengo
 
2gb de ram
penitum iii 1gb
base de datos 20gb
150 usuarios concurrentes
Reporting services 2005
Reportes sin BI y sin base dedicada
Software ERP
Windows 2003 
 
 
No hay timeouts, bloqueos y la query q mas tarda es de 3segundos
 
Si haces la cuenta de cuanto consume una conexion de SQLServer veras que con
2gb de ram esta mas que hecho para 50 usuarios.
 
Un abrazo!

 
El día 6/03/07, Carlos Peix <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> > escribió: 

Hola Maxi,
Hola Esteban,
 
A mi me huele que estas en el limite, digamos, que estas en una situacion de
cuidado, sobre todo si tenes una especificacion de tiempo de respuesta para
los usuarios y los reportes. 
 
Puesto en una ecuacion:
 
15 o 20 GB de informacion + 50 usuarios concurrentes (respuesta sub second)
+ 5 usuarios sacando reportes (respuesta 15 segundos?) = CUIDADO! 
 
Tenes alguna via de escape armando una base de datos paralela para reporting
(si es posible).
 
Maxi, como haces vos los calculos (mentales) que te dan que este servidor
funcionará bien?
 
Carlos


  _____  

From: [email protected] [mailto: [email protected] <mailto:[email protected]> ] On
Behalf Of Maxi Accotto
Sent: Martes, 06 de Marzo de 2007 12:17 p.m.
To: [EMAIL PROTECTED]
Subject: !-> [dbms] Dimensionamiento Servidor

 
Hola, con ese servidor no deberias tener ningun problema, si los tienes es
porque las querys no estan siendo optimas desde el diseño pero a nivel
Hardware estas bien comparando el tamaño pequeño de la base de datos y su
crecimiento. 
 
Un abrazo
 
----------------------------------------------------
Microsoft MVP en SQL Server
SQLTotalConsulting - Servicios & proyectos en SQLServer
Orador Culminis - Microsoft Influencier
www.sqlgurus.org <http://www.sqlgurus.org/> 
------------------------------------------- 
 
El día 6/03/07, Esteban A. Zibecchi (MUG) <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> > escribió: 

Hi listeros!
 
Molesto porque estamos con un servidor con la siguiente configuración
    - HP Proliant ML 350 (Xeon 3Gz con 2gb RAM y 3 HD SAS de 72Gb en Raid
0+1)
    - Win2003 Server SP1
    - SQL2005 Standard SP1
    - 50 usuarios que ingresan datos
    - 5 usuarios que realizan reportes relativamente complejos
    - La aplicación está con .NET 2.0 y los reportes con Crystal
    - Usamos siempre Sps para acceder a la data.
 
Actualmente la BD tiene 2.5 Gb y las tablas más grandes son 3 con un par de
millones de registros cada una. 
El crecimiento es de 200Mb por semana y calculamos que no pasaremos nada a
histórico hasta no tener  18 meses por lo menos con lo cual estaremos en el
orden de los 15Gb aprox.
 
De la experiencia de Uds, tienen idea si el servidor se bancará esta
configuración?
 
Gracias por cualquier data.
 
Saludos
Esteban
 
 




-- 





-- 
----------------------------------------------------
Microsoft MVP en SQL Server
SQLTotalConsulting - Servicios & proyectos en SQLServer
Orador Culminis - Microsoft Influencier 
www.sqlgurus.org <http://www.sqlgurus.org/> 
------------------------------------------- 







-- 
----------------------------------------------------
Microsoft MVP en SQL Server
SQLTotalConsulting - Servicios & proyectos en SQLServer
Orador Culminis - Microsoft Influencier
www.sqlgurus.org
------------------------------------------- 

Responder a