1. GRUPO 2:
- PONTE HERRERA FREDDY
- ESCOBAR HUERTA JEINER
- ROBLES ROJAS, JOSÉ LUIS
- LOAYZA LEON MOISES
2. SISTEMA GESTORES DE BASE DE DATOS (SGBD)
UN GESTOR DE BASE DE DATOS O SGBD ES UNA COLECCIÓN DE PROGRAMAS CUYO OBJETIVO ES SERVIR DE
INTERFAZ ENTRE LA BASE DE DATOS, EL USUARIO Y LAS APLICACIONES. SE COMPONE DE UN LENGUAJE DE
DEFINICIÓN DE DATOS, DE UN LENGUAJE DE MANIPULACIÓN DE DATOS Y DE UN LENGUAJE DE CONSULTA.
UN SGBD PERMITEN DEFINIR LOS DATOS A DISTINTOS NIVELES DE ABSTRACCIÓN Y MANIPULAR DICHOS DATOS,
GARANTIZANDO LA SEGURIDAD E INTEGRIDAD DE ESTOS.
ALGUNOS EJEMPLOS DE SGBD SON ORACLE, DB2, POSTGRESQL, MYSQL, MS SQL SERVER, ETC.
UN SGBD DEBE PERMITIR:
• DEFINIR UNA BASE DE DATOS: ESPECIFICAR TIPOS, ESTRUCTURAS Y RESTRICCIONES DE DATOS.
• CONSTRUIR LA BASE DE DATOS: GUARDAR LOS DATOS EN ALGÚN MEDIO CONTROLADO POR EL MISMO SGBD
• MANIPULAR LA BASE DE DATOS: REALIZAR CONSULTAS, ACTUALIZARLA, GENERAR INFORMES.
3. LAS CARACTERÍSTICAS DE UN SISTEMA GESTOR DE BASE DE DATOS SGBD
Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los
datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al
usuario. Así, se definen varios niveles de abstracción.
Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico)
de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella.
Redundancia mínima. Un buen diseño de una base de datos logrará evitar la aparición de información repetida
o redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante, en algunos casos la complejidad
de los cálculos hace necesaria la aparición de redundancias.
Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, será necesario vigilar que
aquella información que aparece repetida se actualice de forma coherente, es decir, que todos los datos
repetidos se actualicen de forma simultánea.
4. LAS CARACTERÍSTICAS DE UN SISTEMA GESTOR DE BASE DE DATOS SGBD
Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben garantizar
que esta información se encuentra seguridad frente a usuarios malintencionados, que intenten leer información privilegiada;
frente a ataques que deseen manipular o destruir la información; o simplemente ante las torpezas de algún usuario autorizado
pero despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a usuarios y grupos de usuarios, que
permiten otorgar diversas categorías de permisos.
Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos almacenados. Es decir, se
trata de proteger los datos ante fallos de hardware, datos introducidos por usuarios descuidados, o cualquier otra circunstancia
capaz de corromper la información almacenada.
Respaldo y recuperación. Los SGBD deben proporcionar una forma eficiente de realizar copias de respaldo de la información
almacenada en ellos, y de restaurar a partir de estas copias los datos que se hayan podido perder.
Control de la concurrencia. En la mayoría de los entornos (excepto quizás el doméstico), lo más habitual es que sean muchas
las personas que acceden a una base de datos, bien para recuperar información, bien para almacenarla. Y es también
frecuente que dichos accesos se realicen de forma simultánea. Así pues, un SGBD debe controlar este acceso concurrente a la
información, que podría derivar en inconsistencias.
5. LOS GESTORES DE BASES DE DATOS MÁS USADOS EN LA ACTUALIDAD.
En la actualidad, existen multitud de SGBD y pueden ser clasificados según la forma en que administran los datos
en:
Relacionales (SQL)
No relacionales (NoSQL)
Sistemas Gestores de bases de datos Relacionales (SQL)
Este modelo se basa fundamentalmente en establecer relaciones o vínculos entre los datos, imaginando una tabla
aparte por cada relación existente con sus propios registros y atributos.
Los principales Sistemas gestores de bases de datos relacionales (SGBD SQL) actualmente son:
Se ofrece bajo la GNU GPL aunque también es posible adquirir una
licencia para empresas que quieran incorporarlo en productos
privativos (Desde la compra por parte de Oracle se está orientando a
este ámbito empresarial).
6. VENTAJAS DESVENTAJAS
Facilidad de uso y gran rendimiento
Facilidad para instalar y configurar
Soporte multiplataforma
Soporte SSL
La principal desventaja es la
escalabilidad, es decir, no trabaja de
manera eficiente con bases de datos muy
grandes que superan un determinado
tamaño.
7. SISTEMAS GESTORES DE BASES DE DATOS RELACIONALES (SQL)
Este SGBD es una derivación de MySQL que cuenta con la mayoría de
características de este e incluye varias extensiones.
Nace a partir de la adquisición de MySQL por parte de Oracle para seguir la
filosofía Open Source y tiene la ventaja de que es totalmente compatible
con MySQL.
Entre las principales características de este Sistema Gestor de Bases de datos se encuentran:
Aumento de motores de almacenamiento
Gran escalabilidad
Seguridad y rapidez en transacciones
Extensiones y nuevas características relacionadas con su aplicación para Bases de datos NoSQL.
No tiene desventajas muy aparentes salvo algunas pequeñas incompatibilidades en la migración de MariaDB y
MySQL o pequeños atrasos en la liberación de versiones estables.
8. SISTEMAS GESTORES DE BASES DE DATOS RELACIONALES (SQL)
Más que un Sistema Gestor de bases de datos como tal, SQLite es una biblioteca escrita en C que
implementa un SGBD y que permite transacciones sin necesidad de un servidor ni configuraciones.
Es una biblioteca utilizada en multitud de aplicaciones actuales ya que es open source y las consultas
son muy eficientes.
Las principales características de SQLite son:
El tamaño, al tratarse de una biblioteca, es mucho menor que cualquier SGBD
Reúne los cuatro criterios ACID (Atomicidad, Consistencia, Aislamiento y Durabilidad) logrando gran
estabilidad
Gran portabilidad y rendimiento
La gran desventaja de SQLite es la escalabilidad ya que no soporta bases de datos que sean muy
grandes.
9. SISTEMAS GESTORES DE BASES DE DATOS RELACIONALES (SQL)
Es un sistema gestor de base de datos relacional está orientado a objetos y es libre, publicado bajo
la licencia BSD.
Sus principales características son:
Control de Concurrencias multiversión (MVCC)
Flexibilidad en cuanto a lenguajes de programación
Multiplataforma
Dispone de una herramienta (pgAdmin, https://www.pgadmin.org/) muy fácil e intuitiva para la
administración de las bases de datos.
Robustez, Eficiencia y Estabilidad.
La principal desventaja es la lentitud para la administración de bases de datos pequeñas ya que está
optimizado para gestionar grandes volúmenes de datos.
10. SISTEMAS GESTORES DE BASES DE DATOS RELACIONALES (SQL)
Es un sistema gestor de bases de datos relacionales basado en el lenguaje Transact-SQL, capaz de
poner a disposición de muchos usuarios grandes cantidades de datos de manera simultánea.
Es un sistema propietario de Microsoft.
Sus principales características son:
Soporte exclusivo por parte de Microsoft.
Escalabilidad, estabilidad y seguridad.
Posibilidad de cancelar consultas.
Potente entorno gráfico de administración que permite utilizar comandos DDL y DML.
Aunque es nativo para Windows puede utilizarse desde hace ya un tiempo en otras plataformas
como Linux o Docker.
Su principal desventaja es el precio. Cuenta con un plan gratuito (Express) pero lo normal es la
elección de alguno de los planes de pago disponibles (Standard, Developer, Enterprise o SQL Azure,
la versión de SQL Server en la nube).
11. SISTEMAS GESTORES DE BASES DE DATOS RELACIONALES (SQL)
Tradicionalmente, Oracle ha sido el SGBD por excelencia para el mundo empresarial, considerado
siempre como el más completo y robusto, destacando por:
Soporte de transacciones.
Estabilidad.
Escalabilidad.
Multiplataforma.
La principal desventaja, al igual que SQL Server, es el coste del software ya que, aunque cuenta con
una versión gratuita (Express Edition o XE), sus principales opciones son de pago.
12. SISTEMAS GESTORES DE BASES DE DATOS NO RELACIONALES
(NOSQL)
Estamos ante el Sistema Gestor de Bases de Datos no relacionales (SGBD NoSQL) más popular y
utilizado actualmente.
MongoDB es un SBGD NoSQL orientado a ficheros que almacena la información en estructuras
BSON con un esquema dinámico que permite su facilidad de integración.
Empresas como Google, Facebook, eBay, Cisco o Adobe utilizan MongoDB como Sistema Gestor
de Bases de datos.
Las principales características de MongoDB son:
Indexación y replicación
Balanceo de carga
Almacenamiento en ficheros
Consultas ad hoc
Escalabilidad horizontal
Open Source
Como desventaja principal, MongoDB no es un SGBD adecuado para realizar transacciones
complejas.
13. SISTEMAS GESTORES DE BASES DE DATOS NO RELACIONALES
(NOSQL)
Redis está basado en el almacenamiento clave-valor. Podríamos verlo como un vector enorme que
almacena todo tipo de datos, desde cadenas, hashses, listas, etc.
El principal uso de este SGBD es para el almacenamiento en memoria caché y la administración
de sesiones.
Las características principales son:
Atomicidad y persistencia
Gran velocidad
Simplicidad
Multiplataforma
14. SISTEMAS GESTORES DE BASES DE DATOS NO RELACIONALES
(NOSQL)
Al igual que Redis, Cassandra también utiliza almacenamiento clave-valor. Es un SGBD NoSQL
distribuido y masivamente escalable.
Facebook, Twitter, Instagram, Spotify o Netflix utilizan Cassandra.
Dispone de un lenguaje propio para las consultas denominado CQL (Cassandra Query Languaje).
Las principales características de este SGBD NoSQL son:
Multiplataforma
Propio lenguaje de consultas (CQL)
Escalado lineal y horizontal
Es un SGBD distribuido
Utiliza una arquitectura peer-to-peer
15. OTROS SISTEMAS GESTORES DE BASES DE DATOS NO
RELACIONALES (NOSQL)
Otros Sistemas Gestores de bases de datos no relacionales muy utilizados son:
Azure Cosmos DB
RavenDB
ObjectDB
Apache CouchDB
Neo4j
Google BigTable
Apache Hbase
Amazon DynamoDB
17. MYSQL
MySQL es un sistema de gestión de bases de datos relacionales de código abierto con un modelo cliente-
servidor. Es un software o servicio utilizado para crear y administrar bases de datos basadas en un modelo
relacional.
Aclarando algunos conceptos:
Base de datos: Una base de datos es una colección de datos estructurados.
Relacional: La palabra «relacional» significa que los datos almacenados en el conjunto de datos son
organizados en forma de tablas. Cada tabla se relaciona de alguna manera.
Código abierto: Código abierto significa que eres libre de usarlo y modificarlo. Cualquiera puede instalar el
software. También puedes aprender y personalizar el código fuente para que se adapte mejor a tus
necesidades.
Modelo cliente-servidor: Las computadoras que tienen instalado y ejecutan el software RDBMS se llaman
clientes. Siempre que necesitan acceder a los datos, se conectan al servidor RDBMS. Esa es la parte
«cliente-servidor».
MySQL es utilizado por sitios webs muy populares y de gran tamaño. Entre estos sitios destacados, podemos
nombrar algunos ejemplos como: Youtube, Wikipedia, Facebook, Google, Flickr y Twitter.
18. MYSQL - CARATERÍSTICAS
Arquitectura Cliente y Servidor: MySQL basa su funcionamiento en un modelo cliente y servidor. Es decir,
clientes y servidores se comunican entre sí de manera diferenciada para un mejor rendimiento.
Compatibilidad con SQL: SQL es un lenguaje generalizado dentro de la industria. Al ser un estándar
MySQL ofrece plena compatibilidad por lo que si has trabajado en otro motor de bases de datos no tendrás
problemas en migrar a MySQL.
Procedimientos almacenados. MySQL posee la característica de no procesar las tablas directamente sino
que a través de procedimientos almacenados es posible incrementar la eficacia de nuestra implementación.
Desencadenantes. MySQL permite además poder automatizar ciertas tareas dentro de nuestra base de
datos. En el momento que se produce un evento otro es lanzado para actualizar registros o optimizar su
funcionalidad.
Transacciones. Una transacción representa la actuación de diversas operaciones en la base de datos como
un dispositivo. El sistema de base de registros avala que todos los procedimientos se establezcan
correctamente o ninguna de ellas.
19. MYSQL - SENTENCIAS
MySQL comparte las sentencias del lenguaje SQL. Lo que en la práctica se traduce en una plena
compatibilidad. Se puede realizar la siguiente relación de sentencias básicas:
SELECT es usada para consultar datos.
DISTINCT Sirve para eliminar los duplicados de las consultas de datos.
WHERE Es usada incluir las condiciones de los datos que queremos consultar.
AND y OR es usada para incluir 2 o más condiciones a una consulta.
ORDER BY Es usada para ordenar los resultados de una consulta.
INSERT Es usada para insertar datos.
UPDATE Es usada actualizar o modificar datos ya existentes.
DELETE Es usada borrar datos.
INSERT INTO personas (nombre, apellido1, apellido2) VALUES (‘CARLOS’, ‘SALAZAR’, ‘ROMERO’)
20. MYSQL – VENTAJAS Y DESVENTAJAS
VENTAJAS:
MySQL es de uso libre y gratuito.
Bajo costo en requerimientos para la elaboración y ejecución del programa.
No se necesita disponer de Hardware o Software de alto rendimiento para la ejecución del programa.
Velocidad al realizar las operaciones y buen rendimiento.
Facilidad de instalación y configuración.
Soporte en casi el 100% de los sistemas operativos actuales.
Baja probabilidad de corrupción de datos.
Entorno con seguridad y encriptación.
DESVENTAJAS:
Al ser de Software Libre, muchas de las soluciones para las deficiencias del software no están
documentados ni presentan documentación oficial.
Muchas de sus utilidades tampoco presentan documentación.
Se debe controlar/monitorizar el rendimiento de las aplicaciones en búsca de fallos.
No es el más intuitivo de los programas que existen actualmente para todos los tipos de desarrollos.
No es tan eficaz en aplicaciones que requieran de una constante modificación de escritura en BD.