Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MySQL
1. Introducción a MySQL
¿Qué es MySQL?
Lenguaje
El lenguaje de programación que utiliza MySQL es Structured Query Language (SQL) que fue
desarrollado por IBM en 1981 y desde entonces es utilizado de forma generalizada en las bases de
datos relacionales.
Historia
MySQL fue desarrollado originalmente por la empresa sueca MySQL AB fundada por David
Axmark, Allan Larsson y Michael "Monty" Widenius en 1995. La primera versión (3.11.1) fue
liberada en 1996.
En 2008, Sun Microsystems adquirió MySQL AB. Dos años después, en 2010, Oracle Corporation
compró Sun convirtiéndose en el nuevo propietario de MySQL.
Desde entonces, Oracle continúa desarrollando la rama principal MySQL Enterprise, mientras que
los desarrolladores originales mantienen una bifurcación de código abierto llamada MariaDB.
2. Características y Capacidades
MySQL cuenta con una gran variedad de características avanzadas que lo hacen adecuado para
entornos de alta demanda:
ANGIE ALEJANDRA FUQUEN MONTAÑEZ
Además de aplicaciones web, MySQL se utiliza ampliamente en otros casos de uso como:
3. Ventajas
Código Abierto y Licencia GPL: MySQL es de código abierto, lo que permite a cualquiera
usar y modificar el software. Se distribuye bajo la licencia pública general GNU (GNU
General Public License, GPL), una licencia de código abierto muy popular que promueve la
libertad de los usuarios para ejecutar, estudiar, compartir y modificar el software. La
licencia GPL permite la libre distribución y modificación del código fuente de MySQL,
siempre y cuando cualquier trabajo derivado mantenga esas mismas libertades y se
distribuya también bajo los términos de la GPL. Esto asegura que el código fuente
modificado permanezca abierto y accesible.
Rapidez
Fiabilidad
Facilidad de uso
Debido a su trabajo conjunto con la comunidad open source a nivel mundial, MySQL
Server se desarrolló originalmente para manejar grandes bases de datos, siendo usado con
éxito en entornos de producción de alto rendimiento durante varios años.
Proporciona el MySQL Server como biblioteca incrustada y entornos cliente/servidores
incrustados.
Trabaja con programas y bibliotecas cliente que tienen herramientas administrativas de la
interfaz de programación para aplicaciones (APIs).
ANGIE ALEJANDRA FUQUEN MONTAÑEZ
MySQL dispone de una gran cantidad de software de contribuciones, por lo que se pueden
usar herramientas disponibles en modo consola.
Posee un buen control de acceso de usuarios y seguridad en los datos.
Integración perfecta con el lenguaje PHP (preprocesador de hipertexto).
4. Desventajas
5. Motores de Almacenamiento
Motor
InnoDB
MyISAM
PostgreSQL
1. Introducción a PostgreSQL
¿Qué es PostgreSQL?
Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por
una empresa y/o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan
de forma desinteresada, altruista, libre y/o apoyada por organizaciones comerciales. Dicha
comunidad es denominada el PGDG (PostgreSQL Grupo de evolución global).
Lenguaje
Al igual que MySQL, PostgreSQL utiliza el lenguaje Structured Query Language (SQL) para
interactuar con la base de datos.
PostgreSQL es altamente compatible con el estándar SQL y también incluye muchas extensiones
modernas al lenguaje, como:
Historia
PostgreSQL ha tenido una larga evolución, la cual se inicia en 1982 con el proyecto Ingres en la
Universidad de Berkeley. Este proyecto, liderado por Michael Stonebraker, fue uno de los
primeros intentos en implementar un motor de base de datos relacional. En 1985, Michael decidió
volver a la Universidad, para trabajar en un nuevo proyecto sobre la experiencia de Ingres, dicho
proyecto fue llamado post-ingres o simplemente POSTGRES.
El proyecto post-ingres pretendía resolver los problemas con el modelo de base de datos
relacional que habían sido aclarados a comienzos de los años 1980. En Postgres la base de datos
«comprendía» las relaciones y podía obtener información de tablas relacionadas utilizando reglas.
Postgres usó muchas ideas de Ingres pero no su código.
ANGIE ALEJANDRA FUQUEN MONTAÑEZ
2. Características y Capacidades
PostgreSQL es una opción robusta y confiable para aplicaciones que requieren cumplir con
estándares, practicas recomendadas y un rico conjunto de características integradas.
3. Ventajas
4. Desventajas
Consumo de Recursos: Postgres puede consumir más memoria y CPU que otras bases de
datos relacionales.
Curva de Aprendizaje: Postgres es más complejo que otros sistemas, por lo que puede ser
más difícil de aprender y administrar.
ANGIE ALEJANDRA FUQUEN MONTAÑEZ
5. Motores de Almacenamiento
1. Archivos de datos:
2. Páginas:
Dentro de los archivos de datos, los datos se organizan en páginas de tamaño fijo
(comúnmente 8KB).
Cada página contiene elementos como filas, metadatos, encabezados, etc.
5. Vacuum y Autovacuum:
Debido al uso de MVCC, las filas antiguas permanecen en los archivos de datos
hasta ser eliminadas.
El proceso vaccum se encarga de reutilizar el espacio ocupado por las versiones
antiguas de las filas.
Autovacuum ejecuta vacuum automáticamente en tablas activas.
Este diseño basado en MVCC, combinado con el registro WAL, permite que PostgreSQL maneje
eficientemente las cargas de trabajo concurrentes mientras mantiene la integridad de los datos y
facilita la recuperación en caso de fallos.
ANGIE ALEJANDRA FUQUEN MONTAÑEZ
Oracle Database
Costo de Licencias: Las licencias de Oracle Database son caras, especialmente para
implementaciones de producción empresarial.
Complejidad de Gestión: Debido a su gran cantidad de funciones, Oracle puede ser
complejo de configurar y administrar.
Consumo de Recursos: Oracle Database suele requerir más recursos de CPU, RAM
y almacenamiento que algunas alternativas.
ANGIE ALEJANDRA FUQUEN MONTAÑEZ
5. Motores de Almacenamiento
Oracle Database utiliza una arquitectura de motores de almacenamiento flexibles y
optimizados para diferentes casos de uso. Los principales motores de almacenamiento
son:
Bibliografía
Autor: Ernesto Robles
Bibliografía
Autor: Gabriel Bravo
Bibliografía
Autor: Oscar Torres