Ventajas en el uso
Ventajas en el uso
de MySQL
Ing. Juan Pablo Díaz Ezcurdia
Agenda
Agenda
l
i
d
• Acerca de MySql
M t
• Motores de almacenamiento
t
• DML
• ACID
• Casos de éxito
Casos de éxito
• Beneficios
Q & A
• Q & A
Acerca de MySql
Acerca de MySql
MySQL es un sistema de gestión de base de datos relacional multi
MySQL es un sistema de gestión de base de datos relacional, multi
hilo y multiusuario con más de seis millones de instalaciones. MySQL
AB — desde enero de 2008 una subsidiaria de Sun Microsystems —
desarrolla MySQL como software libre en un esquema de
desarrolla MySQL como software libre en un esquema de
licenciamiento dual.
Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible
con esta licencia, pero para aquellas empresas que quieran
incorporarlo en productos privativos deben comprar a la empresa una
li
licencia específica que les permita este uso. Está desarrollado en su
l
mayor parte en ANSI C.
E tá d
ll d
it
t
i
ífi
Motores de almacenamiento
Motores de almacenamiento
MySql cuenta con distintos motores de almacenamiento independientes
MySql cuenta con distintos motores de almacenamiento independientes,
cada motor esta diseñado para distintos tipos de trabajos.
Motores de almacenamiento
Motores de almacenamiento
M ISAM
MyISAM
Es la tecnología de almacenamiento de datos usada por defecto por el sistema
Es la tecnología de almacenamiento de datos usada por defecto por el sistema
administrador de bases de datos relacionales MySQL.
Este tipo de tablas están basadas en el formato ISAM.
C d t bl d ti
Cada tabla de tipo MyISAM almacena la información en tres archivos por tabla,
t bl
ió
uno para el formato de tabla, otro para los datos y un tercer archivo para los
índices.
Los archivos tienen el nombre de la tabla y una extensión que indica el tipo de
archivo
M ISAM l
l i f
t
hi
.frm almacena la definición de la tabla
.MYD (MyData) contiene los registros de la tabla
.MYI (MyIndex) contiene los índices de la tabla
Motores de almacenamiento
Motores de almacenamiento
Está basado en el probado ISAM, incorporando nuevas características pero
conservando su fiabilidad.
Las tablas MyISAM soportan un número de filas máximo de aproximadamente
~4.295E+09 y puede tener hasta 64 archivos índices por tabla.
Los campos Text y Blob pueden ser indexados completamente, lo que es de gran
importancia para funciones de búsqueda.
p
p
q
Motores de almacenamiento
Motores de almacenamiento
InnoDB
InnoDB
InnoDB es una tecnología de almacenamiento de datos de fuente abierta para la
b
base de datos MySQL, incluido como formato de tabla estándar en todas las
t d t bl
distribuciones de MySQL a partir de las versiones 4.0.
M SQL i
t d l
tá d
d d t
id
f
l
Su característica principal es que soporta transacciones de tipo ACID y bloqueo
de registros e integridad referencial. InnoDB ofrece una fiabilidad y consistencia
muy superior a MyISAM, si bien el mejor rendimiento de uno u otro formato
muy superior a MyISAM, si bien el mejor rendimiento de uno u otro formato
dependerá de la aplicación específica.
bl
DB
i
I
l t bl d
InnoDB provee bloqueo a nivel final, en contra del bloqueo a nivel tabla de
MyISAM. Esto es, que mientras una consulta está actualizando o insertando una
fila, otra consulta puede actualizar una fila diferente al mismo tiempo. Estas
características incrementan el desempeño en concurrencia de múltiples usuarios
características incrementan el desempeño en concurrencia de múltiples usuarios.
d l bl
i
l fi
t
l
Motores de almacenamiento
Motores de almacenamiento
InnoDB es relativamente nuevo comparado con MyISAM. Una de las principales
diferencias de InnoDB es el soporte de transacciones e integridad referencial.
Otra de las principales características es que permite definir Foreign Key
Constraints, lo que permite a los desarrolladores asegurarse que los datos
insertados con referencia a otra tabla permanecerán válidos (lo que se conoce
insertados con referencia a otra tabla permanecerán válidos (lo que se conoce
como integridad referencial)
En octubre de 2005, Oracle Corp. adquirió a la finlandesa Innobase, compañía que
desarrolla InnoDB.
DMLDML
Un Lenguaje de Manipulación de Datos (Data Manipulation Language
(DML) es un lenguaje proporcionado por el sistema de gestión de base de
d t
d
datos que permite a los usuarios de la misma llevar a cabo las tareas de
consulta o manipulación de los datos, organizados por el modelo de datos
adecuado.
b l
d l
it l
t
i
ll
i
El lenguaje de manipulación de datos más popular hoy día es SQL, usado
para recuperar y manipular datos en una base de datos relacional.
p
p
p
y
Otros ejemplos de DML son los usados por bases de datos IMS/DL1,
CODASYL u otras
CODASYL u otras.
ACIDACID
En bases de datos se denomina ACID a un conjunto de características necesarias para
que una serie de instrucciones puedan ser consideradas como una transacción. Así pues,
q
,
si un sistema de gestión de bases de datos es ACID compliant quiere decir que el mismo
cuenta con las funcionalidades necesarias para que sus transacciones tengan las
características ACID.
p
p
ACID es un acrónimo de Atomicity, Consistency, Isolation and Durability: Atomicidad,
Consistencia, Aislamiento y Durabilidad en español.
p
q
Atomicidad: es la propiedad que asegura que la operación se ha realizado o no, y por lo tanto ante
un fallo del sistema no puede quedar a medias.
Consistencia: es la propiedad que asegura que sólo se empieza aquello que se puede acabar. Por
lo tanto se ejecutan aquellas operaciones que no van a romper la reglas y directrices de integridad
de la base de datos.
Aislamiento: es la propiedad que asegura que una operación no puede afectar a otras. Esto
asegura que la realización de dos transacciones sobre la misma información nunca generará ningún
tipo de error.
Durabilidad: es la propiedad que asegura que una vez realizada la operación ésta persistirá y no se
Durabilidad: es la propiedad que asegura que una vez realizada la operación, ésta persistirá y no se
podrá deshacer aunque falle el sistema.
Cumpliendo estas 4 condiciones se considera ACID Compilant
Casos de éxito
Casos de éxito
MySQL es muy utilizado en
i
A li
W b
Aplicaciones Web
CRM’s
Administradores de contenidos
Administradores de contenidos
Plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python)
Y por herramientas de seguimiento de errores como Bugzilla, entre
Y por herramientas de seguimiento de errores como Bugzilla, entre
algunos de sus usos mas comunes.
Su popularidad como aplicación Web está muy ligada a PHP, que a
menudo aparece en combinación con MySQL.
Beneficios
Beneficios
• Reducción de tiempos de ejecución
• Almacenamiento
• Consumo de ancho de banda
• Costo de licencias
Gracias
Gracias
¿Preguntas?
¿Preguntas?
Juan Pablo Díaz Ezcurdia
Juan Pablo Díaz Ezcurdia
[email protected]
Comentarios de: Ventajas en el uso de MySQL (0)
No hay comentarios