User Tag List

Resultados 1 al 8 de 8

Tema: SQL Express Muuuy lenta

  1. #1

    SQL Express Muuuy lenta

    Hola gente, estoy ahora con un problema en una empresa. Ellos usan SQL Express 2019 y una base de datos de unos 10Gb. Mueven muchos artículos por días. Tiene una pagina web enganchada y 5 cajas facturando, dos maquinas de consulta y alguna mas en la vuelta haciendo algo de contabilidad.
    El tema es que dos por tres todo queda re lageado. Veo que el proceso de SQL queda al 100% por varios minutos. Tengo dos SSD de 1Tb en Raid 0. no recuerdo la placa madre que tiene pero si un Ryzen 3600 con 32Gb DDR4.
    Me quede corto en recursos? Se armo esta maquina cuando recién salio el 3600, en ese momento funciono bien pero todo empezó mal cuando se empezo a enganchar la web. El software no es mio ni soy del soporte pero trae una SDK que usa otra empresa para publicar los artículos a la web. No se bien por donde esta el problema. Averigüe por SQL posta y nos pasaron 22.000 dolares ya que al estar abierta al publico no se sabe los usuario que usan la base y te encajan esta. Diría que 0 chances de que gasten esa plata. aparte de que no se si viene por ahí el problema.
    Gracias!!
    Ryzen 5 5600X - 16Gb(2x8)@3200 - RTX 3070 - WD Black NVMe 512 - Samsung Odyssey G5 - 2x ACER G55T

  2. #2
    Sponsor Avatar de SEndero Luminoso
    Fecha de ingreso
    Apr 2014
    Ubicación
    Limbo
    Edad
    43
    Steam
    KiSUAN
    Mensajes
    9,194
    Y por lo que decís papi es un problema de la WEB-SDK pedorros y aunque trates de meter fuerza bruta seguramente siga pasando lo mismo...

    https://logicalread.com/troubleshoot...l-server-pd01/

    https://www.sqlshack.com/how-to-iden...in-sql-server/

  3. #3
    El neandertal Avatar de Master of the Wind
    Fecha de ingreso
    Jul 2013
    Edad
    33
    Steam
    Master of the Wind
    Origin
    MasterOfTheWind1
    Xfire
    masterofthewind1
    Mensajes
    10,747
    Cita Iniciado por kapi2454 Ver mensaje
    Hola gente, estoy ahora con un problema en una empresa. Ellos usan SQL Express 2019 y una base de datos de unos 10Gb. Mueven muchos artículos por días. Tiene una pagina web enganchada y 5 cajas facturando, dos maquinas de consulta y alguna mas en la vuelta haciendo algo de contabilidad.
    El tema es que dos por tres todo queda re lageado. Veo que el proceso de SQL queda al 100% por varios minutos. Tengo dos SSD de 1Tb en Raid 0. no recuerdo la placa madre que tiene pero si un Ryzen 3600 con 32Gb DDR4.
    Me quede corto en recursos? Se armo esta maquina cuando recién salio el 3600, en ese momento funciono bien pero todo empezó mal cuando se empezo a enganchar la web. El software no es mio ni soy del soporte pero trae una SDK que usa otra empresa para publicar los artículos a la web. No se bien por donde esta el problema. Averigüe por SQL posta y nos pasaron 22.000 dolares ya que al estar abierta al publico no se sabe los usuario que usan la base y te encajan esta. Diría que 0 chances de que gasten esa plata. aparte de que no se si viene por ahí el problema.
    Gracias!!
    Un par de cosas

    1) Por lo que describis tiene pinta que la base no es muy compleja, pero las tablas tienen muchos registros. Indexa las columnas mas accedidas.

    2) Pensa en implementar un redis, o un memcached para cachear ciertas queries. Tambien, si ves que tenes alguna tabla con muuuuchos registros que no sea compleja de estructura, considera usar algun NOSQL para esas tablas.

    3) Ahora, aca tenes el principal problema, y un par de cosas que te van a dar calidad de vida:

    - SQL Server Express es una version de desarrollo, NO DE PRODUCCION. Muchos settings no estan disponibles (por ejemplo, hay mucho ajustes de pools y buffers que te salvarian la vida y no los vas a poder configurar), los default son malisimos y tiene muchas cosas para debug activadas que te dejan expuesto a ataques. Y muchisimo mas importante, no usa mas de 1GB de RAM y 1 hilo de CPU.

    Para ese tipo de software, MySQL o PostgreSQL (que la odio) te da y te sobra, tendrias que dejar de usar el express, pero es un overkill tremendo pagar SQL server para esa aplicacion.

    Esta sobrado ese hardware (demasiado, con la quinta parte de eso deberia funcionar), pero basicamente estas manejando un ferrari que para avanzar lo haces en reversa.

    Yo hace tiempo deje de tratar con gente rata, ya de pique si usa hardware de PC para un servidor, y encima propone usar una version express para produccion, yo ni agarro esos laburos. Despues te comes dolores de cabeza como estos.

    - YA MISMO QUE SAQUEN ESE RAID 0!!! Estas jugando con fuego. Y fuego del picante. Parece ser una PC de escritorio, y no hay nada menos confiable que el Fake RAID que hacen las placas de escritorio. Salvo que tengas replicacion, o que estes muy seguro de la politica de backups, solo estas buscando problemas.


    Ahora, no me cerro eso de que "no se sabe que usuarios usan la base", eso esta definido en algun lado del codigo web de la aplicacion, y se puede ver en el sql server mismo.
    Última edición por Master of the Wind; 02-08-2020 a las 06:25 PM
    // Desktop: Core i5 13600KF - 32GB DDR4@3600 Mhz (16 GB DDR4 Thermaltake Thoughram + 16 GB DDR4 TForce VulcanZ) - Asus Prime Z690-P D4 - EVGA RTX 3090 FTW3 Ultra 24GB GDDR6X - SSD M.2 Kingston 2TB x2 - SSD M.2 Kingston 1TB - Thermaltake GF1 850W - Cooler Master Masterliquid 240 - Cooler Master H500 - Asus Strix Soar - Windows 11 x64
    // Gear:
    Razer Blackwidow V3 Mini 65% Hyperspeed - Razer Deathadder V2 Pro - Red Dragon Suzaku XL - Sony Dual Sense + Xbox Series Controller + 8BitDo USB Receiver 2 - Razer Kraken
    // Display: Gigabyte M32U 32" 4K@144hz
    // Retro: Core i3 6100 3.7Ghz - 8GB DDR4@2133 Mhz - 128 GB SSD - 1TB HDD - AMD Radeon R5 340X 2GB GDDR3 - 8 Bitdo SF30 Pro - Sony Wega Trinitron 36" CRT + VGA to Component transcoder - Batocera Linux
    // Work: Macbook Pro 15" 2019 - Core i9 2.3 Ghz - 16 GB DDR4 - 512 GB SSD - Intel UHD Graphcis 630/AMD Radeon Pro 560X 4GB GDDR5
    // Server ITX: Antec ISK 300 - Gigabyte GA AB350N Gaming WIFI - AMD Ryzen 3 3200g - 32GB RAM DDR4 - 1TB NVME SSD
    // Console peasant: New Nintendo 3DS XL 128GB MicroSD - Xbox 360 Slim 120GB - Nintendo Wii 512GB MicroSD - Nintendo Switch 256GB MicroSD + RCMLoader
    // Console no peasant: Steam Deck - 256GB SSD - 1TB MicroSD

  4. #4
    Recién ahora me estoy poniendo al día con este tema. Gracias Sendero por los link, le estuve pegando una revisada.
    Master-of-the-Wind: Gracias por los piques y ayuda.
    Tengo el tema de que yo no puedo administrar la base de datos ya que lo hace la gente del software. Quienes me parece que no lo están haciendo bien. De hecho te aseguraría que esa parte hasta la compraron hecha y no tiene idea de como funciona.
    Me parece que voy a pasar la base a un M.2 que ya me presupuesto Sendero por que de mi lado y con el accesso que tengo no puedo hacer mucho mas. Voy a dejar ese disco exclusivo solo para la base y en el raid dejar las tablas temporales (Tengo que pedir a los del Software que lo hagan). Actualmente se hace un respaldo a diario de todo el sistema (Acronis 2020 original). Probé pasarlo a otra maquina y levanto bien, lo hice hace tiempo para ver si tenía sentido hacerlo y ver si funcionaba.
    Como la gente del software no me da bola y se vive atascando las cosas, no me quedo otra que hacer que funcione a fuerza bruta. Pero bueno evidentemente esto tiene un limite y esta lejos de lo ideal.
    En la pagina de Microsoft vi que tiene una version Developer y la express. Aclaran que la Express es para pequeños desarrollos
    https://www.microsoft.com/es-es/sql-...rver-downloads de todas formas estoy viendo de tramitar el tema de la compra de una base posta pero.....: el miedo que tengo es que lo que este fallando sea el software en si. entonces: hago gastar al cliente un re torta de guita y luego de todo sigue funcionando mal, por eso quería estar seguro de este tema.

    Según el flaco de Microsoft me vende la licencia por terminal que use la base (CAL) pero en este caso puede haber 3 personas navegando o 10 o 200. entonces se supone es una versión sin limites de CAL, por eso el precio. Ahora me paso un pique un amigo y es el siguiente. La gente de la pagina web no es la misma que la del software de facturación. La gente de la pagina web puede clonar/sincronizar la base SQL con otra base MySQL, Maria,Mongo (lo que quieran) una vez al día o varias. Entonces los clientes por web se conectan a la base de la pagina y no al software del servidor, por lo que los CAL no serían infinitos.

    Ahora navegando en eBay a lo rata también, encontré estas licencias. Que diferencia hay con las que me piden 22.000 lucas verdes?

    https://www.ebay.com/itm/SQL-Server-....c100752.m1982

    Son los clientes que me tocaron y la cosa esta complicada, viene cerrando locales y tengo que acompañarlos en lo que pueda y cuidando la economía. No es que en Uruguay sobre clientes que tengan miles de dolares para gastar en equipos.
    Master-of-the-Wind te dedicas a optimizar bases de datos? por que Podría hablar con la gente del Software y pedirles permiso para que te dejen revisar algunas cosas y con una segunda opinión me van a dar mas bola.
    Ryzen 5 5600X - 16Gb(2x8)@3200 - RTX 3070 - WD Black NVMe 512 - Samsung Odyssey G5 - 2x ACER G55T

  5. #5
    El neandertal Avatar de Master of the Wind
    Fecha de ingreso
    Jul 2013
    Edad
    33
    Steam
    Master of the Wind
    Origin
    MasterOfTheWind1
    Xfire
    masterofthewind1
    Mensajes
    10,747
    No tenes un tema de hardware. No vas a ganar nada con el M2, ni con particionar las temporales en otro RAID. Los vas a hacer tirar plata con ese enfoque. Vos tenes un tema 100% software ahi, o software mal hecho, o base mal hecha, o el motor limitando, o todas a la vez posiblemente.

    De hecho, aca tenes una tablita que compara versiones: https://www.fmsinc.com/MicrosoftAcce...ess/index.html. Las bases de datos usan MUCHISIMA MEMORIA. Que el engine este topeado a 1GB no lo solucionas con fuerza de hardware. Es un embudo.

    Para que tengas una idea, la base de datos principal de mi laburo, que es del rubro loteria y casino online, hasta hace dos años era mas o menos esas prestaciones, 32gb de ram, RAID de SSD y unos cuantos cores, y estamos hablando de una DB que pasa el orden de miles de operaciones por segundo.


    El criterio de pequeños desarrollos es para bases embedded, o que no tienen mucha concurrencia, que justamente es lo opuesto a lo que describis.

    Ese enfoque que te pasaron esta bien, suponiendo que la gente que desarolle ande bien. Y la verdad, no es por ser sorete, pero no conozco ningun desarrollador bueno que se dedique a ese tipo de sistemas.

    Lo que te puedo decir, es que si la pagina se conecta a la DB, puede ser una licencia sola, independiente de cuantas personas esten navegando ya que el que se conecta a la DB es el servidor web. El requerimiento ahi seria que la autenticacion no este implementada a nivel de SQL Server sino que a nivel de aplicacion, pero de nuevo, depende que tan bien anden los desarrolladores.

    Si queres que me contacten, a ver que les puedo tirar.
    Última edición por Master of the Wind; 02-08-2020 a las 07:45 PM
    // Desktop: Core i5 13600KF - 32GB DDR4@3600 Mhz (16 GB DDR4 Thermaltake Thoughram + 16 GB DDR4 TForce VulcanZ) - Asus Prime Z690-P D4 - EVGA RTX 3090 FTW3 Ultra 24GB GDDR6X - SSD M.2 Kingston 2TB x2 - SSD M.2 Kingston 1TB - Thermaltake GF1 850W - Cooler Master Masterliquid 240 - Cooler Master H500 - Asus Strix Soar - Windows 11 x64
    // Gear:
    Razer Blackwidow V3 Mini 65% Hyperspeed - Razer Deathadder V2 Pro - Red Dragon Suzaku XL - Sony Dual Sense + Xbox Series Controller + 8BitDo USB Receiver 2 - Razer Kraken
    // Display: Gigabyte M32U 32" 4K@144hz
    // Retro: Core i3 6100 3.7Ghz - 8GB DDR4@2133 Mhz - 128 GB SSD - 1TB HDD - AMD Radeon R5 340X 2GB GDDR3 - 8 Bitdo SF30 Pro - Sony Wega Trinitron 36" CRT + VGA to Component transcoder - Batocera Linux
    // Work: Macbook Pro 15" 2019 - Core i9 2.3 Ghz - 16 GB DDR4 - 512 GB SSD - Intel UHD Graphcis 630/AMD Radeon Pro 560X 4GB GDDR5
    // Server ITX: Antec ISK 300 - Gigabyte GA AB350N Gaming WIFI - AMD Ryzen 3 3200g - 32GB RAM DDR4 - 1TB NVME SSD
    // Console peasant: New Nintendo 3DS XL 128GB MicroSD - Xbox 360 Slim 120GB - Nintendo Wii 512GB MicroSD - Nintendo Switch 256GB MicroSD + RCMLoader
    // Console no peasant: Steam Deck - 256GB SSD - 1TB MicroSD

  6. #6
    Moderador Global Avatar de Thalios
    Fecha de ingreso
    Aug 2013
    Ubicación
    Valencia, España
    Steam
    Baldonacho
    Origin
    Thalios_uy
    PSN
    Thalios_uy
    Mensajes
    6,039
    Cita Iniciado por Master of the Wind Ver mensaje

    Lo que te puedo decir, es que si la pagina se conecta a la DB, puede ser una licencia sola, independiente de cuantas personas esten navegando ya que el que se conecta a la DB es el servidor web. El requerimiento ahi seria que la autenticacion no este implementada a nivel de SQL Server sino que a nivel de aplicacion, pero de nuevo, depende que tan bien anden los desarrolladores.

    venia a decir esto...si trabajan en capas, el servidor web va al servidor de aplicaciones, y este a la base de datos, por lo que no deberían tener usuarios ilimitados
    No tengo

  7. #7
    @Master of the Wind te mande un privado pero tienes la casilla llena.
    Ryzen 5 5600X - 16Gb(2x8)@3200 - RTX 3070 - WD Black NVMe 512 - Samsung Odyssey G5 - 2x ACER G55T

  8. #8
    El neandertal Avatar de Master of the Wind
    Fecha de ingreso
    Jul 2013
    Edad
    33
    Steam
    Master of the Wind
    Origin
    MasterOfTheWind1
    Xfire
    masterofthewind1
    Mensajes
    10,747
    Listo el poio
    // Desktop: Core i5 13600KF - 32GB DDR4@3600 Mhz (16 GB DDR4 Thermaltake Thoughram + 16 GB DDR4 TForce VulcanZ) - Asus Prime Z690-P D4 - EVGA RTX 3090 FTW3 Ultra 24GB GDDR6X - SSD M.2 Kingston 2TB x2 - SSD M.2 Kingston 1TB - Thermaltake GF1 850W - Cooler Master Masterliquid 240 - Cooler Master H500 - Asus Strix Soar - Windows 11 x64
    // Gear:
    Razer Blackwidow V3 Mini 65% Hyperspeed - Razer Deathadder V2 Pro - Red Dragon Suzaku XL - Sony Dual Sense + Xbox Series Controller + 8BitDo USB Receiver 2 - Razer Kraken
    // Display: Gigabyte M32U 32" 4K@144hz
    // Retro: Core i3 6100 3.7Ghz - 8GB DDR4@2133 Mhz - 128 GB SSD - 1TB HDD - AMD Radeon R5 340X 2GB GDDR3 - 8 Bitdo SF30 Pro - Sony Wega Trinitron 36" CRT + VGA to Component transcoder - Batocera Linux
    // Work: Macbook Pro 15" 2019 - Core i9 2.3 Ghz - 16 GB DDR4 - 512 GB SSD - Intel UHD Graphcis 630/AMD Radeon Pro 560X 4GB GDDR5
    // Server ITX: Antec ISK 300 - Gigabyte GA AB350N Gaming WIFI - AMD Ryzen 3 3200g - 32GB RAM DDR4 - 1TB NVME SSD
    // Console peasant: New Nintendo 3DS XL 128GB MicroSD - Xbox 360 Slim 120GB - Nintendo Wii 512GB MicroSD - Nintendo Switch 256GB MicroSD + RCMLoader
    // Console no peasant: Steam Deck - 256GB SSD - 1TB MicroSD

Información de tema

Usuarios viendo este tema

Actualmente hay 1 usuarios viendo este tema. (0 miembros y 1 visitantes)

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •