Presentacion Proyecto Final #3
Presentacion Proyecto Final #3
Presentacion Proyecto Final #3
Investigación Módulos
Generales Sobre Bases de
Datos
EDISSON ESTUARDO PAYES ORTIZ
CARNET: 0901-20-22048
CURSO: BASE DE DATOS II
DOCENTE: LUCKY OLIVET
CONTENIDO A
DESARROLLAR
SISTEMAS DISTRIBUIDOS DE BASE DE DATOS ANÁLISIS MULTIDIMENSIONAL Y
1.Definiciones DATAWAREHOUSE
a. Almacenamiento distribuido de datos
1. Bases de datos OLAP, ROLAP y MOLAP
b. Transacciones distribuidas
i. Control de transacciones en la base de dato 2. El esquema estrella y el esquema snowfake
distribuida 3. Jerarquías y resúmenes.
c. Ventajas 4. Datawarehouse y Datamart
d. Desventajas a. Definición de Datawarehouse
2. Diseño de sistemas distribuidos b. Definición de Datamart
3. La distribución de los datos
5. Inteligencia del negocio (Bussiness
a. Centralizada
b. Distribuida Inteligence)
c. Replicación 6. Data mining
4. Esquema distribuido 7. Data Science
5. Componentes de un sistema gestor distribuido 8. Data Analisis
6. Los pasos a seguir para diseñar una base de datos
distribuida
7. Esquema de y distribución de datos
8. Tipos de fragmentación
CONTINUAIÓN DE
CONTENIDO A
DESARROLLAR
BASES DE DATOS ORIENTADAS A OBJETOS
1. Basada en Objetos, orientado a objetos y
BASES DE DATOS NO SQL
1. Principales tipos de Bases de Datos
objetos relacionales 2. Qué son las Bases de Datos NoSQL
3. Características y ventajas de las bases
2. Estructura de Objetos y jerarquías de datos NoSQL
3. SQL de objetos y SQL ANSI 2003 4. Análisis de fortalezas y debilidades de
las BBDD NoSQL
4. Referencia objetos y llaves primarias 5. ¿Cuándo utilizar una BBDD NoSQL?
6. Principales Gestores de BBDD NoSQL
5. Campos Múltiples y Arrays
En informática se conoce sistema distribuido todo aquel que permite almacenar ficheros online, en la cual su principal
característica es la poder guardar archivos (documentos, imágenes, vídeos, etc) en la red, en la mayoría de los casos,
este sistema tiene un uso personal, aunque también es utilizado en muchas empresas.
El almacenamiento distribuido reemplaza el SAN y NAS centralizados tradicionales por una plataforma de
almacenamiento definida por software que permite a los clientes implementar, gestionar y escalar una única plataforma
de almacenamiento unificado entre centros de datos, sucursales o en la cloud, una plataforma de almacenamiento
distribuido integrada permite un acceso perfecto al almacenamiento al entregar archivos, objetos y volúmenes a través
de múltiples protocolos a todos los usuarios y cargas de trabajo.
Es un enfoque de almacenamiento de datos en la cual los datos se van a distribuir y almacenar en múltiples dispositivos
o servidores en un lugar de concentrarse en un solo lugar.
1.
DEFINICIONES
b. Transacciones distribuidas:
Es una transacción que afecta a varios recursos, para que una transacción distribuida se confirme, todos los
participantes deben garantizar que los cambios en los datos serán permanentes. Los cambios deben conservarse a
pesar de bloqueos del sistema u otros eventos imprevistos.
Si alguno de los participantes no cumple esta garantía, toda la transacción da error y se revertirán los cambios en los
datos en el ámbito de la transacción.
Control de transacciones en la base de datos distribuida
El manejo de transacciones tiene dos aspectos principales, el control de recuperación y el control de concurrencia, cada
uno de los cuales requiere un tratamiento más amplio en el ambiente distribuido, y para explicar ese tratamiento más
amplio es preciso introducir primero un término nuevo, "agente".
En un sistema distribuido, una sola transacción puede implicar la ejecución de código en varios sitios (en particular
puede implicar a actualizaciones en varios sitios ). Por tanto, se dice que cada transacción está compuesta de varios
agentes, donde un agente es el proceso ejecutado en nombre de una transacción dada en determinado sitio. Y el
sistema necesita saber cuándo dos agentes son parte de la misma transacción.
VENTAJAS
1. Este tipo de bases de datos son escalables, es decir, son fácilmente expandibles ya
que tan solo hay que añadir un ordenador más conectado a ella para crear nodos y
puntos de acceso.
2. Se pueden disponer y organizar los datos en función de su nivel de transparencia. Esto
quiere decir que los datos con diferentes niveles de transparencia pueden almacenarse
en distintas ubicaciones.
3. Pueden almacenar la información de manera más sencilla y de forma jerárquica.
4. En caso de catástrofe en uno de los centros de datos, no se perdería toda la
información ya que todos los datos no se destruirían, porque se almacenan en
distintas ubicaciones.
5. Ahorra dinero a las empresas que las usan y al ser escalable es fácil adaptar a las
necesidades específicas en cada momento.
6. Aunque algunos nodos se desconecten, el resto de la base de datos sigue funcionando
y se puede acceder a ella.
DESVENTAJAS
1. Las bases de datos distribuidas son más complejas y es complicado
asegurarse de que los usuarios puedan tener una vista uniforme de
la misma.
2. A la larga, aunque ahorra costes, es un gasto inicial
3. Implementar medidas de seguridad que prevengan posibles ataques
es más complicado en una de estas bases de datos.
4. Pueden provocarse redundancias en los datos ya que se almacenan
en múltiples ubicaciones.
5. Este tipo de bases de datos requieren de profesionales formados y
cualificados. De momento no existen muchos por lo que resulta
difícil encontrar a gente con la experiencia necesaria.
2. DISEÑO DE
SISTEMAS
El diseño de un sistema de base de
datos distribuido implica la toma de
decisiones sobre la ubicación de los
DISTRIBUIDOS
-, o podríamos pensar en repartir las
relaciones, las tablas, por toda la red.
Red de estrella
Red de anillo
programas que accederán a la base de Un sistema distribuido de base de datos
consiste en un conjunto de localidades, Las diferencias principales entre estas
datos y sobre los propios datos que
cada una de las cuales mantiene un configuraciones son:
constituyen esta última, a lo largo de
los diferentes puestos que configuren sistema de base de datos local. Cada
localidad puede procesar transacciones Coste de instalación: El coste de
una red de ordenadores, la ubicación conectar físicamente las localidades
locales, o bien transacciones globales
de los programas, a priori, no debería del sistema
entre varias localidades, requiriendo para
suponer un excesivo problema dado ello comunicación entre ellas.
que se puede tener una copia de ellos Coste de comunicación: El coste en
en cada máquina de la red (de hecho, Las localidades pueden conectarse tiempo y dinero que implica enviar un
en este documento se asumirá que así físicamente de diversas formas, las mensaje desde la localidad A a la B.
es). principales son:
Fiabilidad: La frecuencia con que falla
Red totalmente conectada una línea de comunicación o una
Sin embargo, cuál es la mejor opción
localidad.
para colocar los datos: en una gran
máquina que albergue a todos ellos, Red prácticamente conectada
Disponibilidad: La posibilidad de
encargada de responder a todas las acceder a información a pesar de fallos
Red con estructura de árbol
peticiones del resto de las estaciones - en algunas localidades o líneas de
sistema de base de datos centralizado comunicación.
2. DISEÑO DE
SISTEMAS
DISTRIBUIDOS
3. LA DISTRIBUCION
A) Centralizada:
DE LOS DATOS
En este caso la bases de datos se encuentra centralizada en un lugar concreto físico y lógico, mientras que el resto de clientes
están distribuidos. Se basa en el clásico modelo servidor/cliente.
B) Distribuida:
La distribución de la información en estas bases de datos se realiza por medio de transacciones distribuidas.
Una transacción distribuida se define como aquella que involucra a varios nodos de una red, a los que se puede llamar agentes. Por
tanto, este tipo de transacciones de datos involucran a varios agentes.
Para que se pueda dar una transacción de información en una base de datos distribuida es necesario que los agentes se
comuniquen mediante mensajes de red, asegurando que se respeta la atomicidad en el proceso. Para ello se requiere lo siguiente:
Un agente raíz o sitio de origen de la transacción. Es el que inicia la transacción de datos cuando el usuario ejecuta una
aplicación.
Este agente raíz es también el encargado de garantizar las propiedades de la transacción distribuida, como BEGIN-
TRANSACTION, COMMIT O ROLLBACK.
C) Replicación:
El esquema de base de datos distribuida replicada se basa en que cada nodo debe tener una réplica completa de la base de datos.
Se trata de un método que supone altos costes para el mantenimiento de la información, ya que cada cambio en una copia debe ser
realizada también en todas las demás y por ello, es un sistema que resulta muy útil en bases de datos en las que se van a hacer
pocas tareas de escritura, pero muchas de lectura.
4. ESQUEMA
DISTRIBUIDO
5. COMPONENTES DE UN SISTEMA
GESTOR DISTRIUIDO
Hardware:
El hardware que compone una base de datos distribuida se reduce a servidores y la red.
Software:
Sistema manejador de base de datos distribuida (DDBMS):
Este sistema está formado por las transacciones y los administradores de la base de datos distribuidos, un DDBMS implica un
conjunto de programas que operan en diversas computadoras, estos programas pueden ser subsistemas de un único DDBMS de un
fabricante o podría consistir de una colección de programas de diferentes fuentes.
El manejador de transacciones es el encargado de definir la estructura de las transacciones, mantener la consistencia en la base de
datos cuando se ejecuta una transacción o se cancela la ejecución de una, mantener protocolos de fiabilidad, implementar
algoritmos para el control de la concurrencia y sincronizar las transacciones que se ejecutan simultáneamente.
El manejador recibe solicitudes de procesamiento de transacciones y las traduce en acciones para el calendarizador.
Nodo:
También se tienen que tomar consideraciones adicionales al momento de diseñar una base de datos las cuales pueden
ser:
Replicación de datos: la replicación de datos es el proceso de almacenar copias de datos en varios servidores. Esto
puede mejorar el rendimiento y la disponibilidad, pero también puede aumentar la complejidad y el costo.
Particionamiento de datos: el particionamiento de datos es el proceso de dividir una base de datos en partes más
pequeñas que se almacenan en diferentes servidores.
Control de concurrencia: el control de concurrencia es el proceso de garantizar que varios usuarios puedan acceder a
una base de datos al mismo tiempo sin dañar los datos.
Seguridad: La seguridad es una preocupación importante en cualquier base de datos, pero es especialmente
importante en una base de datos distribuida.
7. ESQUEMA DE Y
DISTRIBUCION DE
DATOS
8. TIPOS DE
FRAGMENTACION
La fragmentación en una base de datos distribuida consiste en la partición de una tabla de
la base de datos en diferentes fragmentos, y se pueden distinguir dos variantes:
• Regla de completés: los datos contenidos en una relación global han de estar relacionados con algún
fragmento.
• Regla de la reconstrucción: a partir de los fragmentos se podrá reconstruir una relación global.
• Regla de los conjuntos disjuntos: los fragmentos no deben compartir ningún elemento en común.
ANÁLISIS
MULTIDIMENSIO
NAL Y
DATAWAREHOUS
E
1. Bases de datos OLAP,
ROLAP y MOLAP
OLAP:
En la base de cualquier sistema OLAP se encuentra el concepto de cubo OLAP, se compone de hechos
numéricos o medidas, que se clasifican por dimensiones, el cubo de metadatos es típicamente creado
a partir de un esquema en estrella o copo de nieve, esquema de las tablas en una base de datos
relacional. Las medidas se obtienen de los registros de una tabla de hechos y las dimensiones se
derivan de la dimensión de los cuadros.
La razón de usar OLAP para las consultas es la rapidez de respuesta, y una base de datos relacional
almacena entidades en tablas discretas si han sido normalizadas. Esta estructura es buena en un
sistema OLTP pero para las complejas consultas multitabla es relativamente lenta y un modelo mejor
para búsquedas (aunque peor desde el punto de vista operativo) es una base de datos
multidimensional.
Un sistema MOLAP usa una base de datos propietaria multidimensional, en la que la información se
almacena multidimensionalmente, para ser visualizada multidimensionalmente.
El sistema MOLAP utiliza una arquitectura de dos niveles: Las bases de datos multidimensionales y el
motor analítico.
Características:
La base de datos multidimensional es la encargada del manejo, acceso y obtención del dato.
El nivel de aplicación es el responsable de la ejecución de los requerimientos OLAP.
El nivel de presentación se integra con el de aplicación y proporciona un interfaz a través del cual
los usuarios finales visualizan los análisis OLAP.
1. Bases de datos OLAP,
ROLAP y MOLAP
1. Sistema MOLAP
Ejemplo visual:
El sistema ROLAP utiliza una arquitectura de tres niveles y la base de datos relacional maneja los
requerimientos de almacenamiento de datos, y el motor ROLAP proporciona la funcionalidad analítica.
Características:
El nivel de base de datos usa bases de datos relacionales para el manejo, acceso y obtención del
dato.
El nivel de aplicación es el motor que ejecuta las consultas multidimensionales de los usuarios.
El motor ROLAP se integra con niveles de presentación, a través de los cuales los usuarios realizan
los análisis OLAP.
1. Bases de datos OLAP,
ROLAP y MOLAP
2. Sistemas ROLAP
Ejemplo visual:
La arquitectura ROLAP es capaz de usar datos precalculados si estos están disponibles, o de generar
dinámicamente los resultados desde los datos elementales si es preciso, esta arquitectura accede
directamente a los datos del Data Warehouse, y soporta técnicas de optimización de accesos para
acelerar las consultas y estas optimizaciones son, entre otras, particionado de los datos a nivel de
aplicación, soporte a la desnormalización y joins múltiples.
1. Bases de datos OLAP,
ROLAP y MOLAP
A continuación, Comparaciones a destacar entre ROLAP y MOLAP:
2. El esquema estrella
1. Esquema estrella:
Es un almacenamiento de datos arquitectónicos e inteligencia empresarial modelo que requiere una
sola tabla de hechos para almacenar datos medidos y transaccionales, y también utiliza diferentes
tablas dimensionales más pequeñas para contener atributos sobre datos comerciales.
La tabla de hechos toma su lugar en el centro del diagrama, y las tablas dimensionales pequeñas se
sientan como ramas en la mesa central para formar una estructura similar a una estrella, cada
esquema en estrella consta de una sola tabla de hechos pero de varias tablas de dimensiones
pequeñas.
El esquema Star es el más simple y fundamental entre los esquemas de data warehouse y data mart, es
eficiente en el manejo de consultas básicas.
La tabla de hechos en el medio del modelo estrella almacena dos tipos de información: valores de
atributos numéricos y de dimensión.
Valores numéricos: son únicos para cada fila y punto de datos, esto no se correlaciona ni se
relaciona con los datos almacenados en otra fila y estos son datos sobre una transacción
determinada, como el monto total, la cantidad del pedido, la hora exacta, la ganancia neta, el ID del
pedido, etc.
Valores de atributos: dimensionales no están almacenando ningún dato directamente, sino que
almacenan valores de clave externa para la fila en una tabla dimensional, las diferentes filas de la
tabla central harán referencia a esta información, como el valor de los datos, la identificación del
empleado de ventas, la identificación de la sucursal, la identificación del producto, etc.
2. El esquema estrella
1. Esquema estrella:
Ejemplos visuales:
2. El esquema estrella
1. Esquema estrella:
Características:
El esquema en estrella puede filtrar datos de datos normalizados para satisfacer las necesidades de
almacenamiento de datos.
Proporciona cálculos y agregaciones rápidos, como los ingresos obtenidos y el total de artículos
vendidos al final de cada mes.
Es la medida de eventos que incluye valores numéricos finitos que consisten en la clave foránea,
estas claves están relacionadas con las tablas de dimensiones.
La tabla de hechos de transacciones contiene datos sobre eventos específicos, como ventas y días
festivos.
Los hechos de registro incluyen períodos dados como información de cuenta al final del año o cada
trimestre.
La tabla dimensional proporciona datos detallados sobre los atributos o registros que se encuentran
en la tabla central.
El usuario es capaz de diseñar una mesa de acuerdo a sus necesidades.
Puede utilizar el esquema en estrella para acumular tablas de instantáneas.
2.1 El esquema snowfake
2. Esquema Snowfake:
El esquema Snowfake (copo de nieve) es un modelo de datos multidimensional que también se puede
conocer como la extensión del esquema de estrella, esto se debe a que las tablas de dimensiones del
esquema de copo de nieve se dividen en subdimensiones.
Es un copo de nieve si una o más tablas de dimensiones no se vinculan directamente con la tabla de
hechos, sino que se conectan a través de otras tablas de dimensiones, la formación de copos de nieve
es un fenómeno que normaliza las tablas de dimensiones en un esquema de estrella y cuando
normaliza todas las tablas de dimensiones, la estructura resultante se asemeja a un copo de nieve que
contiene una tabla de hechos en el medio de la estructura.
Consta de una tabla de hechos en el medio del modelo, que está conectada a tablas de dimensiones,
que a su vez están vinculadas a otras tablas de dimensiones, este esquema se utiliza para mejorar el
rendimiento de las consultas.
El modelo se crea para consultas rápidas y flexibles a través de relaciones y dimensiones complejas,
es útil para relaciones de uno a muchos y de muchos a muchos entre varios niveles de dimensiones.
2.1 El esquema snowfake
2. Esquema Snowfake:
Es similar al esquema de estrella pero con cambios mínimos, y a diferencia del esquema de estrella, el
esquema de copo de nieve amplía sus tablas de subdimensiones, que están vinculadas a tablas de
dimensiones.
En el núcleo del esquema, encontrará una tabla de hechos que se vincula con la información contenida
en las tablas de dimensiones, estas tablas nuevamente irradian hacia el exterior a las tablas de
subdimensiones que tienen información detallada que describe la información de la tabla de
dimensiones.
2.1 El esquema snowfake
2. Esquema Snowfake:
Ejemplos Visuales:
2.1 El esquema snowfake
2. Esquema estrella:
Características:
A nivel de dimensiones es posible definir jerarquías, las cuales son grupos de atributos que siguen un
orden preestablecido, una jerarquía implica una organización de niveles dentro de una dimensión, con
cada nivel representando el total agregado de los datos del nivel inferior.
Las jerarquías definen cómo los datos son sumarizados desde los niveles más bajos hacia los más
altos. Una dimensión típica soporta una o más jerarquías naturales, la cual una jerarquía puede pero no
exige contener todos los valores existentes en la dimensión.
Nivel 1: Todos
Nivel 2: Continentes > Europa, Asia
Nivel 3: Países > Europa > Francia, Italia, España
Nivel 4: Ciudades > España > Madrid, Barcelona, Sevilla
Nivel 5: Oficinas > Madrid > Oficina 1, Oficina 2, Oficina 3
Jerarquía:
3. Jerarquías y resúmenes
Se debe evitar caer en la tentación de convertir en tablas dimensionales separadas cada una de las
relaciones muchos-a-uno presentes en las jerarquías, esta descomposición es irrelevante en el
planeamiento del espacio ocupado en disco y sólo dificulta el entendimiento de la estructura para el
usuario final, además de destruir el desempeño del browsing.
Ejemplo Visual:
4. Datawarehouse y Datamart
1. Definición de Datawarehouse:
Un data warehouse es un repositorio unificado para todos los datos que recogen los diversos sistemas
de una empresa, el repositorio puede ser físico o lógico y hace hincapié en la captura de datos de
diversas fuentes sobre todo para fines analíticos y de acceso.
Se aloja en un servidor corporativo o cada vez más, en la nube, los datos de diferentes aplicaciones de
procesamiento de transacciones Online (OLTP) y otras fuentes se extraen selectivamente para su uso
por aplicaciones analíticas y de consultas por usuarios.
Data Warehouse es una arquitectura de almacenamiento de datos que permite a los ejecutivos de
negocios organizar, comprender y utilizar sus datos para tomar decisiones estratégicas, es una
arquitectura conocida ya en muchas empresas modernas.
El principal objetivo de un Data Warehouse es proporcionar una única fuente centralizada para
almacenar, gestionar y analizar la información, que sea fácilmente accesible para el personal de la
organización. Esto ofrece a los usuarios la capacidad de comprender mejor su negocio y optimizar sus
procesos para mantener una ventaja competitiva.
4. Datawarehouse y Datamart
1. Estructuras de Datawarehouse:
La arquitectura de un data warehouse puede ser dividida en tres estructuras simplificadas: básica,
básica con un área de ensayo y básica con área de ensayo y data marts.
Con una estructura básica: sistemas operativos y archivos planos proporcionan datos en bruto que
se almacenan junto con metadatos. Los usuarios finales pueden acceder a ellos para su análisis,
generación de informes y minería.
Al añadir un área de ensayo: que se puede colocar entre las fuentes de datos y el almacén, ésta
proporciona un lugar donde los datos se pueden limpiar antes de entrar en el almacén.
Se puede hacer agregando data marts: que son sistemas diseñados para una línea de negocio en
particular. Se pueden tener data marts separados para ventas, inventario y compras, por ejemplo, y
los usuarios finales pueden acceder a datos de uno o de todos los data marts del departamento.
4. Datawarehouse y Datamart
1. Estructuras de Datawarehouse:
La arquitectura de un data warehouse puede ser dividida en tres estructuras simplificadas: básica,
básica con un área de ensayo y básica con área de ensayo y data marts.
Con una estructura básica: sistemas operativos y archivos planos proporcionan datos en bruto que
se almacenan junto con metadatos. Los usuarios finales pueden acceder a ellos para su análisis,
generación de informes y minería.
Al añadir un área de ensayo: que se puede colocar entre las fuentes de datos y el almacén, ésta
proporciona un lugar donde los datos se pueden limpiar antes de entrar en el almacén.
Se puede hacer agregando data marts: que son sistemas diseñados para una línea de negocio en
particular. Se pueden tener data marts separados para ventas, inventario y compras, por ejemplo, y
los usuarios finales pueden acceder a datos de uno o de todos los data marts del departamento.
4. Datawarehouse y Datamart
1. Estructuras de Datawarehouse:
Características:
Orientado al tema: un data warehouse ofrece información destinada a un tema específico en vez
de las operaciones en curso de toda la organización, los ejemplos de temas de data warehouse
incluyen información de productos, datos de ventas, detalles de clientes y proveedores, etc.
Integrado: un almacén de datos se desarrolla combinando datos de múltiples fuentes
heterogéneas, como archivos planos y bases de datos relacionales, lo que en consecuencia mejora
el análisis de datos.
Variante de tiempo: los datos en un almacén de datos brindan información de un cierto punto
histórico de tiempo, por lo tanto, la información en un almacén de datos se categoriza con un
marco de tiempo particular.
No volátil: No volátil se refiere a los datos anteriores que no se omiten cuando se le agregan datos
más nuevos, un almacén de datos está separado de una base de datos operativa, lo que significa
que ningún cambio regular en la base de datos operativa se ve en el almacén de datos.
4. Datawarehouse y Datamart
1. Estructuras de Datawarehouse:
Ejemplo visual:
4. Datawarehouse y Datamart
2. Definición de Datamart:
Las empresas utilizan un data mart para analizar la información específica de cada departamento de
manera más eficiente, así mismo brindando datos resumidos que las partes interesadas clave pueden
utilizar para tomar decisiones informadas rápidamente.
Cuando se conecta a un almacenamiento de datos, el data mart recupera cierta información que es
relevante para una unidad de negocio y a menudo, la información contiene datos resumidos y excluye
datos innecesarios o detallados.
4. Datawarehouse y Datamart
2. Definición de Datamart:
Características:
Aporta información contextualizada: debido a que los data mart resguardan información de interés
para la realización de ciertas tareas y para cubrir las necesidades de un área empresarial, los datos
que contienen solo tienen una utilidad para un contexto determinado.
Responde a preguntas específicas: los colaboradores de una empresa pueden acceder fácilmente
a la información que les interesa cuando los volúmenes de datos no son tan elevados y se
encuentran estructurados adecuadamente.
Contiene información limpia: una ventaja de los data mart (en comparación con una data
warehouse) es que contienen información filtrada y específica para un área de negocios, ya sea
contable, de ventas o gestión al cliente.
Provee mayor seguridad y control: los data mart han sido ideados para seccionar una parte del
volumen total de información de una empresa para potenciar su uso en tareas específicas.
Se optimiza con el uso: como hemos visto, los data mart operan a través del filtrado de
información, pero esto solo ocurre en un inicio.
4. Datawarehouse y Datamart
2. Definición de Datamart:
Ejemplo visual:
5. Inteligencia del Negocio (Bussines
Inteligence)
El modelado de datos es el proceso de analizar y definir todos los diferentes datos que su negocio
recopila y produce, así como las relaciones entre esos bits de datos, la inteligencia del negocio implica
la extracción y análisis de datos almacenados en una base de datos con el objetivo de obtener
información valiosa para la gestión empresarial.
Extracción de datos: La inteligencia del negocio implica la extracción de datos relevantes de una o
varias bases de datos, tanto internas como externas a la organización.
Transformación de datos: Una vez extraídos, los datos pueden requerir transformaciones para que
sean adecuados para el análisis.
Análisis de datos: Una vez que los datos están preparados, se pueden aplicar técnicas analíticas
para descubrir patrones, tendencias y relaciones en los datos.
6. Data mining
El minado de datos es un conjunto de técnicas y tecnologías que permiten
explorar grandes bases de datos, de manera automática o semiautomática, con
el objetivo de encontrar patrones repetitivos que expliquen el comportamiento
de estos datos.
Se trata de la extracción de información explotable a partir de datos brutos, y es más, este campo
multidisciplinar tiene por objetivo principal identificar tendencias, conceptos, motivos, prácticas,
conexiones y correlaciones en las grandes series de datos.
La ciencia de datos engloba una gran variedad de herramientas y de técnicas como la práctica de la
programación informática, el análisis predictivo, las matemáticas, la estadística o la inteligencia
artificial e incluso, la Data Science incluye algoritmos de Machine Learning.
Puede dividirse de acuerdo con el tipo de información que estudia en: análisis cuantitativo y cualitativo.
El modelo de base de datos orientada a objetos agrupa la información en paquetes relacionados entre
sí, y los datos de cada registro se combinan en un solo objeto, con todos sus atributos, de esta manera,
toda la información está disponible en el objeto, ya que sus datos quedan agrupados en lugar de
distribuidos en diferentes tablas.
En los objetos no solo pueden guardarse los atributos, sino también los métodos, lo que refleja la
afinidad de estas bases de datos con los lenguajes de programación orientados a objetos, al igual que
en estos, cada objeto presenta un conjunto de acciones que pueden llevarse a cabo.
Los objetos se dividen a su vez en clases, un objeto es una unidad concreta de una clase abstracta, lo
que crea una jerarquía de clases y subclases, dentro de esta estructura, las subclases adoptan las
propiedades de las clases superordinadas y las complementan con sus propios atributos.
Al mismo tiempo, los objetos de una clase también pueden relacionarse con otras clases, lo que rompe
la jerarquía estricta y permite formar redes, los objetos simples también pueden combinarse para crear
objetos más complejos.
1. Basada en Objetos, orientado a objetos
y objetos relacionales
Bases de datos orientadas a Objetos vs Relacionales
Las bases de datos relacionales son el estándar en programación y desarrollo web desde hace mucho
tiempo, en este modelo, la información se almacena en tablas relacionadas entre sí y las relaciones
también permiten almacenar y consultar información compleja compuesta por varios elementos, al
igual que en las bases de datos de objetos.
Todos los atributos de cada objeto están disponibles de inmediato y, además, los registros pueden ser
mucho más complejos. Por otra parte, con las bases de datos relacionales, lo más habitual es intentar
simplificar al máximo la información que se introduce y cuanto más complejo se vuelve el conjunto de
los datos, más extensas son las relaciones entre ellos, lo que ralentiza la base de datos.
Los objetos a su vez se dividen en clases, creando así una jerarquía de clases y subclases, en la que las
subclases heredan las propiedades las clases superiores y las complementan con sus propios
atributos. Pero esta jerarquía no es estricta, puesto que los objetos de una clase pueden relacionarse
con otras clases, formando redes, y así mismo, los objetos simples pueden combinarse para crear
objetos más complejos.
1. Basada en Objetos, orientado a objetos
y objetos relacionales
Estructura de una Base de datos orientada a Objetos:
Se basa en encapsular los datos y el código relacionado con cada objeto en una sola unidad, y las
interacciones entre los objetos y el resto del sistema se realizan mediante una interfaz que se define
mediante un conjunto de mensajes permitidos, hay que tener en cuenta que los mensajes en redes
informáticas hacen referencia al intercambio de solicitudes entre los objetos.
La estructura de estas BDOO se diseña a partir de una serie de diagramas con los que se establecen
las clases y sus relaciones, las interacciones entre los objetos y su comportamiento.
Se emplea un diagrama de secuencias para presentar las interacciones entre los objetos organizados
en una secuencia temporal y describir cómo colaboran, mientras que el diagrama de estado muestra
los posibles estados en los que pueden estar un objeto y las transacciones que pueden causar un
cambio de estado, estructurando la parte dinámica, la interacción y el comportamiento entre los
objetos.
1. Basada en Objetos, orientado a objetos
Ejemplo visual:
y objetos relacionales
1. Basada en Objetos, orientado a objetos
y objetos relacionales
Características principales de la orientación a objetos:
1. Basada en Objetos, orientado a objetos
y objetos relacionales
¿Cómo funciona un base de datos relacional?
Las bases de datos relacionales se basan en la relación entre la información y diferentes factores, en la
práctica, puedes verlo como una tabla, donde cada columna representa un tipo de información
asociada con una fila. Cada una de estas filas y columnas se llama clave.
La primera columna suele representar una clave principal, que servirá como base para identificar la fila.
Cada clave principal debe ser única, evitando la mezcla de información. Esto significa, por ejemplo, que
dos clientes no pueden registrarse con el mismo nombre, pero pueden registrarse en la misma ciudad.
Parte de la diferencia entre las bases de datos relacionales y orientadas a objetos es técnica, no
siempre visible para el usuario final, sin embargo, desde una perspectiva tecnológica y especialmente
de gestión, es importante reconocer cómo cada formato maneja los datos y cómo encaja con tu
contexto.
2. Estructura de Objetos
y jerarquías
La estructura de objetos en una BOO se organiza en jerarquías, que son similares a las jerarquías de
clases en la programación orientada a objetos, la jerarquía de objetos se construye mediante la
creación de clases y la definición de relaciones de herencia entre ellas. Una clase es una plantilla o
prototipo para crear objetos individuales que comparten características comunes, los objetos
individuales se crean a partir de estas clases y se denominan instancias.
Los objetos en una BOO tienen características y métodos, los atributos son las propiedades o
características de un objeto, mientras que los métodos son las operaciones o acciones que los objetos
pueden realizar. Estos rasgos y técnicas se establecen dentro de las clases y se transmiten a las
subclases de la jerarquía.
En una BOO, la jerarquía de los objetos puede tener varios niveles de herencia. Una clase puede adoptar
métodos y características de una clase superior, también conocida como clase padre o superclase, y
agregar sus propios métodos y características.
2. Estructura de Objetos
y jerarquías
La estructura se compone de los siguientes elementos:
Por ejemplo, el objeto Bloqueos de SQL Server contiene los contadores Número de interbloqueos/seg.
y Tiempos de espera de bloqueos/seg.
Algunos objetos tienen varias instancias si existen varios recursos de un determinado tipo en el equipo,
por ejemplo, el tipo de objeto Procesador tendrá varias instancias si un sistema contiene varios
procesadores, el tipo de objeto Bases de datos tiene una instancia para cada base de datos de SQL
Server.
Si un tipo de objeto tiene varias instancias, puede agregar contadores para realizar un seguimiento de
las estadísticas relativas a cada instancia o, en muchos casos, de todas las instancias a la vez, los
contadores de la instancia predeterminada aparecen con el formato SQLServer:nombre> de< objeto.
Los contadores de las instancias con nombre aparecen con el formato MSSQL$<instance
name>:<counter name> o SQLAgent$<instance name>:<counter name>.
3. SQL de objetos y SQL
1. SQL de Objetos:
ANSI 2003
Algunos sistemas de gestión de bases de datos han agregado extensiones o características para
soportar características orientadas a objetos, a pesar de que el estándar SQL tradicional se basa en el
modelo relacional y no está diseñado específicamente para bases de datos orientadas a objetos.
Existen extensiones específicas que nos pueden variar en términos de su sintaxis y su funcionalidad, a
continuación, veremos cuales son:
Consultas orientadas a objetos: Algunos sistemas de bases de datos permiten realizar consultas
utilizando conceptos orientados a objetos, como navegación de objetos y polimorfismo.
Métodos y funciones: Algunos sistemas de bases de datos permiten definir métodos y funciones
que se pueden asociar con los objetos.
Herencia: Al igual que en la programación orientada a objetos, algunos sistemas de bases de datos
permiten definir relaciones de herencia entre los tipos de objetos.
Tipos de datos complejos: Estos tipos pueden contener atributos y métodos, al igual que los
objetos en la programación orientada a objetos.
3. SQL de objetos y SQL
2. SQL ANSI 2003:
ANSI 2003
Es la cuarta revisión del lenguaje de consulta de bases de datos SQL. Fue publicado por el Instituto
Nacional Estadounidense de Estándares (ANSI) en 2003. El estándar consta de 9 partes que se
describen en detalle en SQL. Fue actualizado por SQL:2006.
Rendimiento mejorado: las nuevas funciones de SQL:2003 pueden mejorar el rendimiento de las
consultas de la base de datos hasta en un 50%.
Trabajo más fácil con datos XML: las nuevas características relacionadas con XML en SQL:2003
facilitan el trabajo con datos XML, como el almacenamiento, la consulta y la actualización de
documentos XML.
Capacidades analíticas más potentes: las nuevas capacidades OLAP en SQL:2003 facilitan la
realización de consultas analíticas complejas en grandes conjuntos de datos.
4. Referencia objetos y
1. Referencia objetos:
llaves primarias
Un objeto de la base de datos que tiene un puntero a otro elemento de la base de datos se conoce
como objeto de referencia, por nombre o por otros medios de identificación, este puntero se puede
utilizar para acceder al objeto al que se hace referencia, las relaciones entre varios elementos de la
base de datos se establecen con frecuencia utilizando objetos de referencia.
Claves foráneas: Las claves foráneas se utilizan para crear relaciones de uno a varios entre tablas,
una clave externa en una tabla hace referencia a la clave principal de otra tabla, y esto le permite
acceder a todas las filas de la tabla a la que se hace referencia para cualquier fila determinada de la
tabla de referencia.
Referencias definidas por el usuario: las referencias definidas por el usuario se utilizan para crear
relaciones arbitrarias entre dos objetos de base de datos cualesquiera, las referencias definidas por
el usuario no se limitan a relaciones de uno a varios y se pueden usar para crear relaciones entre
tablas, vistas, procedimientos almacenados y otros objetos de bases de datos.
4. Referencia objetos y
2. Llaves primarias:
llaves primarias
Llaves naturales: Las claves naturales son columnas que identifican de forma natural
un objeto. Por ejemplo, el número de seguridad social de una persona es una clave
natural para un objeto de persona.
Llaves sustitutas: Las claves sustitutas son claves artificiales generadas por la base de
datos. Las claves sustitutas suelen ser números enteros, pero también pueden ser
cualquier otro tipo de datos.
5. Campos múltiples y
1. Campos múltiples:
Arrays
Las propiedades son un grupo de campos en una base de datos orientada a objetos, y los datos sobre
un objeto se almacenan utilizando sus propiedades, cualquier tipo de datos, como cadenas, números,
fechas y objetos, puede tener propiedades.
La clase del objeto contiene sus propiedades, el anteproyecto del objeto se conoce como clase, que
define las propiedades, métodos y otras características del objeto.
Un objeto se inicializa con los valores de sus propiedades cuando se crea, en cualquier momento, los
valores de las propiedades pueden cambiar, y los cambios se reflejarán en el objeto.
Las propiedades son un potente instrumento para almacenar información sobre objetos, y además de
facilitar el acceso y la manipulación de los datos, le permiten almacenar de forma estructurada.
5. Campos múltiples y
2. Arrays:
Arrays
Las bases de datos arrays son sistemas de gestión aplicados a matrices, las cuales proporcionan la
aplicación de colecciones homogéneas de datos, ubicados en matrices o cuadrículas rectangulares de
una, dos o más dimensiones.
Este modelo de bases de datos está incursionando actualmente en la BIG DATA, con objetos
individuales de gran peso. Se estima que abordan frecuencias mínimas que rondan los Terabytes y
próximamente se acercarían a manejarse en tamaños Petabyte.
Una matriz en una base de datos es una estructura de datos que almacena una colección de elementos
de datos del mismo tipo de datos. Las matrices se utilizan a menudo para almacenar grandes
cantidades de datos, como datos de sensores, datos de imágenes o datos de simulación.
6. Tablas anidadas y
1. Tablas anidadas
jerarquias
Una tabla anidada se representa en la tabla de casos como una columna especial que tiene un tipo de
datos TABLE, en las filas específicas de caso, esta clase de columna contiene filas seleccionadas de la
tabla secundaria que forman parte de la tabla primaria.
Una tabla anidada en una base de datos es una tabla que se almacena dentro de otra tabla, esto le
permite almacenar datos relacionados juntos, lo que puede facilitar la consulta y manipulación de
datos.
Las tablas anidadas se utilizan a menudo para almacenar datos jerárquicos, como la estructura
organizativa de una empresa o el árbol de componentes de un producto.
Las tablas anidadas se pueden crear en una variedad de lenguajes de base de datos, incluidos SQL,
PL/SQL y Java.
6. Tablas anidadas y
jerarquias
2. Jerarquías
Las jerarquías se utilizan a menudo para almacenar datos que se organizan en una estructura similar a
un árbol. Por ejemplo, una empresa puede tener una jerarquía que almacena sus productos y cada
producto puede tener una jerarquía que almacena sus componentes. Esto permite a la empresa
almacenar y consultar fácilmente datos sobre sus productos y sus componentes.
Las tablas anidadas y las jerarquías se pueden usar juntas para almacenar datos aún más complejos.
Por ejemplo, una empresa puede tener una tabla anidada que almacene empleados, y cada empleado
puede tener una tabla anidada que almacene a sus hijos, la tabla de niños también puede tener una
jerarquía que almacene las edades de los niños, esto permite que la empresa almacene y consulte
fácilmente datos sobre sus empleados, sus hijos y las edades de sus hijos.
BASES DE
DATOS NO SQL
1. Principales tipos de
Bases de Datos
Los principales tipos de Bases de Datos son:
La relacional
La distribuida
NoSQL
Orientada a Objetos
Graficas
2. Qué son las Bases de
Datos NoSQL
¿Qué son las bases de datos NoSQL?
Las bases de datos NoSQL están diseñadas específicamente para modelos de datos específicos y
tienen esquemas flexibles para crear aplicaciones modernas, las bases de datos NoSQL son
ampliamente reconocidas porque son fáciles de desarrollar, por su funcionalidad y el rendimiento a
escala.
utilizan una variedad de modelos de datos para acceder y administrar datos, estos tipos de bases de
datos están optimizados específicamente para aplicaciones que requieren grandes volúmenes de
datos, baja latencia y modelos de datos flexibles, lo que se logra mediante la flexibilización de algunas
de las restricciones de coherencia de datos en otras bases de datos.
Se adaptan perfectamente a muchas aplicaciones modernas, como dispositivos móviles, web y juegos,
que requieren bases de datos flexibles, escalables, de alto rendimiento y altamente funcionales para
proporcionar excelentes experiencias de usuario.
3. Características y ventajas de las
bases de datos NoSQL
1. Características y ventajas de las bases de datos NoSQL:
Flexibilidad: las bases de datos NoSQL son muy flexibles y se pueden usar para almacenar una
variedad de tipos de datos, incluidos datos estructurados, semiestructurados y no estructurados.
Escalabilidad: las bases de datos NoSQL se pueden escalar horizontalmente, lo que significa que
se pueden expandir fácilmente para manejar más datos.
Rendimiento: las bases de datos NoSQL a menudo pueden funcionar mejor que las bases de datos
relacionales para ciertos tipos de consultas, como aquellas que involucran grandes cantidades de
datos.
Rentabilidad: las bases de datos NoSQL pueden ser más rentables que las bases de datos
relacionales, ya que no requieren un servidor de base de datos dedicado.
4. Análisis de fortalezas y debilidades
de las BBDD NoSQL
2. Debilidades de las bases de datos NoSQL:
Complejidad de la consulta: las bases de datos NoSQL pueden ser más difíciles de consultar que
las bases de datos relacionales, ya que no tienen el mismo lenguaje de consulta.
Falta de estándares: no existe un estándar único para las bases de datos NoSQL, lo que puede
dificultar la elección de la base de datos adecuada para una aplicación en particular.
Consistencia de los datos: las bases de datos NoSQL no siempre garantizan la consistencia de los
datos, lo que significa que es posible que dos usuarios vean diferentes versiones de los mismos
datos.
Seguridad: las bases de datos NoSQL pueden ser menos seguras que las bases de datos
relacionales, ya que a menudo no tienen el mismo nivel de características de seguridad integradas.
5. ¿Cuándo utilizar una BBDD
NoSQL?
Si el crecimiento de la base de datos se realiza de forma rápida, con grandes aumentos en poco
tiempo, lo ideal es recurrir a bases de datos no relacionales NoSQL.
Si el acceso a la base de datos puede sufrir picos altos y en múltiples ocasiones, lo mejor es optar por
No SQL.
Si las necesidades de procesamiento no se pueden prevenir, es mejor utilizar bases de datos NoSQL
escalables (permiten expandirse).
Las bases de datos NoSQL son una buena opción cuando necesita almacenar grandes cantidades de
datos que no son adecuados para una base de datos relacional tradicional, las bases de datos NoSQL
se utilizan a menudo para aplicaciones de big data, como redes sociales, comercio electrónico e IoT.
6. Principales Gestores de BBDD
NoSQL
Los principales gestores de BBDD NoSQL son: