Newsgrupos.com  

Retroceder   Newsgrupos.com > Forum > Newsgroup es.comp.lenguajes.* Foro > Newsgroup es.comp.lenguajes.php
Registrarse Preguntas Frecuentes Lista de Foreros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 30-11-2006, 01:21:16
fReDiNi
 
Mensajes: n/a
Predeterminado Rendimiento PHP/MYSQl

No sé si es exactamente el grupo adecuado para esta pregunta.Si no es
así
pido disculpas.
Ahí va la pregunta:
¿Desde el punto de vista del rendimiento de una aplicación php/mysql
qué es
mejor una una consulta gigantesca de un tirón o pequeñas consultas
una tras
otra?.

Os pongo el ejemplo práctico.
Tengo una aplicación en la que hay usuarios.
Los datos de los usuarios están repartidos en 5 tablas relacionadas
con
claves foráneas.
Para que os hagáis una idea.
Una tabla es la de datos de usuario: nombre, fecha nacimiento, email...
Otra tabla es ciudades que está relacionada con clave foránea con la
tabla
usuarios
Otra fotos
.....Y así sucesivamente

Por ejemplo para hacer un listado global de usuarios necesito acceder a
todas esas tablas.
All principio creí que lo mejor sería hacer una consulta gigantesca
(utilizando el limit para paginar) que leyera de las 5 tablas y me
devolviera todos los datos.
La consulta para que os hagáis una idea tenía 10 líneas.
Pero ahora me estoy dando cuenta de que quizás lo mejor sea hacer las
consultas una a una.
Ej: Primero hago la consulta de los datos básicos, y luego voy una a
una con
las tablas relacionadas utilizando el id.
Esta segunda forma, desde el punto de vista de la lógica de mi
aplicación
tal y como la tengo planteada me viene muchio mejor.
Además tiene la ventaja de que si falla alguna de las consultas
secundarias
lo demás si se mostraría mientras que de la otra manera si me falla
la
consulta principal, no se muestra NADA.
¿Es muy desastroso para el rendimiento esta segunda opción?.

GRACIAS.

Responder Con Cita
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Newsgrupos.com
Standard Sponsored Links

  #2 (permalink)  
Antiguo 30-11-2006, 03:26:48
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

Las bases de datos están especializadas en devolver datos y en
cruzarlos entre ellos. Es una de las tareas básicas de las bases de
datos, asÃ*** que están optimizadas en esos términos.

AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
ineficiente, en rendimiento de la base de datos será superior al de la
aplicación.

Espero que te haya aclarado tu duda.

El 29 Nov 2006 17:21:16 -0800 , "fReDiNi" <freduchi***gmail.com> escribió:

> No sé si es exactamente el grupo adecuado para esta pregunta.Si no es
> asÃ***
> pido disculpas.
> AhÃ*** va la pregunta:
> ¿Desde el punto de vista del rendimiento de una aplicación php/mysql
> qué es
> mejor una una consulta gigantesca de un tirón o pequeñas consultas
> una tras
> otra?.
>
> Os pongo el ejemplo práctico.
> Tengo una aplicación en la que hay usuarios.
> Los datos de los usuarios están repartidos en 5 tablas relacionadas
> con
> claves foráneas.
> Para que os hagáis una idea.
> Una tabla es la de datos de usuario: nombre, fecha nacimiento,
> email... Otra tabla es ciudades que está relacionada con clave
> foránea con la tabla
> usuarios
> Otra fotos
> ....Y asÃ*** sucesivamente
>
> Por ejemplo para hacer un listado global de usuarios necesito acceder
> a todas esas tablas.
> All principio creÃ*** que lo mejor serÃ***a hacer una consulta gigantesca
> (utilizando el limit para paginar) que leyera de las 5 tablas y me
> devolviera todos los datos.
> La consulta para que os hagáis una idea tenÃ***a 10 lÃ***neas.
> Pero ahora me estoy dando cuenta de que quizás lo mejor sea hacer las
> consultas una a una.
> Ej: Primero hago la consulta de los datos básicos, y luego voy una a
> una con
> las tablas relacionadas utilizando el id.
> Esta segunda forma, desde el punto de vista de la lógica de mi
> aplicación
> tal y como la tengo planteada me viene muchio mejor.
> Además tiene la ventaja de que si falla alguna de las consultas
> secundarias
> lo demás si se mostrarÃ***a mientras que de la otra manera si me falla
> la
> consulta principal, no se muestra NADA.
> ¿Es muy desastroso para el rendimiento esta segunda opción?.
>
> GRACIAS.
>

Responder Con Cita
  #3 (permalink)  
Antiguo 30-11-2006, 03:26:48
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

Las bases de datos están especializadas en devolver datos y en
cruzarlos entre ellos. Es una de las tareas básicas de las bases de
datos, asÃ*** que están optimizadas en esos términos.

AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
ineficiente, en rendimiento de la base de datos será superior al de la
aplicación.

Espero que te haya aclarado tu duda.

El 29 Nov 2006 17:21:16 -0800 , "fReDiNi" <freduchi***gmail.com> escribió:

> No sé si es exactamente el grupo adecuado para esta pregunta.Si no es
> asÃ***
> pido disculpas.
> AhÃ*** va la pregunta:
> ¿Desde el punto de vista del rendimiento de una aplicación php/mysql
> qué es
> mejor una una consulta gigantesca de un tirón o pequeñas consultas
> una tras
> otra?.
>
> Os pongo el ejemplo práctico.
> Tengo una aplicación en la que hay usuarios.
> Los datos de los usuarios están repartidos en 5 tablas relacionadas
> con
> claves foráneas.
> Para que os hagáis una idea.
> Una tabla es la de datos de usuario: nombre, fecha nacimiento,
> email... Otra tabla es ciudades que está relacionada con clave
> foránea con la tabla
> usuarios
> Otra fotos
> ....Y asÃ*** sucesivamente
>
> Por ejemplo para hacer un listado global de usuarios necesito acceder
> a todas esas tablas.
> All principio creÃ*** que lo mejor serÃ***a hacer una consulta gigantesca
> (utilizando el limit para paginar) que leyera de las 5 tablas y me
> devolviera todos los datos.
> La consulta para que os hagáis una idea tenÃ***a 10 lÃ***neas.
> Pero ahora me estoy dando cuenta de que quizás lo mejor sea hacer las
> consultas una a una.
> Ej: Primero hago la consulta de los datos básicos, y luego voy una a
> una con
> las tablas relacionadas utilizando el id.
> Esta segunda forma, desde el punto de vista de la lógica de mi
> aplicación
> tal y como la tengo planteada me viene muchio mejor.
> Además tiene la ventaja de que si falla alguna de las consultas
> secundarias
> lo demás si se mostrarÃ***a mientras que de la otra manera si me falla
> la
> consulta principal, no se muestra NADA.
> ¿Es muy desastroso para el rendimiento esta segunda opción?.
>
> GRACIAS.
>

Responder Con Cita
  #4 (permalink)  
Antiguo 30-11-2006, 03:26:48
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

Las bases de datos están especializadas en devolver datos y en
cruzarlos entre ellos. Es una de las tareas básicas de las bases de
datos, asÃ*** que están optimizadas en esos términos.

AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
ineficiente, en rendimiento de la base de datos será superior al de la
aplicación.

Espero que te haya aclarado tu duda.

El 29 Nov 2006 17:21:16 -0800 , "fReDiNi" <freduchi***gmail.com> escribió:

> No sé si es exactamente el grupo adecuado para esta pregunta.Si no es
> asÃ***
> pido disculpas.
> AhÃ*** va la pregunta:
> ¿Desde el punto de vista del rendimiento de una aplicación php/mysql
> qué es
> mejor una una consulta gigantesca de un tirón o pequeñas consultas
> una tras
> otra?.
>
> Os pongo el ejemplo práctico.
> Tengo una aplicación en la que hay usuarios.
> Los datos de los usuarios están repartidos en 5 tablas relacionadas
> con
> claves foráneas.
> Para que os hagáis una idea.
> Una tabla es la de datos de usuario: nombre, fecha nacimiento,
> email... Otra tabla es ciudades que está relacionada con clave
> foránea con la tabla
> usuarios
> Otra fotos
> ....Y asÃ*** sucesivamente
>
> Por ejemplo para hacer un listado global de usuarios necesito acceder
> a todas esas tablas.
> All principio creÃ*** que lo mejor serÃ***a hacer una consulta gigantesca
> (utilizando el limit para paginar) que leyera de las 5 tablas y me
> devolviera todos los datos.
> La consulta para que os hagáis una idea tenÃ***a 10 lÃ***neas.
> Pero ahora me estoy dando cuenta de que quizás lo mejor sea hacer las
> consultas una a una.
> Ej: Primero hago la consulta de los datos básicos, y luego voy una a
> una con
> las tablas relacionadas utilizando el id.
> Esta segunda forma, desde el punto de vista de la lógica de mi
> aplicación
> tal y como la tengo planteada me viene muchio mejor.
> Además tiene la ventaja de que si falla alguna de las consultas
> secundarias
> lo demás si se mostrarÃ***a mientras que de la otra manera si me falla
> la
> consulta principal, no se muestra NADA.
> ¿Es muy desastroso para el rendimiento esta segunda opción?.
>
> GRACIAS.
>

Responder Con Cita
  #5 (permalink)  
Antiguo 30-11-2006, 03:26:48
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

Las bases de datos están especializadas en devolver datos y en
cruzarlos entre ellos. Es una de las tareas básicas de las bases de
datos, asÃ*** que están optimizadas en esos términos.

AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
ineficiente, en rendimiento de la base de datos será superior al de la
aplicación.

Espero que te haya aclarado tu duda.

El 29 Nov 2006 17:21:16 -0800 , "fReDiNi" <freduchi***gmail.com> escribió:

> No sé si es exactamente el grupo adecuado para esta pregunta.Si no es
> asÃ***
> pido disculpas.
> AhÃ*** va la pregunta:
> ¿Desde el punto de vista del rendimiento de una aplicación php/mysql
> qué es
> mejor una una consulta gigantesca de un tirón o pequeñas consultas
> una tras
> otra?.
>
> Os pongo el ejemplo práctico.
> Tengo una aplicación en la que hay usuarios.
> Los datos de los usuarios están repartidos en 5 tablas relacionadas
> con
> claves foráneas.
> Para que os hagáis una idea.
> Una tabla es la de datos de usuario: nombre, fecha nacimiento,
> email... Otra tabla es ciudades que está relacionada con clave
> foránea con la tabla
> usuarios
> Otra fotos
> ....Y asÃ*** sucesivamente
>
> Por ejemplo para hacer un listado global de usuarios necesito acceder
> a todas esas tablas.
> All principio creÃ*** que lo mejor serÃ***a hacer una consulta gigantesca
> (utilizando el limit para paginar) que leyera de las 5 tablas y me
> devolviera todos los datos.
> La consulta para que os hagáis una idea tenÃ***a 10 lÃ***neas.
> Pero ahora me estoy dando cuenta de que quizás lo mejor sea hacer las
> consultas una a una.
> Ej: Primero hago la consulta de los datos básicos, y luego voy una a
> una con
> las tablas relacionadas utilizando el id.
> Esta segunda forma, desde el punto de vista de la lógica de mi
> aplicación
> tal y como la tengo planteada me viene muchio mejor.
> Además tiene la ventaja de que si falla alguna de las consultas
> secundarias
> lo demás si se mostrarÃ***a mientras que de la otra manera si me falla
> la
> consulta principal, no se muestra NADA.
> ¿Es muy desastroso para el rendimiento esta segunda opción?.
>
> GRACIAS.
>

Responder Con Cita
  #6 (permalink)  
Antiguo 30-11-2006, 03:26:48
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

Las bases de datos están especializadas en devolver datos y en
cruzarlos entre ellos. Es una de las tareas básicas de las bases de
datos, asÃ*** que están optimizadas en esos términos.

AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
ineficiente, en rendimiento de la base de datos será superior al de la
aplicación.

Espero que te haya aclarado tu duda.

El 29 Nov 2006 17:21:16 -0800 , "fReDiNi" <freduchi***gmail.com> escribió:

> No sé si es exactamente el grupo adecuado para esta pregunta.Si no es
> asÃ***
> pido disculpas.
> AhÃ*** va la pregunta:
> ¿Desde el punto de vista del rendimiento de una aplicación php/mysql
> qué es
> mejor una una consulta gigantesca de un tirón o pequeñas consultas
> una tras
> otra?.
>
> Os pongo el ejemplo práctico.
> Tengo una aplicación en la que hay usuarios.
> Los datos de los usuarios están repartidos en 5 tablas relacionadas
> con
> claves foráneas.
> Para que os hagáis una idea.
> Una tabla es la de datos de usuario: nombre, fecha nacimiento,
> email... Otra tabla es ciudades que está relacionada con clave
> foránea con la tabla
> usuarios
> Otra fotos
> ....Y asÃ*** sucesivamente
>
> Por ejemplo para hacer un listado global de usuarios necesito acceder
> a todas esas tablas.
> All principio creÃ*** que lo mejor serÃ***a hacer una consulta gigantesca
> (utilizando el limit para paginar) que leyera de las 5 tablas y me
> devolviera todos los datos.
> La consulta para que os hagáis una idea tenÃ***a 10 lÃ***neas.
> Pero ahora me estoy dando cuenta de que quizás lo mejor sea hacer las
> consultas una a una.
> Ej: Primero hago la consulta de los datos básicos, y luego voy una a
> una con
> las tablas relacionadas utilizando el id.
> Esta segunda forma, desde el punto de vista de la lógica de mi
> aplicación
> tal y como la tengo planteada me viene muchio mejor.
> Además tiene la ventaja de que si falla alguna de las consultas
> secundarias
> lo demás si se mostrarÃ***a mientras que de la otra manera si me falla
> la
> consulta principal, no se muestra NADA.
> ¿Es muy desastroso para el rendimiento esta segunda opción?.
>
> GRACIAS.
>

Responder Con Cita
  #7 (permalink)  
Antiguo 30-11-2006, 03:26:48
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

Las bases de datos están especializadas en devolver datos y en
cruzarlos entre ellos. Es una de las tareas básicas de las bases de
datos, asÃ*** que están optimizadas en esos términos.

AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
ineficiente, en rendimiento de la base de datos será superior al de la
aplicación.

Espero que te haya aclarado tu duda.

El 29 Nov 2006 17:21:16 -0800 , "fReDiNi" <freduchi***gmail.com> escribió:

> No sé si es exactamente el grupo adecuado para esta pregunta.Si no es
> asÃ***
> pido disculpas.
> AhÃ*** va la pregunta:
> ¿Desde el punto de vista del rendimiento de una aplicación php/mysql
> qué es
> mejor una una consulta gigantesca de un tirón o pequeñas consultas
> una tras
> otra?.
>
> Os pongo el ejemplo práctico.
> Tengo una aplicación en la que hay usuarios.
> Los datos de los usuarios están repartidos en 5 tablas relacionadas
> con
> claves foráneas.
> Para que os hagáis una idea.
> Una tabla es la de datos de usuario: nombre, fecha nacimiento,
> email... Otra tabla es ciudades que está relacionada con clave
> foránea con la tabla
> usuarios
> Otra fotos
> ....Y asÃ*** sucesivamente
>
> Por ejemplo para hacer un listado global de usuarios necesito acceder
> a todas esas tablas.
> All principio creÃ*** que lo mejor serÃ***a hacer una consulta gigantesca
> (utilizando el limit para paginar) que leyera de las 5 tablas y me
> devolviera todos los datos.
> La consulta para que os hagáis una idea tenÃ***a 10 lÃ***neas.
> Pero ahora me estoy dando cuenta de que quizás lo mejor sea hacer las
> consultas una a una.
> Ej: Primero hago la consulta de los datos básicos, y luego voy una a
> una con
> las tablas relacionadas utilizando el id.
> Esta segunda forma, desde el punto de vista de la lógica de mi
> aplicación
> tal y como la tengo planteada me viene muchio mejor.
> Además tiene la ventaja de que si falla alguna de las consultas
> secundarias
> lo demás si se mostrarÃ***a mientras que de la otra manera si me falla
> la
> consulta principal, no se muestra NADA.
> ¿Es muy desastroso para el rendimiento esta segunda opción?.
>
> GRACIAS.
>

Responder Con Cita
  #8 (permalink)  
Antiguo 30-11-2006, 03:38:10
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

El Thu, 30 Nov 2006 04:26:48 +0100 , Juan José del RÃ***o
<juanjose***simpleoption.com> escribió:

> Las bases de datos están especializadas en devolver datos y en
> cruzarlos entre ellos. Es una de las tareas básicas de las bases de
> datos, asÃ*** que están optimizadas en esos términos.
>
> AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
> ineficiente, en rendimiento de la base de datos será superior al de la
> aplicación.
>
> Espero que te haya aclarado tu duda.
>


Aún asÃ***, estoy hablando estrictamente en términos de rendimiento. En
caso de que no tengas problemas de rendimiento actualmente, pues te
recomiendo la opción que haga que tu aplicación sea más mantenible y
legible.

Es más, también puedes optar por una solución mixta. De forma que en
vez de hacer una petición gigante, puedas hacer varias peticiones más
pequeñas.

En el caso de que la lista de usuarios sea algo que necesites a menudo,
pues entonces no has diseñado correctamente la base de datos. También
puede ser que necesites rediseñar la base de datos para que se adapte
mejor a lo que pretendes, pero eso es una locura si la aplicación ya
está en uso, o en una fase de desarrollo avanzada.

Recuerda siempre que el primer objetivo es la legibilidad del código,
que es lo que más resulta rentable a largo plazo, a la hora del
mantenimiento y la ampliación del software.

Parafraseando a una importante figura en el campo de la informática:
"El software está hecho para ser leÃ***do y comprendido, y en algunos
casos ejecutado."

Saludos,
Juan José
Responder Con Cita
 
  #9 (permalink)  
Antiguo 30-11-2006, 03:38:10
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

El Thu, 30 Nov 2006 04:26:48 +0100 , Juan José del RÃ***o
<juanjose***simpleoption.com> escribió:

> Las bases de datos están especializadas en devolver datos y en
> cruzarlos entre ellos. Es una de las tareas básicas de las bases de
> datos, asÃ*** que están optimizadas en esos términos.
>
> AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
> ineficiente, en rendimiento de la base de datos será superior al de la
> aplicación.
>
> Espero que te haya aclarado tu duda.
>


Aún asÃ***, estoy hablando estrictamente en términos de rendimiento. En
caso de que no tengas problemas de rendimiento actualmente, pues te
recomiendo la opción que haga que tu aplicación sea más mantenible y
legible.

Es más, también puedes optar por una solución mixta. De forma que en
vez de hacer una petición gigante, puedas hacer varias peticiones más
pequeñas.

En el caso de que la lista de usuarios sea algo que necesites a menudo,
pues entonces no has diseñado correctamente la base de datos. También
puede ser que necesites rediseñar la base de datos para que se adapte
mejor a lo que pretendes, pero eso es una locura si la aplicación ya
está en uso, o en una fase de desarrollo avanzada.

Recuerda siempre que el primer objetivo es la legibilidad del código,
que es lo que más resulta rentable a largo plazo, a la hora del
mantenimiento y la ampliación del software.

Parafraseando a una importante figura en el campo de la informática:
"El software está hecho para ser leÃ***do y comprendido, y en algunos
casos ejecutado."

Saludos,
Juan José
Responder Con Cita
  #10 (permalink)  
Antiguo 30-11-2006, 03:38:10
Juan José del Río
 
Mensajes: n/a
Predeterminado Re: Rendimiento PHP/MYSQl

El Thu, 30 Nov 2006 04:26:48 +0100 , Juan José del RÃ***o
<juanjose***simpleoption.com> escribió:

> Las bases de datos están especializadas en devolver datos y en
> cruzarlos entre ellos. Es una de las tareas básicas de las bases de
> datos, asÃ*** que están optimizadas en esos términos.
>
> AsÃ*** que, a no ser que hagas una consulta a la base de datos totalmente
> ineficiente, en rendimiento de la base de datos será superior al de la
> aplicación.
>
> Espero que te haya aclarado tu duda.
>


Aún asÃ***, estoy hablando estrictamente en términos de rendimiento. En
caso de que no tengas problemas de rendimiento actualmente, pues te
recomiendo la opción que haga que tu aplicación sea más mantenible y
legible.

Es más, también puedes optar por una solución mixta. De forma que en
vez de hacer una petición gigante, puedas hacer varias peticiones más
pequeñas.

En el caso de que la lista de usuarios sea algo que necesites a menudo,
pues entonces no has diseñado correctamente la base de datos. También
puede ser que necesites rediseñar la base de datos para que se adapte
mejor a lo que pretendes, pero eso es una locura si la aplicación ya
está en uso, o en una fase de desarrollo avanzada.

Recuerda siempre que el primer objetivo es la legibilidad del código,
que es lo que más resulta rentable a largo plazo, a la hora del
mantenimiento y la ampliación del software.

Parafraseando a una importante figura en el campo de la informática:
"El software está hecho para ser leÃ***do y comprendido, y en algunos
casos ejecutado."

Saludos,
Juan José
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último mensaje
Rendimiento SWT... Daniel S.M. Newsgroup es.comp.lenguajes.java 0 14-11-2007 11:11:08
Rendimiento Donald P. Newsgroup microsoft.public.es.isaserver 3 08-06-2007 16:50:01
Rendimiento de varias BD en MySQL Gothic Armor Newsgroup es.comp.bd.misc 0 21-05-2006 10:29:47
Rendimiento Aurelio Newsgroup microsoft.public.es.dotnet.ado 12 07-03-2006 17:26:55
Problema de rendimiento Mysql Tonibilly Newsgroup es.comp.bd.misc 25 30-10-2005 19:01:32





Powered by: vBulletin, Versión 3.6.8
Derechos de Autor ©2000 - 2008, Jelsoft Enterprises Ltd.

LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc.