Meter trazas en tus consultas SQL

En muchas ocasiones nos encontramos con que alguna query va lenta y tenemos que mirar el SHOW PROCESS LIST para localizar la query lenta, y luego buscarla en el código, algo que suele ser bastante pesado y a veces complicado.

Mi compañero David ha tenido hoy una brillante idea que nos va a facilitar a los dos la tarea de encontrar queries lentas en el código, para ello se trata de añadir un comentario en la query indicando la clase, el método y la línea:

select /* clase, metodo, linea */ campo from tabla

Sencillo pero muy efectivo

Cómo “tracear” consultas SQL

Consejos para optimizar tu base de datos

Interesantes consejos para optimizar nuestra base de datos en nuestras aplicaciones:

  • Aunque parezca mentira, no siempre es necesario una base de datos relacional. Existen alternativas como memcache, base de datos documentales o de clave-valor.
  • No uses la BD para almacenar contenidos: imágenes o documentos en BLOB.
  • Usa campos numéricos y autoincrementales para los índices primarios, para así tener un acceso rápido al registro, ya que inserts, updates y selects dependen mucho de este índice.
  • Analiza correctamente el uso de índices al igual que haces un análisis detallado de la estructura de la BD.
  • Realiza queries sencillas, en las que solo debes recuperar los campos que necesites y evitar el uso de LIKE y NOT IN

Una lectura interesante y más detallada.

Database Optimize patterns