Bases de Datos: Importancia y Conceptos Clave
Bienvenidos a la séptima edición de la newsletter. En esta ocasión vamos a hablar sobre las bases de datos y su importancia crucial a la hora de desarrollar software. En la actualidad, existe una gran variedad de bases de datos que dan soporte a las aplicaciones que utilizamos a diario. Cada tipo de base de datos ofrece ventajas específicas sobre los demás. Por ello, mi experiencia y recomendación es que siempre elijamos en función de las necesidades del problema y de los conocimientos del equipo que se encuentra al frente del proyecto. Uno de los grandes debates en este ámbito es el uso de sistemas relacionales frente a los no relacionales. Dentro de estas dos vertientes, las opciones más comunes y utilizadas hoy en día son, sin duda, PostgreSQL y MongoDB. Obviamente existen muchas otras alternativas, pero, junto a MariaDB, estas son las herramientas con las que he trabajado personalmente. Si tuviera que destacar los conceptos más importantes que se deben dominar en este campo, serían los siguientes: el modelado y la normalización de datos, la indexación, las transacciones y propiedades ACID, la optimización y mejora de consultas, y el compromiso entre consistencia y escalabilidad. Para aprender y reforzar estos fundamentos, uno de los mejores recursos disponibles es el siguiente repositorio de GitHub: https://github.com/pingcap/awesome-database-learning Espero que os haya gustado la edición de esta semana. Aunque mi área favorita dentro de la programación es el Frontend, considero indispensable mantener una visión global de los sistemas y conocer los cimientos de lo que estamos construyendo. Esto es especialmente crítico en el contexto actual, donde nos enfrentamos a continuos ataques de cadena de suministro (supply chain) en muchos de los entornos de desarrollo.