Foros del Web » Programando para Internet » PHP »

Rendimiento en recursividad

Estas en el tema de Rendimiento en recursividad en el foro de PHP en Foros del Web. Saludos, Estoy optimizando una consulta a una base de datos que está tardando mucho, en realidad es una función recursiva que va formando una estructura ...
  #1 (permalink)  
Antiguo 24/03/2010, 08:31
Avatar de danico90  
Fecha de Ingreso: febrero-2009
Ubicación: San José, Costa Rica
Mensajes: 148
Antigüedad: 15 años, 2 meses
Puntos: 13
Pregunta Rendimiento en recursividad

Saludos,

Estoy optimizando una consulta a una base de datos que está tardando mucho, en realidad es una función recursiva que va formando una estructura de árbol, pero el problema es que hace como 1000 consultas, ¿hay alguna forma con MySQL de generar una consulta recursiva que me devuelva los datos ordenados como árbol?
o alguna otra forma.
  #2 (permalink)  
Antiguo 24/03/2010, 08:32
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Rendimiento en recursividad

claro que hay.. asi de tan solo no se puede ayudar mucho ya que no pusiste codigo..
pero la mejor manera es tomar todos los datos guardarlos en array y asi los trabajas sin interaccion con sql por cada vuelta

saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 24/03/2010, 08:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Rendimiento en recursividad

En ese caso lo mejor es guardar ya el arbol generado en una tabla temporal y de ahi consultarlo, y solo re-generarlo cuando cambies algún item del arbol.

Saludos.
  #4 (permalink)  
Antiguo 24/03/2010, 08:52
Avatar de danico90  
Fecha de Ingreso: febrero-2009
Ubicación: San José, Costa Rica
Mensajes: 148
Antigüedad: 15 años, 2 meses
Puntos: 13
Respuesta: Rendimiento en recursividad

Gracias a los dos por responder,

Creo que voy a implementar lo de la tabla con la estructura de árbol, creo que es lo que mejora más el rendimiento, usando arrays tendría que usar recursividad y con la tabla solo un ciclo.

Aunque cada vez que se genere la tabla cuando inserte algo nuevo va a tardar más del tiempo que se tarda ahora, ya que va a tener que hacer select y insert, mmmm... Creo que mejor uso los arrays...

Etiquetas: recursividad, rendimiento
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 11:23.