
05/03/2010, 07:40
|
 | Moderador criollo | | Fecha de Ingreso: noviembre-2007 Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 4 meses Puntos: 2658 | |
Respuesta: Como hacer un (sql o query) en mysql? A tu primera pregunta:
- Segmenta los INNER JOIN para contenerlos en tablas derivadas en el FROM por medio de subconsultas, que a su vez sean las que reduzcan los resultados intermedios de la mejor forma posible.
- Verifica el uso de índices de alta selectividad. Cuando un índice contiene todos los datos que MySQL necesita para devolver una consulta, no lee la tabla.
- Reduce el uso de "SELECT * ...". haz que MySQL recupere campos específicos para lo que necesitas. El "*" es la forma menos óptima de consulta.
Y en general:
- Modifica el tipo de campos, si es posible, para optimizar el almacenamiento y recuperación. Cuando tienes un dato que nunca será BIGINT, BLOB, LONGTEXT o DATETIME, por ejemplo, no tiene sentido usarlo. Mientras menor sea el registro devuelto, más rápida será la lectura de datos.
- Nunca te olvides que el hardware y los enlaces de red afectan muchísimo la perfomance de la base. De nada te servirá un Oracle 11g, si lo vas a usar con una PC de 256 Mb de ram... Con MySQL pasa algo parecido: Si usarás muchos recursos, es mejor que lo que uses resista. Por eso las PCs no son servidores de bases de datos... Hay máquinas específicas para eso.
... y muchísmo más.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |