Description
El ORM de Django es una herramienta muy potente que simplifica muchísimo el desarrollo de aplicaciones en Django, haciendo que casi no sea necesario escribir consultas SQL en las mismas. Sin embargo, debajo de esta compleja herramienta se siguen escondiendo conceptos de bases de datos que si no son entendidos y analizados al momento de escribir nuestro código pueden traernos grandes dolores de cabeza. En esta charla explicaremos brevemente estos conceptos, cómo aparecen al utilizar el ORM de Django y que optimizaciones nos provee el mismo para hacer que nuestras aplicaciones sean más performantes y consuman menos recursos
El objetivo de la charla es mostrar la importancia de conocer los conceptos básicos de bases de datos y cómo estos pueden ayudarnos a hacer aplicaciones más performantes y con menor consumo de recursos. La charla comienza con una breve exposición de los conceptos básicos de bases de datos: cómo se almacenan los datos, cómo se realizan búsquedas, qué son los índices y para qué se utilizan y cómo se establecen relaciones entre entidades. Luego se explicará qué es el ORM de Django, que nos permite hacer y cómo los conceptos anteriormente explicados aparecen al utilizar esta herramienta. Se mostrarán ejemplos de cómo realizar búsquedas, definir relaciones, crear índices, etc. A partir de los ejemplos definidos se enumerarán una serie de problemas de performance que nos podemos encontrar al utilizar el ORM, qué herramientas tenemos para detectar estos problemas y cómo podemos solucionarlos. Finalmente, se darán algunos consejos a partir de lecciones aprendidas al desarrollar y optimizar nuestras aplicaciones.