none
Que tal este servidor para Sql Server RRS feed

  • Question

  • Buenas, vengo a ver si me podéis ayudar con una duda con hardware.

    Que os parece este servidor  : Servidor de torre seguro PowerEdge T140 con iDRAC9 | Dell España

    Dell Poweredge t140 XEON E-2124, 16 GB,1TB, 500 SSD

    Instalaría Windows  Server 2019 + Sql Server Express 2019

    Básicamente el servidor se utilizaría para SQL SERVER sin controlador de dominio y atendería a 4 equipos clientes.

    Actualmente tengo montado el sql server 2008 en un i3-6100 con 4 Gb de Ram y en algunas consultas que hacen los equipos clientes desde la aplicación que utilizan (desarrollada en vb.net) se ralentiza demasiado, por ejemplo, abrir el formulario de pedidos que carga dos tablas , la primera con 26.722 registros y la segunda con 36.450 registros se demora unos 11 segundos.

    Pensais que el nuevo servidor merecerá la pena la inversión y notare una mejora considerable en la carga de los datos?

    Gracias!

    Wednesday, September 21, 2022 12:32 PM

All replies

  • Hola mayoko:

    Te lo cuento por partes. 

    Parte 1:

    El SQL Server Edición express es una edicion gratuita de la herramienta que viene limitada.

    LImites

    https://learn.microsoft.com/es-es/sql/sql-server/editions-and-components-of-sql-server-2019?view=sql-server-ver16

    Básicamente a 1 zócalo o 4 núcleos. 1 Gb de Ram y 10 Gbs de tamaño la bbdd.

    Por tanto aunque te pilles un maquinon de 800.000 cores y teras, no los va a usar.

    Parte 2:

    No tiene sentido cargar una tabla completa para un formulario, que no va a mostrar 26722 registros o 36450. Si está programado así, mal. O es que el navegador te presenta 26.000 registros....Solo te presenta 10, de x millones.

    Si por lo que sea te tienes que traer esos registros, que para el motor no deberían de ser nada, y dudo muchísimo que tarde en devolver 26000 registros esos tiempos, a lo mejor parte del problema esta en el canal de comunicación del servidor al equipo cliente.

    O en algún bucle que se realiza en el software para presentarlos.

    Haz una query directamente en el mismo servidor sql, y comprueba los tiempos de carga. sin pintar.

    Por ejemplo en la herramienta que tengas instalada (vease Management Studio u otra cualquiera), lee la tabla completa. Y verás como no tarda ni medio segundo. 

    Por otro lado si tuvieras una versión web o estandar al menos, si se notaría la diferencia de tiempos, porque evidentemente procesa con mucha más fuerza, pero no tanto como crees ya que a priori, salvo que tengas columnas complejas tipo xml, que esos tiempos se producen en el traslado y procesamiento en la aplicación de Vb.

    Wednesday, September 21, 2022 3:22 PM
  •  abrir el formulario de pedidos que carga dos tablas , la primera con 26.722 registros y la segunda con 36.450 registros se demora unos 11 segundos.

    Concuerdo con lo que te dice Javi. Esos tamaños de tabla que indicas son minúsculos para un servidor SQL. Incluso aunque solo sea una edición Express sobre un i3 y con 4 GB de RAM, leer esas dos tablas solo debería costar unas milésimas de segundo en el lado servidor.

    Así que antes de gastar mucho dinero en un servidor más grande, convendría revisar el programa cliente, que casi seguro es el culpable del retraso. Así como 30000 registros son poquísimos para el servidor de base de datos, en cambio son muchísimos para la mayor parte de las herramientas cliente, como por ejemplo un DataGridView. Incluso cargarlos en un DataTable es una operación lenta (por culpa del DataTable, no del servidor).

    La recomendación es rediseñar la parte cliente para que no cargue todos los registros, sino poner un filtro en pantalla y que solo cargue los que cumplan el filtro. O, si no hay más remedio que traerlos todos a un Grid, configurar el grid en "modo virtual" de forma que dispare un evento cada vez que hagas un scroll y en ese evento solo se traen desde el servidor los registros que son visibles en pantalla en ese momento. Esto es transparente para el usuario, que a simple vista recibe la impresión de que todos los registros están cargados, pero es mucho más rápido en ejecución porque solo un pequeño número se trae desde el servidor al equipo cliente.

    Friday, September 23, 2022 8:11 AM