Función PHP vs Petición SQL

  • Autor Autor Daniel Díaz
  • Fecha de inicio Fecha de inicio
Daniel Díaz

Daniel Díaz

Épsilon
Verificación en dos pasos activada
Hola compañeros tengo una duda con la que me gustaría me ayudaran.
Tengo un script con php y MySQL, este almacena en la base de datos varias tablas, entre ellas la fecha en números de este tipo "2016-07-26" y en otra columna la fecha en texto de este tipo "Martes 26 de Julio de 2016" el frontend muestra la fecha de ambas formas consultandolas desde la db, pero he realizado una función en php que toma la fecha de número y la convierte en texto evitando la consulta de la fecha en texto desde la db, mi duda es de cara al rendimiento del servidor que es mejor hacer, consultar la fecha en texto de la base de datos o hacerlo mediante php lo cual eliminaría una consulta a la base de datos.
Por otro lado, es una base de datos grande unos 10mil registros y creo que si elimino la columna de la fecha en texto disminuye el tamaño de la base de datos.
Que me recomiendan hacer todo de cara al rendimiento de la web.
Gracias de antemano.
 
Desde el principio se me hace de más ese campo de fecha de texto, ya que con funcione de manejo de fechas como date/Datetime puedes convertir la fecha a tu antojo.

Saludos.
 
Hola [MENTION=8317]lombervid[/MENTION] gracias por responder, si entiendo tu punto de vista pero mi duda es de cara al rendimiento ya que no tengo mucho conocimiento en optimización, es mejor de cara al rendimiento ejecutar una función php o hacer una consulta a una base de datos? Esa es básicamente mi duda.
 
Eso se podría considerar un campo calculado y es una aberración introducir un campo calculado en la base de datos por lo tanto supongo que cuanto menos consultas mas optimo es, mas cuando es una operación tan sencilla. Seria diferente si para obtener ese campo tuvieras que realizar multitud de cálculos.
 
Hola,

Debes tener en cuenta que si haces una consulta y luego un proceso sobre los datos consumes más ciclos de reloj que si haces sólo una consulta; te devuelva los datos que te devuelva. En mi opinión siempre que tengas espacio de almacenamiento suficiente, es más eficiente una consulta de datos que procesar los datos aunque reduzcas el tamaño de la DB. Te recomiendo una consulta bien optimizada para el motor MySQL en este caso. No obstante no debes perder de vista el número de visitas concurrentes a tu web, pues muchas consultas a la vez podrían convertirse en un cuello de botella. Sería recomendable un software de monitorización, si no cuentas ya con ello, y sacar una media de visitas para calcular la carga. Éso te permitiría saber qué cuellos de botella tiene el procesamiento de tu web.

Saludos.
 
Atrás
Arriba