Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

de que depende la velocidad de la consulta sql del motor o de la pc?

Estas en el tema de de que depende la velocidad de la consulta sql del motor o de la pc? en el foro de Mysql en Foros del Web. miren hice un insert into tabla(campo1,campo2) select tabla campo1,campo2 where campo3 is not null; suponiendo que son 5 millones de registros que cumplen esa condicion. ...
  #1 (permalink)  
Antiguo 31/07/2013, 23:31
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 1.971
Antigüedad: 5 años, 10 meses
Puntos: 50
de que depende la velocidad de la consulta sql del motor o de la pc?

miren hice un
insert into tabla(campo1,campo2) select tabla campo1,campo2 where campo3 is not null;


suponiendo que son 5 millones de registros que cumplen esa condicion.
logicamente esa consulta me introducira 6 millones de registros mas.

oks el caso es que cuando introduje 2.5 millones de registros duro como unos cuantos minutos la consulta no muchos. no recuerdo cuantos.
Y ahora que ya son 6 millones la consulta esta metiendo 6 millones de registros pero ya tiene rato en este momento, como unos 14 minutos, no se que tanto mas durara.

entonces de que depende?
mi pc tiene 4 gigas ram, 4mb cache, icore3

tiene buena capacidad y esta usando el 20% cpu y 70% de memoria ram mientras se ejecuta la consulta.
pienso que si le pongo mas memoria durara lo mismo ya que solo esta usando el 70% y el 20% del cpu, entonces que necesito para que lo haga rapido?

de antemano gracias;

lo que pasa es que quiero meter 3200 millones (asi como face) de usuarios para simular las consultas sql, con esa cantidad de usuarios
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra
  #2 (permalink)  
Antiguo 01/08/2013, 02:23
 
Fecha de Ingreso: marzo-2013
Ubicación: Jaén, Andalucía
Mensajes: 129
Antigüedad: 5 años, 2 meses
Puntos: 2
Respuesta: de que depende la velocidad de la consulta sql del motor o de la pc?

Buenas, no te tomes esto como un insulto ni nada de eso, pero me estás comparando un pc de sobremesa con los servidores de Facebook????? ..... supongo que cuando tienes un volumen de datos tan grande tarda más en hacer la consulta..... y de verdad, si te va ya así yo creo que la mejor opción es que mejores tu equipo (i7, 8 gb de ram ....) y si quieres llegar a un volumen de datos tan enorme, te recomendaría montar un servidor en condiciones ;)
  #3 (permalink)  
Antiguo 01/08/2013, 09:01
 
Fecha de Ingreso: julio-2013
Mensajes: 32
Antigüedad: 4 años, 10 meses
Puntos: 2
Respuesta: de que depende la velocidad de la consulta sql del motor o de la pc?

En lo personal depende de las dos cosas:

-Puede ser una consulta mal estructurada que se tarde mucho en ejecutar aunque el servidor sea de alto rendimiento.

-Puede ser que la consulta se encuentre bien pero el servidor no es el adecuado para que se ejecute correctamente.

Deberias designar un servidor apropiado a las necesidades de la aplicación.
  #4 (permalink)  
Antiguo 01/08/2013, 22:12
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 1.971
Antigüedad: 5 años, 10 meses
Puntos: 50
Respuesta: de que depende la velocidad de la consulta sql del motor o de la pc?

Cita:
Iniciado por kobety Ver Mensaje
Buenas, no te tomes esto como un insulto ni nada de eso, pero me estás comparando un pc de sobremesa con los servidores de Facebook????? ..... supongo que cuando tienes un volumen de datos tan grande tarda más en hacer la consulta..... y de verdad, si te va ya así yo creo que la mejor opción es que mejores tu equipo (i7, 8 gb de ram ....) y si quieres llegar a un volumen de datos tan enorme, te recomendaría montar un servidor en condiciones ;)
entonces me confirmas que si tiene que ver mucho la pc?
pero lo que no entiendo es que no esta usando todas sus capacidades.y si debe ser por el volumen de datos.
y claro el tipo de consulta ya que tiene muchas validaciones.
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra
  #5 (permalink)  
Antiguo 01/08/2013, 22:14
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 1.971
Antigüedad: 5 años, 10 meses
Puntos: 50
Respuesta: de que depende la velocidad de la consulta sql del motor o de la pc?

Cita:
Iniciado por bsanchez0323 Ver Mensaje
En lo personal depende de las dos cosas:

-Puede ser una consulta mal estructurada que se tarde mucho en ejecutar aunque el servidor sea de alto rendimiento.

-Puede ser que la consulta se encuentre bien pero el servidor no es el adecuado para que se ejecute correctamente.

Deberias designar un servidor apropiado a las necesidades de la aplicación.
no, no es una consulta mal estructurada, es una consulta muy grande por las validaciones que ocupa y es por eso que que tarda, sin embargo la pc no utiliza toda la capacidad. entonces imagino que el mysql es el que solamente agarra cierta memoria o bien el windows le asigna cierta cantidad de memoria limitada al mysql, o por que será?
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra
  #6 (permalink)  
Antiguo 02/08/2013, 05:35
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.282
Antigüedad: 10 años, 6 meses
Puntos: 2644
Respuesta: de que depende la velocidad de la consulta sql del motor o de la pc?

En realidad, no podemos afirmar si está bien o mal estructurada sin ver la consulta. Según tu experiencia y conocimientos, está bien, eso lo entiendo.
Pero mi experiencia analizando código creado por expertos en la base de datos donde actualmente trabajo me dice que hasta los profesionales experimentados y veteranos en este tema, meten la pata al crear las consultas.
Podría mencionarte decenas de casos en el sistema que estoy trabajando, que lleva ya más de una década de evolución, y ha tenido muchísimas mejoras, donde encuentro consultas terriblemente ineficientes en puntos críticos, donde no se esperaría semejante problema.
Por otro lado, la rapidez de una consulta no es algo que pueda estar referido a hardware o consulta únicamente. No se puede hacer ese tipo de planteos, porque carece de sentido: la performance de una consulta debe ser analizada contextualmente: hardware, software, server, DBMS, diseño de datos, uso, accesibilidad, concurrencia, impacto de otros sistemas, dependencias, entorno del negocio, etc., son todos elementos que deben ser considerados a la hora de definir qué tan buena es la consulta, y qué tan necesaria es la optimización.
Un caso (sin detalles): Una tabla que sólo tiene inserciones, se procesa masivamente una vez al año y en batch. ¿Vale la pena corregir la lectura para mejorar la performance? Depende.
Durante seis años no hizo falta porque tenía sólo algunos miles de inserciones al año. Pero hoy tiene decenas de miles al día, y procesarla llevaba luego cinco días de colgaduras. Con sólo cambiar dos campos de parámetro pasó a procesarse en doce minutos.
¿La consulta original era buena?
Si. Pero no cuando el negocio tuvo un cambio que hizo que el impacto en la tabla aumentara cien veces.
Lo que quiero que te quede claro es que una consulta puede estar bien estructurada, y aún así ser ineficiente si hay cambios de contexto, y son esas cosas las que debes prevenir.
Un cambio de hardware no implica necesariamente que la performance mejore mucho. Puede ser a la larga una inversión innecesaria.
Pero si el nivel de acceso y de transacciones se eleva, un cambio de hardware puede volverse necesario.

Como dije: no hay una regla, sino que cada caso debe ser analizado en su contexto y con sus propias características. Por eso muchas veces pedimos que pongan las estructuras y los datos. De lo contrario hay cosas que no se pueden analizar bien.

PD: Tuve ocasión de preguntarle a uno de los más veteranos en el proyecto porqué encontraba consultas tan ineficientes, y me dió dos respuestas: Primero, "cada maestro, con su librito", es decir, si lo aprendieron de una forma tienden a hacerlo de ese modo, aunque sea malo.
Por otro lado, como hubo demasiadas manos en el desarrollo, y decenas de desarrolladores interviniendo, es normal que no todos lo hagan de la misma forma y muchos no lo hagan bien.
Francamente, la primera no me satisfizo, pero era entendible.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 02/08/2013 a las 07:09

Etiquetas: campo, depende, insert, motor, registros, select, sql, tabla, velocidad
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:46.