Foros del Web » Programando para Internet » PHP »

Las consultas restan eficiencia a un web???

Estas en el tema de Las consultas restan eficiencia a un web??? en el foro de PHP en Foros del Web. He oído que la suma de muchas consultas en un web resta eficiencia debido a la cantidad de datos que se utilizan al mismo tiempo.¿Es ...
  #1 (permalink)  
Antiguo 03/06/2005, 13:57
 
Fecha de Ingreso: junio-2005
Mensajes: 10
Antigüedad: 12 años, 6 meses
Puntos: 0
Las consultas restan eficiencia a un web???

He oído que la suma de muchas consultas en un web resta eficiencia debido a la cantidad de datos que se utilizan al mismo tiempo.¿Es esto cierto?. Por ejemplo, yo quiero hacer una consulta de una tabla 'propiedad' para mostrar los registros de una propiedad y a continuación hago una consulta de la tabla 'propietarios' para mostrar los datos del propietario de cada una de las propiedades y por último, para ver las imágenes de la propiedad hago otra consulta a la tabla 'imagenes'. ¿Es esto contraproducente?¿Existe otra manera mas eficiente de hacer esto?¿Se puede eliminar una consulta de la memoria del servidor para ganar en eficiencia, como?

GRACIAS
  #2 (permalink)  
Antiguo 03/06/2005, 14:03
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 16 años, 4 meses
Puntos: 9
Pues ese tipo de consulta tarda microsegundos, salvo que si en la tablas de la base de datos, tengas anidadas imágenes como binario. Consume tanto que de plano chafea.
  #3 (permalink)  
Antiguo 03/06/2005, 14:33
 
Fecha de Ingreso: septiembre-2003
Ubicación: Santo Domingo - R. Dominicana
Mensajes: 606
Antigüedad: 14 años, 2 meses
Puntos: 0
Yo diria que una imágen BINARIA tarde 5 veces mas en abrir que una en el servidor.
  #4 (permalink)  
Antiguo 03/06/2005, 15:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
mm Bueno .. explicastes lo que haces .. pero no concretastes si lo haces en una sentencia SQL (que se puede hacer) o en várias anidadas ..

EL caso es que un buen uso de indices en tus tablas y de SQL adecuado podría mejorar el actual rendimiento de tus consultas a tu BD ..

Por ejemplo .. hacer cosas como
SELECT * FROM tabla

cuando sólo quieres "unos campos" de esa tabla (no todos) .. ya de por sí estás derochando recursos así .. Deberías hacer algo tipo:
SELECT campo1,campo2 FROM tabla
(de camposN de esta supuesta tabla)

En otros casos .. "contar" registros .. dependiendo el caso es más óptimo usar SQL tipo:
SELECT COUNT(*) FROM tabla ..

que no usar mysql_num_rows() para la misma taréa ..

Si entregas muchos resultados .. paginalos .. No entregues 10.000 registros que sabes que son "dificiles" de navegar para un usuario y son alto proceso para el servidor .. paginalos en los que el usuario los va a ver comodamente hasta llegar a lo que anda buscando (por supuesto si es un listado total de esa tabla . .ahí no nos salva el paginado).

Por lo demás .. claro que las consultas a las BD consumen recursos de todo tipo (memoria en función de los resultados obtenidos .. proceso .. etc...).

Puedes ver algunos tutoriales sobre optimización de indices (enfocado a Mysql) .. sobre normalización de tus BD, SQL en general y diseño de Base de datos en sitios como:
www.mysql-hispano.com

Un saludo,
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:12.