Foros del Web » Programando para Internet » PHP »

Duda sobre que es mejor (recorrer array o un db query)

Estas en el tema de Duda sobre que es mejor (recorrer array o un db query) en el foro de PHP en Foros del Web. Que tal compañeros, tengo una duda, verán, estoy trabajando en un proyecto que requiere por si misma estar obteniendo registros de una DB constantemente por ...
  #1 (permalink)  
Antiguo 15/07/2010, 00:35
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 1 mes
Puntos: 406
Duda sobre que es mejor (recorrer array o un db query)

Que tal compañeros, tengo una duda, verán, estoy trabajando en un proyecto que requiere por si misma estar obteniendo registros de una DB constantemente por requerir información lo mas actualizada posible (se espera que cientos de usuarios trabajen a la vez los cuales agregaran o modificaran información) ahora, en ocasiones es necesario hacer varios cálculos matemáticos digamos avanzados que requieren verificar información de la DB para poder proseguir, hasta aquí todo bien, ahora, mi duda es, que es mas factible en rendimiento, hacer un par de consultas obteniendo toda la información necesaria y guardarlas en arreglos (array) y estar recorriendolos constantemente o solicitar la información a la DB cuando se requiere (disminuye el uso de arreglos pero aumentan considerablemente los accesos a DB)... Hay que aclarar que digamos en la primera opción (obtener de golpe la mayor parte de la información necesaria) crearía varios arreglos con aproximadamente (puede ser mas o menos según el caso) de unos 10 a 20 items, sin embargo hay que estar recorriendo los arreglos buscando los valores indicados para realizar la operación matemática, ya que no hay forma de saber con exactitud la posición del valor dentro del arreglo (esta se rige al ingresar la información a la tabla de la DB la cual tiene un ID único y auto incrementable)

Según yo mi logia dice que posiblemente sea mejor trabajar con arreglos, pero no eh trabajado tan exhaustivamente con ellos, así que me queda la duda al respecto...

Agradezco todo comentario al respecto

Actualización: me olvidaba, la DB es MySQL en su versión 5x y trabaja sobre MyISAM, PHP es versión 5x y se trabaja sobre POO con la ayuda de Zend Framework
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Última edición por Nemutagk; 15/07/2010 a las 00:41
  #2 (permalink)  
Antiguo 15/07/2010, 05:51
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Duda sobre que es mejor (recorrer array o un db query)

Es correcto. La mejor forma es ingresando los datos en arreglos, evitas estar conectándote y haciendo consultas demás, gastas menos recursos y tu código debe correr más rápido de esta forma.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 15/07/2010, 08:52
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 1 mes
Puntos: 406
Respuesta: Duda sobre que es mejor (recorrer array o un db query)

@abimaelrc muchas gracias por responder.... Ya decía yo que no estaba tan mal, pero no podía quedarme con la duda, al final de cuentas seguí trabajando con los arreglos y a pesar de la necesidad de estarlos recorriendo trabaja muy bien el código generado
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Etiquetas: query, recorrer, mejoras
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 17:55.