[Consulta] Aplicara el cluster en este caso? Q sera lo mejor?

21/07/2005 - 22:48 por Solomon | Informe spam
Segun entiendo el cluster es un grupo de servidores que brindan un servicio
en comun permitiendo mayor disponibilidad, similar a un web farm para
servicios de internet.

No tengo claro si el cluster de MS SQL permite mayor desempeño o es para
tolerancia ante fallas.

Tenemos el ultimo servidor de DELL (32bits) dedicado al SQL junto con un
arreglo externo (en el cual distribuimos los datos y logs) pero se nos esta
quedando corto en rendimiento con una base no muy grande (creo) de 70GB. El
ERP q usamos es de Microsoft y ellos garantizan que cumplen con las mejores
practicas de SQL. En dicho server usamos las versiones Enterprise de W2K3 y
de SQL 2000.

Antes de comprar este servidor contratamos un experto para hacernos un
tunning a la base de datos, gastamos tiempo y $, la decision fue meterle
fuerza "bruta" hardware y el problema se soluciono en ese entonces (4 meses
atras) pero estamos volviendo a lo mismo.

Pensando que podriamos unir varios servidores para darle mayor performance
es q consulto sobre cluster. Sera esta una opcion viable? O mas bien cual
seria la mejor opcion para darle solucion al problema?

1000 GRS!

Preguntas similare

Leer las respuestas

#11 Maxi
22/07/2005 - 03:37 | Informe spam
Hola, un solo comentario, la pagina es:

www.sql-server-performance.com

y con respecto a esos porcentajes que indicas te diria que es asi en casi
todos los casos. Me ha tocado hacer consultorias y con solo modificar Stores
o estructuras el sistema cambio considerablemente.

Un abrazo


Maxi - Buenos Aires - Argentina
Desarrollador 3 Estrellas

Msn_messager:
mail: Maxi.da[arroba]gmail.com

"José Antonio Depetris" escribió en el
mensaje news:%
Hola Salomón.
Yo iniciaría por verificar el desempeño de la base de datos. MS-SQL posee
muchas herramientas para detectar "fallas de rendimiento" y actuar en
consecuencia.
No creo que pase por agregar hardware, sino por un estudio completo e
integral de BD+MS-SQL+aplicativo, puedes acudir al sitio
www.sql-perfamance.com allí encontrarás, muchos artículos y herramientas
para analizar tu problema. Según leí hace un tiempo las fallas de
rendimiento se deben en un 60~70% a los aplicativos no optimizados y el
resto a servidores mal dimensionados y/o instalados. Hay también software
de terceros (pagos) que analizan el desempeño y detectan las fallas.
Suerte

Saludos.
Ing. José Antonio Depetris
Santa Fe - Argentina

Respuesta Responder a este mensaje
#12 Maxi
22/07/2005 - 03:37 | Informe spam
Hola, un solo comentario, la pagina es:

www.sql-server-performance.com

y con respecto a esos porcentajes que indicas te diria que es asi en casi
todos los casos. Me ha tocado hacer consultorias y con solo modificar Stores
o estructuras el sistema cambio considerablemente.

Un abrazo


Maxi - Buenos Aires - Argentina
Desarrollador 3 Estrellas

Msn_messager:
mail: Maxi.da[arroba]gmail.com

"José Antonio Depetris" escribió en el
mensaje news:%
Hola Salomón.
Yo iniciaría por verificar el desempeño de la base de datos. MS-SQL posee
muchas herramientas para detectar "fallas de rendimiento" y actuar en
consecuencia.
No creo que pase por agregar hardware, sino por un estudio completo e
integral de BD+MS-SQL+aplicativo, puedes acudir al sitio
www.sql-perfamance.com allí encontrarás, muchos artículos y herramientas
para analizar tu problema. Según leí hace un tiempo las fallas de
rendimiento se deben en un 60~70% a los aplicativos no optimizados y el
resto a servidores mal dimensionados y/o instalados. Hay también software
de terceros (pagos) que analizan el desempeño y detectan las fallas.
Suerte

Saludos.
Ing. José Antonio Depetris
Santa Fe - Argentina

Respuesta Responder a este mensaje
#13 qwalgrande
23/07/2005 - 08:10 | Informe spam
Hola.

Hola.

Sobre tu primera pregunta, un cluster, de MS Cluster Services, es un grupo
de servidores que te ofrecen disponibilidad, de tal forma que si la
aplicación se cae en el nodo (es uno de los nombres que se le da a cada uno
de los servidores en un cluster) en el que está, la aplicación se va a otro
nodo. Los fallos y la naturaleza de los mismos los puedes definir tú, pueden
ser fallos de comunicación, de disco, de la aplicación, puedes definir
reintentos antes de saltar a otro nodo,... Para ello, la aplicación ha de
estar preparada para el failover, como es el caso de SQL Server.

Comparado con una granja de servidores web en un cluster de Application
Center o simplemente que usen Network Load Balancing, se parecen como un
huevo a una castaña. Con MS Cluster Service la aplicación está en un nodo
cada vez y todas las peticiones van a ese nodo. El resto están a la espera
de que a ese nodo le pueda pasar algo (lo cual no significa que no puedan
tener otras aplicaciones funcionando, incluso que estas estén en cluster).
Con NLB, tienes un sistema que te permite que cada petición vaya a un
servidor diferente, balanceando la carga, lo cual te da disponibilidad
(bueno, entre comillas) y reparto de la carga. Si tu sistema de bases de
datos es de solo lectura (como son la mayor parte de las webs), podrías
tener varios servidores gestionados por NLB, cada petición iría a un
servidor de bases de datos distinto, pero como tendrían la misma información
todos, pues la respuesta de cada uno sería la misma. Sin embargo, no es lo
más común.

Sobre lo del experto en tunning, con todo el respeto a los profesionales del
gremio, mi punto de vista sobre el tema es que pedir más hardware significa
el reconocimiento de que no sabemos hacer mejor nuestro trabajo. Si el
experto recomendó únicamente más hardware... El aumento de máquina es el
último recurso, primero hay que tratar de mejorar lo que sea posible todo lo
demás, desde el diseño del desarrollo (que es donde se deben resolver los
problemas) al propio tunning. Si tienes procesos mal programados que se
comen todos los recursos que le pongas por delante, lo que hay que hacer es
arreglarlo. Y cuando ya no seamos capaces de mejorarlo más, si sigue yendo
mal, pues entonces más hardware.

Si tienes varios servidores, lo que puedes hacer es repartir la carga entre
ellos, lo cual no siempre es fácil. Pero la solución a tus problemas está en
detectar los procesos que están comiéndose los recursos, ver si tienes
problemas de memoria, de CPU, de disco o incluso de red, ver cuáles son las
consultas más pesadas o las que más impactan por su número de reiteraciones.
Que sea la ERP de Microsoft, y que garanticen el cumplimiento de las mejores
prácticas de SQL, no significa que no tengan posibilidad de mejora.

qwalgrande

"De lo que ves créete la mitad, de lo que no ves no te creas nada"
V. del V.


"Solomon" escribió en el mensaje
news:
Segun entiendo el cluster es un grupo de servidores que brindan un
servicio en comun permitiendo mayor disponibilidad, similar a un web farm
para servicios de internet.

No tengo claro si el cluster de MS SQL permite mayor desempeño o es para
tolerancia ante fallas.

Tenemos el ultimo servidor de DELL (32bits) dedicado al SQL junto con un
arreglo externo (en el cual distribuimos los datos y logs) pero se nos
esta quedando corto en rendimiento con una base no muy grande (creo) de
70GB. El ERP q usamos es de Microsoft y ellos garantizan que cumplen con
las mejores practicas de SQL. En dicho server usamos las versiones
Enterprise de W2K3 y de SQL 2000.

Antes de comprar este servidor contratamos un experto para hacernos un
tunning a la base de datos, gastamos tiempo y $, la decision fue meterle
fuerza "bruta" hardware y el problema se soluciono en ese entonces (4
meses atras) pero estamos volviendo a lo mismo.

Pensando que podriamos unir varios servidores para darle mayor performance
es q consulto sobre cluster. Sera esta una opcion viable? O mas bien cual
seria la mejor opcion para darle solucion al problema?

1000 GRS!

Respuesta Responder a este mensaje
#14 qwalgrande
23/07/2005 - 08:10 | Informe spam
Hola.

Hola.

Sobre tu primera pregunta, un cluster, de MS Cluster Services, es un grupo
de servidores que te ofrecen disponibilidad, de tal forma que si la
aplicación se cae en el nodo (es uno de los nombres que se le da a cada uno
de los servidores en un cluster) en el que está, la aplicación se va a otro
nodo. Los fallos y la naturaleza de los mismos los puedes definir tú, pueden
ser fallos de comunicación, de disco, de la aplicación, puedes definir
reintentos antes de saltar a otro nodo,... Para ello, la aplicación ha de
estar preparada para el failover, como es el caso de SQL Server.

Comparado con una granja de servidores web en un cluster de Application
Center o simplemente que usen Network Load Balancing, se parecen como un
huevo a una castaña. Con MS Cluster Service la aplicación está en un nodo
cada vez y todas las peticiones van a ese nodo. El resto están a la espera
de que a ese nodo le pueda pasar algo (lo cual no significa que no puedan
tener otras aplicaciones funcionando, incluso que estas estén en cluster).
Con NLB, tienes un sistema que te permite que cada petición vaya a un
servidor diferente, balanceando la carga, lo cual te da disponibilidad
(bueno, entre comillas) y reparto de la carga. Si tu sistema de bases de
datos es de solo lectura (como son la mayor parte de las webs), podrías
tener varios servidores gestionados por NLB, cada petición iría a un
servidor de bases de datos distinto, pero como tendrían la misma información
todos, pues la respuesta de cada uno sería la misma. Sin embargo, no es lo
más común.

Sobre lo del experto en tunning, con todo el respeto a los profesionales del
gremio, mi punto de vista sobre el tema es que pedir más hardware significa
el reconocimiento de que no sabemos hacer mejor nuestro trabajo. Si el
experto recomendó únicamente más hardware... El aumento de máquina es el
último recurso, primero hay que tratar de mejorar lo que sea posible todo lo
demás, desde el diseño del desarrollo (que es donde se deben resolver los
problemas) al propio tunning. Si tienes procesos mal programados que se
comen todos los recursos que le pongas por delante, lo que hay que hacer es
arreglarlo. Y cuando ya no seamos capaces de mejorarlo más, si sigue yendo
mal, pues entonces más hardware.

Si tienes varios servidores, lo que puedes hacer es repartir la carga entre
ellos, lo cual no siempre es fácil. Pero la solución a tus problemas está en
detectar los procesos que están comiéndose los recursos, ver si tienes
problemas de memoria, de CPU, de disco o incluso de red, ver cuáles son las
consultas más pesadas o las que más impactan por su número de reiteraciones.
Que sea la ERP de Microsoft, y que garanticen el cumplimiento de las mejores
prácticas de SQL, no significa que no tengan posibilidad de mejora.

qwalgrande

"De lo que ves créete la mitad, de lo que no ves no te creas nada"
V. del V.


"Solomon" escribió en el mensaje
news:
Segun entiendo el cluster es un grupo de servidores que brindan un
servicio en comun permitiendo mayor disponibilidad, similar a un web farm
para servicios de internet.

No tengo claro si el cluster de MS SQL permite mayor desempeño o es para
tolerancia ante fallas.

Tenemos el ultimo servidor de DELL (32bits) dedicado al SQL junto con un
arreglo externo (en el cual distribuimos los datos y logs) pero se nos
esta quedando corto en rendimiento con una base no muy grande (creo) de
70GB. El ERP q usamos es de Microsoft y ellos garantizan que cumplen con
las mejores practicas de SQL. En dicho server usamos las versiones
Enterprise de W2K3 y de SQL 2000.

Antes de comprar este servidor contratamos un experto para hacernos un
tunning a la base de datos, gastamos tiempo y $, la decision fue meterle
fuerza "bruta" hardware y el problema se soluciono en ese entonces (4
meses atras) pero estamos volviendo a lo mismo.

Pensando que podriamos unir varios servidores para darle mayor performance
es q consulto sobre cluster. Sera esta una opcion viable? O mas bien cual
seria la mejor opcion para darle solucion al problema?

1000 GRS!

Respuesta Responder a este mensaje
#15 qwalgrande
23/07/2005 - 08:10 | Informe spam
Hola.

Hola.

Sobre tu primera pregunta, un cluster, de MS Cluster Services, es un grupo
de servidores que te ofrecen disponibilidad, de tal forma que si la
aplicación se cae en el nodo (es uno de los nombres que se le da a cada uno
de los servidores en un cluster) en el que está, la aplicación se va a otro
nodo. Los fallos y la naturaleza de los mismos los puedes definir tú, pueden
ser fallos de comunicación, de disco, de la aplicación, puedes definir
reintentos antes de saltar a otro nodo,... Para ello, la aplicación ha de
estar preparada para el failover, como es el caso de SQL Server.

Comparado con una granja de servidores web en un cluster de Application
Center o simplemente que usen Network Load Balancing, se parecen como un
huevo a una castaña. Con MS Cluster Service la aplicación está en un nodo
cada vez y todas las peticiones van a ese nodo. El resto están a la espera
de que a ese nodo le pueda pasar algo (lo cual no significa que no puedan
tener otras aplicaciones funcionando, incluso que estas estén en cluster).
Con NLB, tienes un sistema que te permite que cada petición vaya a un
servidor diferente, balanceando la carga, lo cual te da disponibilidad
(bueno, entre comillas) y reparto de la carga. Si tu sistema de bases de
datos es de solo lectura (como son la mayor parte de las webs), podrías
tener varios servidores gestionados por NLB, cada petición iría a un
servidor de bases de datos distinto, pero como tendrían la misma información
todos, pues la respuesta de cada uno sería la misma. Sin embargo, no es lo
más común.

Sobre lo del experto en tunning, con todo el respeto a los profesionales del
gremio, mi punto de vista sobre el tema es que pedir más hardware significa
el reconocimiento de que no sabemos hacer mejor nuestro trabajo. Si el
experto recomendó únicamente más hardware... El aumento de máquina es el
último recurso, primero hay que tratar de mejorar lo que sea posible todo lo
demás, desde el diseño del desarrollo (que es donde se deben resolver los
problemas) al propio tunning. Si tienes procesos mal programados que se
comen todos los recursos que le pongas por delante, lo que hay que hacer es
arreglarlo. Y cuando ya no seamos capaces de mejorarlo más, si sigue yendo
mal, pues entonces más hardware.

Si tienes varios servidores, lo que puedes hacer es repartir la carga entre
ellos, lo cual no siempre es fácil. Pero la solución a tus problemas está en
detectar los procesos que están comiéndose los recursos, ver si tienes
problemas de memoria, de CPU, de disco o incluso de red, ver cuáles son las
consultas más pesadas o las que más impactan por su número de reiteraciones.
Que sea la ERP de Microsoft, y que garanticen el cumplimiento de las mejores
prácticas de SQL, no significa que no tengan posibilidad de mejora.

qwalgrande

"De lo que ves créete la mitad, de lo que no ves no te creas nada"
V. del V.


"Solomon" escribió en el mensaje
news:
Segun entiendo el cluster es un grupo de servidores que brindan un
servicio en comun permitiendo mayor disponibilidad, similar a un web farm
para servicios de internet.

No tengo claro si el cluster de MS SQL permite mayor desempeño o es para
tolerancia ante fallas.

Tenemos el ultimo servidor de DELL (32bits) dedicado al SQL junto con un
arreglo externo (en el cual distribuimos los datos y logs) pero se nos
esta quedando corto en rendimiento con una base no muy grande (creo) de
70GB. El ERP q usamos es de Microsoft y ellos garantizan que cumplen con
las mejores practicas de SQL. En dicho server usamos las versiones
Enterprise de W2K3 y de SQL 2000.

Antes de comprar este servidor contratamos un experto para hacernos un
tunning a la base de datos, gastamos tiempo y $, la decision fue meterle
fuerza "bruta" hardware y el problema se soluciono en ese entonces (4
meses atras) pero estamos volviendo a lo mismo.

Pensando que podriamos unir varios servidores para darle mayor performance
es q consulto sobre cluster. Sera esta una opcion viable? O mas bien cual
seria la mejor opcion para darle solucion al problema?

1000 GRS!

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida