1. Universidad Autónoma de Yucatán
(UADY)
👉 BASE DE DATOS
Actividad 4: Screencast y Base de
Datos
Tutor: Manuel Herrera Góngora
Alumno: Sergio Armando Romero López
Grupo: G0UYIN_08
2. ¿QUÉ ES UNA BASE DE DATOS?
Es una colección de información organizada de forma
que un programa de ordenador pueda seleccionar
rápidamente los fragmentos de datos que necesite.
Una base de datos se puede definir como un
conjunto de información relacionada que se
encuentra agrupada o estructurada.
Una base de datos es un sistema de archivos
electrónico.
3. • Cada base de datos se compone de una o más tablas
que guarda un conjunto de datos.
Cada tabla tiene una o más columnas y filas. Las
columnas guardan una parte de la información sobre
cada elemento que queramos guardar en la tabla, cada
fila de la tabla conforma un registro.
4. Las bases de datos tradicionales se organizan por
campos, registros y archivos.
- Un campo es una pieza única de información;
- Un registro es un sistema completo de campos
- Un archivo es una colección de registros.
Por ejemplo, una guía de teléfono es análoga a un
archivo. Contiene una lista de registros, cada uno de
los cuales consiste en tres campos: nombre, dirección,
y número de teléfono.
A veces se utiliza DB, de database en inglés, para
referirse a las bases de datos.
5. Entre las principales características de los sistemas de
base de datos podemos mencionar:
• Independencia lógica y física de los datos.
• Redundancia mínima.
• Acceso concurrente por parte de múltiples usuarios.
• Integridad de los datos.
• Consultas complejas optimizadas.
• Seguridad de acceso y auditoría.
• Respaldo y recuperación.
• Acceso a través de lenguajes de
programación estándar.
6. • La sigla que se conoce como SQL corresponde a la
expresión inglesa Structured Query Languaje
(entendida en español como Lenguaje de Consulta
Estructurado), la cual identifica a un tipo de lenguaje
vinculado con la gestión de bases de datos de carácter
relacional que permite la especificación de distintas
clases de operaciones entre éstas.
• Gracias a la utilización del álgebra y de cálculos
relacionales, el SQL brinda la posibilidad de realizar
consultas con el objetivo de recuperar información de
las bases de datos de manera sencilla.
7. El SQL es un lenguaje declarativo de alto nivel ya que, al
manejar conjuntos de registros y no registros
individuales, ofrece una elevada productividad en la
codificación y en la orientación a objetos. Una
sentencia de SQL puede resultar equivalente a más de
un programa que emplee un lenguaje de bajo nivel.
8. SQL, por su parte, es un
lenguaje que permite
manipular datos (Data
Manipulation Languague
o DML) que contribuye a
la gestión de las bases de
datos a través de
consultas.
9. • La situación actual de los sistemas de bases de
datos.
Existen dos fuertes movimientos en el universo de las
bases de datos: uno es el movimiento “SQL” y otro el
movimiento “NoSQL”, ambos con sus pros y contras.
10. Las bases de datos NoSQL son
sistemas de almacenamiento de
información que no cumplen con
el esquema entidad–relación.
Tampoco utilizan una estructura
de datos en forma de tabla
donde se van almacenando los
datos sino que para el
almacenamiento hacen uso de
otros formatos como clave–valor,
mapeo de columnas o grafos (ver
epígrafe ‘Tipos de bases de datos
NoSQL’).
11. • A las bases de datos SQL también se les llama bases de
datos relacionales, son las que más se estudian en las
carreras universitarias relacionadas con computación e
informática, han servido mucho para hacer aplicaciones
transaccionales en las que mantener y proteger la
integridad de la información es vital.
• Por otro lado tenemos las “NoSQL” , acrónimo de
Not Only SQL, que aboga más por la evolución del
Internet; no es exactamente un tipo de base de
datos, sino un conjunto de tipos de bases de datos,
por ejemplo, con las bases de datos documentales
que son las más conocidas, se podría hacer
prácticamente todo lo que se hace actualmente con
una relacional.
12. Tipos de bases de datos NoSQL
Dependiendo de la forma en la que almacenen la información, nos podemos
encontrar varios tipos distintos de bases de datos NoSQL. Veamos los tipos
más utilizados.
1.- Bases de datos clave – valor
Son el modelo de base de datos NoSQL
más popular, además de ser la más
sencilla en cuanto a funcionalidad. En
este tipo de sistema, cada elemento
está identificado por una llave única, lo
que permite la recuperación de la
información de forma muy rápida,
información que habitualmente está
almacenada como un objeto binario
(BLOB). Se caracterizan por ser muy
eficientes tanto para las lecturas como
para las escrituras. Algunos ejemplos de
este tipo son Cassandra, BigTable o
HBase.
13. Ventajas de los sistemas NoSQL
Esta forma de almacenar la información ofrece ciertas ventajas sobre los
modelos relacionales. Entre las ventajas más significativas podemos destacar:
Se ejecutan en máquinas con pocos recursos: Estos sistemas, a diferencia
de los sistemas basados en SQL, no requieren de apenas computación, por
lo que se pueden montar en máquinas de un coste más reducido.
Escalabilidad horizontal: Para mejorar el rendimiento de estos sistemas
simplemente se consigue añadiendo más nodos, con la única operación de
indicar al sistema cuáles son los nodos que están disponibles.
Pueden manejar gran cantidad de datos: Esto es debido a que utiliza una
estructura distribuida, en muchos casos mediante tablas Hash.
No genera cuellos de botella: El principal problema de los sistemas SQL es
que necesitan transcribir cada sentencia para poder ser ejecutada, y cada
sentencia compleja requiere además de un nivel de ejecución aún más
complejo, lo que constituye un punto de entrada en común, que ante
muchas peticiones puede ralentizar el sistema.
14. 2.- Bases de datos documentales
Este tipo almacena la información como un
documento, generalmente utilizando para ello
una estructura simple como JSON o XML y
donde se utiliza una clave única para cada
registro. Este tipo de implementación permite,
además de realizar búsquedas por clave–valor,
realizar consultas más avanzadas sobre el
contenido del documento. Son las bases de
datos NoSQL más versátiles. Se pueden utilizar
en gran cantidad de proyectos, incluyendo
muchos que tradicionalmente funcionarían
sobre bases de datos relacionales. Algunos
ejemplos de este tipo son MongoDB o
CouchDB
15. 3.- Bases de datos en grafo
En este tipo de bases de datos, la
información se representa como nodos
de un grafo y sus relaciones con las
aristas del mismo, de manera que se
puede hacer uso de la teoría de grafos
para recorrerla. Para sacar el máximo
rendimiento a este tipo de bases de
datos, su estructura debe estar
totalmente normalizada, de forma que
cada tabla tenga una sola columna y cada
relación dos. Este tipo de bases de datos
ofrece una navegación más eficiente
entre relaciones que en un modelo
relacional. Algunos ejemplos de este tipo
son Neo4j, InfoGrid o Virtuoso.
16. SQL Server
• Es un Sistema Gestor de Base de Datos
Relacional este sistema se desarrollo para el
entorno empresarial de Microsoft que está
diseñado para el entorno empresarial. SQL
Server se ejecuta en T-SQL (Transact -SQL), un
conjunto de extensiones de programación de
Sybase y Microsoft que añaden varias
características a SQL estándar, incluyendo
control de transacciones, excepción y manejo
de errores, procesamiento fila, así como
variables declaradas
17. Características
• Posee una comprensión de datos que permite que los datos
se almacenen de una manera mas eficiente y reduzca los
requisitos de almacenamiento para sus datos.
• La comprensión de datos también ofrece mejoras
significativas en el rendimiento para grandes cargas de trabajo
18. Ventajas
• Es un sistema de gestión de base de datos.
• Es útil para manejar y obtener datos de la red de redes.
• Nos permite olvidarnos de los ficheros que forman la base de datos.
• Si trabajamos en una red social nos permite agregar otros
servidores de SQL Server. Por ejemplo dos personas que trabajan
con SQL Server, uno de ellos se puede conectar al servidor de su
otro compañero y así se puede ver las bases de datos del otro
compañero con SQL Server.
• SQL permite administrar permisos a todo. También permite
que alguien conecte su SQLO al nuestro pero sin embargo
podemos decirle que no puede ver esta base de datos pero otro si.
19. Oracle
• Oracle la Primera Base de Datos Diseñada para Grid
Computing, es un sistema de gestión de base de
datos relacional fabricado por Oracle Corporation.
Oracle es básicamente un herramienta
cliente/servidor para la gestión de base de datos la
gran potencia que tiene y su elevado precio hace que
solo se vea en empresas muy grandes y
multinacionales, por norma general.
20. Características
• En entorno cliente/servidor
• Gestión de grandes BD
• Usuarios concurrentes
• Alto redimiendo en transacciones
• Sistema de alta disponibilidad
• Gestión de la seguridad
• Compatibilidad
• Contestabilidad
21. Ventajas
• Es el SGBD mas usado a nivel mundial.
• Se puede ejecutar en todas las plataformas.
• Soporta todas las funciones que se esperan de un servidor.
• El software del servidor puede ejecutarse en multitud de
sistemas operativos
• Es la mas orientada hacia Internet.
22. Mongo DB
• MongoDB es un sistema de base de datos NoSQL
multiplataforma, orientado a documentos
desarrollado bajo la filosofía de software libre, los
datos son guardados en la base
datos en estructuras de datos similar a JSON de
JavaScript e incluso tiene la capacidad de realizar
consultas utilizando JavaScript por el cual también
existen apis para distintos lenguajes de
programación para realizar consultas e informes.
23. características
• Esta escrito en C++
• No soporta joins ni transacciones
• En versión de 32 bits la base de datos solo
alcanza 2 GB
24. Oracle NoSQL
• Oracle NoSQL Database proporciona un modelo de
transacción potente y flexible que simplifica enormemente
el proceso de desarrollo de una aplicación basada en
NoSQL.Se escala horizontalmente con alta disponibilidad y
equilibrio de carga transparente incluso cuando se agrega
dinámicamente nueva capacidad.
.
25. Características:
Aprovecha el motor de almacenamiento de alta disponibilidad de
Oracle Berkeley Java Edition.
• Implementa un mapa de teclas definidas por el usuario para los
elementos de datos opacos.
Provee replicación de base de datos y datos.
• Su topología rutea las operaciones de escritura y lectura al nodo de
almacenamiento mas adecuado para optimizar la distribución de
carga y rendimiento
26. Ventajas:
• Escalabilidad: Se pueden escalar con relativa facilidad ante
demandas puntuales de sobre carga de datos.
• Rendimiento: ara obtener un mejor rendimiento en el
procesamiento de los datos sólo es necesario añadir más
recursos en la plataforma hardware o priorizar cual son los
servicios críticos en cada momento.
• Estructura: Los desarrolladores de aplicaciones que
trabajan con bases de datos relacionales muchas veces
encuentran problemas con la cartografía de los datos y su
impedancia. En las bases de datos NoSQL, esto no es
generalmente un problema, ya que los datos no se
almacenan en la misma manera.
27. Cassandra
• Características:
Es distribuida, lo quiere decir que la información está
repartida a lo largo de los nodos del clúster
Escala linealmente, lo que quiere decir que el rendimiento
de forma lineal respecto al número de nodos que
añadamos.
Escala de forma horizontal, lo que quiere decir que
podemos escalar nuestro sistema.
Cassandra se define como una base de
datos NoSQL distribuida y masivamente
escalable, y esta es su mayor virtud desde
nuestro punto de vista, la capacidad
de escalar linealmente.
28. • Ventajas :
Además ofrece alta disponibilidad, de manera
que si alguno de los nodos se cae el servicio no
se degradará.
Da mucha predictibilidad a nuestros sistemas.
Se puede añadir nuevos nodos basados en
hardware commodity de bajo coste.