0% encontró este documento útil (0 votos)
47 vistas33 páginas

Ciencia de Datos para Empresas

Data Science es un campo multidisciplinario que utiliza métodos científicos para extraer conocimiento y percepciones de grandes cantidades de datos. Un científico de datos aplica habilidades en programación, estadísticas, aprendizaje automático y comunicación para desarrollar modelos predictivos, optimizar algoritmos, y comunicar hallazgos de manera efectiva a las empresas. El proceso típico de un proyecto de ciencia de datos implica definir preguntas de negocio, explorar y analizar datos, desarrollar y evaluar mode

Cargado por

daycan
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
47 vistas33 páginas

Ciencia de Datos para Empresas

Data Science es un campo multidisciplinario que utiliza métodos científicos para extraer conocimiento y percepciones de grandes cantidades de datos. Un científico de datos aplica habilidades en programación, estadísticas, aprendizaje automático y comunicación para desarrollar modelos predictivos, optimizar algoritmos, y comunicar hallazgos de manera efectiva a las empresas. El proceso típico de un proyecto de ciencia de datos implica definir preguntas de negocio, explorar y analizar datos, desarrollar y evaluar mode

Cargado por

daycan
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Introducción al Big Data y Business Intelligence

Tema 2. Data Science


2.1. ¿Qué es el Data Science?

Data Science, en español Ciencia de Datos, es un campo multidisciplinario que utiliza métodos
científicos, procesos, algoritmos y sistemas para extraer conocimiento y percepciones de datos
estructurados y no estructurados. En esencia, el Data Science busca revelar patrones, tendenciasy
relaciones ocultas en los datos para respaldar la toma de decisiones informada y la generaciónde
valor para las organizaciones.

Vivimos en una era donde los datos son generados a un ritmo sin precedentes. Desde
transacciones en línea y redes sociales hasta dispositivos inteligentes, cada interacción digital
deja una huella de datos. La Ciencia de Datos es la clave para desbloquear el poder inherente en
esta vasta cantidad de información, convirtiéndola en conocimiento valioso.

La historia de la Ciencia de Datos se remonta a las disciplinas de estadísticas y análisis de datos.


Sin embargo, su ascenso a la prominencia se ha acelerado en las últimas décadas gracias al
aumento exponencial en la disponibilidad de datos, la capacidad de cómputo avanzada y la
necesidad de tomar decisiones basadas en evidencia.

Componentes Clave de la Ciencia de Datos:

• Programación y software: Habilidades en lenguajes de programación como Python o R


para manipular y analizar datos.
• Estadísticas y matemáticas: Aplicación de técnicas estadísticas y conceptos matemáticos
para analizar y modelar datos.
• Conocimiento de dominio: Comprensión profunda del dominio o industria específica
para contextualizar los resultados.
• Herramientas y tecnologías: Uso de herramientas y plataformas especializadas para el
análisis y visualización de datos.
• Aprendizaje automático (Machine Learning): Implementación de algoritmos de
aprendizaje automático para predecir y clasificar.
• Comunicación efectiva: Habilidad para comunicar resultados de manera clara y
comprensible a audiencias no técnicas.

Fuente: Elaboración propia


Introducción al Big Data y Business Intelligence

Ventajas para las empresas:

El Data Science además de ser un campo emocionante, también ofrece beneficios significativos
para las empresas modernas. Desde la toma de decisiones informada y la optimización de
procesos hasta la predicción y prevención de problemas, la Ciencia de Datos se ha convertido en
un catalizador clave para la innovación y el éxito empresarial.

• Toma de decisiones informada: Proporciona insights para decisiones estratégicas y


operativas.
• Optimización de procesos: Identifica áreas de mejora operativa y eficiencia.
• Predicción y prevención: Permite pronósticos y prevención de problemas con modelos
predictivos.
• Mejora de la experiencia del cliente: Analiza datos para entender y mejorar la
experiencia del cliente.
• Innovación continua: Fomenta la innovación mediante la exploración y análisis de datos.

Data Science vs Big Data

Es crucial comprender la diferencia entre Data Science y Big Data. Mientras que Big Data se
centra en el manejo eficiente de grandes volúmenes de datos, la Ciencia de Datos se preocupa
por extraer conocimientos significativos de esos datos. Ambos campos están interconectados,
pero tienen enfoques distintos.

Data Mining y Data Analytics en Relación a Data Science:

La minería de datos es una parte integral de la Ciencia de Datos que se centra en descubrir
patrones y conocimientos significativos en grandes conjuntos de datos. Utiliza técnicas
avanzadas de análisis estadístico, aprendizaje automático y procesamiento de datos para
encontrar correlaciones y tendencias que pueden ser utilizadas para la toma de decisiones
estratégicas.

El Análisis de Datos implica la interpretación y evaluación de datos para obtener información


valiosa. Puede incluir análisis descriptivo para resumir características clave, análisis predictivo
para hacer pronósticos basados en datos históricos y análisis prescriptivo para recomendar
acciones basadas en modelos y datos.

Analista de Datos: Los analistas de datos se centran en recopilar, procesar y analizar datos para
proporcionar información valiosa a las organizaciones. Utilizan herramientas y técnicas para
examinar conjuntos de datos, identificar patrones, tendencias y generar informes que puedan
ayudar en la toma de decisiones.

Un analista de datos debe tener buenas habilidades analíticas, conocimientos sólidos de


estadísticas y matemáticas, competencias en el uso de herramientas de análisis de datos como
Excel, SQL y software de visualización de datos.

Científico de Datos: Los científicos de datos van más allá del análisis de datos básico y se centran
en la creación de modelos predictivos y algoritmos complejos. Su objetivo principal es extraer
conocimiento y comprensión profunda de los datos para prever tendencias futuras y tomar
decisiones estratégicas.

Para ello deben poseer conocimientos avanzados en estadísticas, aprendizaje automático,


programación (como Python o R), y experiencia en la manipulación de grandes conjuntos de
Introducción al Big Data y Business Intelligence

datos. También deben tener habilidades para la comunicación de resultados a audiencias no


técnicas.

Ingeniero de Datos: Los ingenieros de datos se centran en la infraestructura y la arquitectura de


datos. Diseñan, construyen y mantienen sistemas para la gestión eficiente de grandes volúmenes
de datos. Su trabajo implica la limpieza, transformación y almacenamiento de datos,
garantizando que estén disponibles y sean accesibles para su análisis.

Los ingenieros de datos deben contar con conocimientos sólidos en bases de datos,
programación (por ejemplo, con SQL, Python, Java), habilidades en el diseño de arquitecturas de
datos y experiencia en tecnologías de almacenamiento y procesamiento de datos, como Hadoop
o Spark.

2.2. Figura del Data Scientist


Un Data Scientist o Científico de Datos es un profesional altamente cualificado y versátil que
combina habilidades en programación, estadísticas, conocimiento de dominio y experiencia en
el manejo de datos para extraer conocimientos valiosos y respaldar la toma de decisiones
informada. La figura del Científico de Datos es esencial en la era digital, donde los datos son
abundantes y su interpretación tiene un impacto significativo en la estrategia empresarial. Sus
principales funciones son:

• Análisis Exploratorio de Datos (EDA)


• Desarrollo de Modelos Predictivos
• Optimización de Algoritmos
• Comunicación de Resultados
• Desarrollo de Herramientas Analíticas
• Colaboración Interdisciplinaria

Este perfil suele confundirse con la figura del Ingeniero de Datos pero existen diferencias entre
los roles. Mientras que el Científico de Datos se enfoca en la interpretación y aplicación de datos
para la toma de decisiones, el Ingeniero de Datos se centra en la construcción de la
infraestructura necesaria para gestionar esos datos de manera eficiente. Ambos roles son
complementarios y esencialmente trabajan juntos para garantizar el flujo eficaz de datos desde
la adquisición hasta la aplicación estratégica.

Habilidades y conocimientos de un Data Sciencist

• Programación: Habilidades sólidas en lenguajes como Python, R o SQL para manipular y


analizar datos.
• Estadísticas y Matemáticas: Conocimiento profundo de técnicas estadísticas y
conceptos matemáticos para el análisis de datos.
• Aprendizaje Automático: Experiencia en la implementación y optimización de
algoritmos de aprendizaje automático.
• Comunicación Efectiva: Habilidad para comunicar hallazgos de manera clara y efectiva a
audiencias no técnicas.
• Conocimiento de Dominio: Comprensión profunda del dominio empresarial o sector
específico para contextualizar resultados.
Introducción al Big Data y Business Intelligence

Las 5 etapas del Data Science


"The Art of Data Science" presenta una metodología de cinco etapas para abordar proyectos de
Ciencia de Datos. Este enfoque proporciona una estructura para guiar a los profesionales de
Ciencia de Datos a lo largo del ciclo de vida del proyecto.
1. Pregunta:
• Definición del problema: Comprender claramente el problema de negocio que se
está abordando.
• Formulación de preguntas: Plantear preguntas específicas que se deben responder
para resolver el problema.
2. Exploración:
• Obtención y exploración de datos: Recopilar datos relevantes y explorar su
estructura y contenido.
• Análisis Exploratorio de Datos (EDA): Realizar un análisis inicial para comprender la
naturaleza de los datos y sus posibles patrones.
3. Modelado:
• Selección de modelos: Elegir los modelos y algoritmos más adecuados para abordar
las preguntas planteadas.
• Entrenamiento del modelo: Entrenar los modelos seleccionados utilizando los datos
disponibles.
4. Interpretación:
• Interpretación de Resultados: Analizar los resultados del modelo y evaluar si
responden a las preguntas planteadas.
• Iteración: Si es necesario, ajustar y refinar modelos en función de la interpretación
de los resultados.
5. Comunicación:
• Presentación de Resultados: Comunicar los hallazgos de manera clara y efectiva a las
partes interesadas.
• Implementación: Si es posible, implementar soluciones basadas en los resultados
obtenidos.

Esta metodología proporciona una guía para abordar proyectos de Ciencia de Datos de manera
sistemática, desde la formulación de preguntas clave hasta la implementación de soluciones
basadas en los resultados. Es importante destacar que estas etapas no son necesariamente
lineales y pueden requerir iteraciones y ajustes a medida que se avanza en el proyecto. Además,
la colaboración y la comunicación con las partes interesadas son componentes clave en cada
etapa del proceso.

Los Científicos de Datos

En el libro "Analyzing the Analyzers: An Introspective Survey of Data Scientists and Their Work",
los autores Harlan D. Harris, Sean Patrick Murphy y Marck Vaisman identifican cuatro tipos
distintos de Científicos de Datos en función de sus habilidades y enfoques en el trabajo.

• Data Business person o empresario de datos: Se centra en el impacto comercial y la


toma de decisiones.
o Habilidades clave:
- Conocimiento sólido del dominio de negocios.
- Habilidades para comunicar resultados a audiencias no técnicas.
o Funciones:
- Traducción de problemas comerciales en preguntas analíticas.
Introducción al Big Data y Business Intelligence

- Desarrollo de estrategias basadas en análisis de datos.


• Data Creative o creativo de datos: Se centra en la creatividad y la exploración de nuevos
enfoques.
o Habilidades clave:
- Creatividad en el diseño y enfoques analíticos.
- Capacidad para experimentar y probar nuevas ideas.
o Funciones:
- Desarrollo de soluciones innovadoras y enfoques no convencionales.
- Experimentación con nuevas técnicas y herramientas.
• Data Developer o desarrollador de datos: Se centra en la creación y desarrollo de
herramientas y sistemas.
o Habilidades clave:
- Fuertes habilidades de programación y desarrollo.
- Conocimiento profundo de arquitecturas de software y hardware.
o Funciones:
- Creación de infraestructuras para el manejo eficiente de datos.
- Desarrollo de pipelines y sistemas de ETL.
• Data Researcher: Se centra en la investigación y la aplicación de métodos científicos.
o Habilidades clave:
- Conocimientos avanzados en estadísticas y métodos científicos.
- Capacidad para realizar investigaciones originales.
o Funciones:
- Investigación y desarrollo de nuevos algoritmos y técnicas.
- Contribución a la literatura científica en Ciencia de Datos.

Estos perfiles representan diversas orientaciones y fortalezas en el campo de la Ciencia de Datos.


La clasificación se basa en las habilidades y enfoques predominantes de cada tipo de Científico
de Datos en el entorno laboral. Es importante destacar que muchos profesionales pueden tener
habilidades y características que se alinean con más de un tipo. A continuación, se muestra un
gráfico orientativo de las áreas que deben dominar estos perfiles y en qué medida les atañe cada
una de ellas.
Introducción al Big Data y Business Intelligence

2.3. El ciclo de vida del dato


En el entorno empresarial, los datos que utilizamos, al igual que el resto de los activos, tienen un
ciclo de vida. Desde la creación de esos datos hasta su destrucción cuando ya no se necesitan, el
ciclo de vida del dato es el conjunto de fases que describen la evolución y el manejo de los datos.
Se trata de un concepto dinámico y continuo que se adapta a las necesidades cambiantes de la
organización y a la evolución de los datos a lo largo del tiempo. La gestión efectiva de este ciclo
es esencial para garantizar la calidad, la integridad y la utilidad de los datos en una variedad de
contextos.

1. Creación: En esta fase, los datos son generados o creados. Esto puede ocurrir a través
de diversas fuentes, como sensores, sistemas de registro, entradas manuales u otras
fuentes de entrada de datos.
2. Captura: Después de la creación, los datos deben ser capturados y registrados en un
formato adecuado para su almacenamiento y procesamiento posterior. Esto implica la
recopilación y organización de datos según las necesidades y requisitos específicos del
sistema.
3. Almacenamiento: Los datos capturados se almacenan en un repositorio o sistema de
almacenamiento. Esto puede ser un sistema de gestión de bases de datos, un sistema
de archivos, o incluso en la nube. La elección del método de almacenamiento depende
de factores como la escala de datos, la accesibilidad y los requisitos de rendimiento.
4. Procesamiento y análisis: En esta fase, los datos son procesados y analizados para
extraer información valiosa. Pueden aplicarse diversas técnicas, desde consultas básicas
hasta algoritmos avanzados de análisis de datos y aprendizaje automático.
5. Distribución: Dependiendo de la arquitectura y las necesidades del sistema, los
resultados del procesamiento pueden distribuirse a diferentes usuarios, sistemas o
aplicaciones. Esto implica compartir la información derivada con las partes interesadas
relevantes.
6. Uso: Los datos procesados y distribuidos se utilizan para tomar decisiones, realizar
informes, generar insights y apoyar diversas funciones dentro de una organización. El
uso eficiente de los datos es clave para maximizar su valor.
7. Mantenimiento y actualización: A medida que evolucionan los requisitos del sistema y
cambian las condiciones, los datos pueden necesitar actualizarse o modificarse. También
es importante realizar tareas de mantenimiento para garantizar la integridad y la calidad
de los datos a lo largo del tiempo.
8. Archivado o eliminación: Los datos que ya no son necesarios pueden ser archivados para
su conservación a largo plazo o eliminados según las políticas de retención de datos. Esto
ayuda a mantener la eficiencia del sistema y a cumplir con regulaciones y normativas.
9. Obsolescencia: Con el tiempo, algunos datos pueden volverse obsoletos o irrelevantes.
En esta fase, se evalúa la utilidad continua de los datos y se toma la decisión de
archivarlos permanentemente o eliminarlos según las políticas y prácticas establecidas.

2.4. Minería de datos y aprendizaje automático


La minería de datos y el aprendizaje automático son dos áreas interrelacionadas dentro del
campo de la ciencia de datos. Se centran en extraer conocimientos y patrones significativos a
partir de conjuntos de datos.

La minería de datos (Data mining) es el proceso de descubrir patrones, relaciones y


conocimientos valiosos o información oculta en grandes conjuntos de datos. Para ello, se utilizan
técnicas y métodos de estadística, inteligencia artificial y aprendizaje automático para analizar
Introducción al Big Data y Business Intelligence

datos y revelar patrones que puedan ser útiles en el proceso de toma de decisiones.

Algunas técnicas comunes en la minería de datos incluyen la clasificación, la regresión, el


clustering y la asociación.

El aprendizaje automático es un subcampo de la inteligencia artificial que se centra en el


desarrollo de algoritmos y modelos que permiten a las máquinas aprender patrones y realizar
tareas sin ser programadas para ellas explícitamente. En vez de seguir instrucciones específicas,
los modelos de aprendizaje automático mejoran su rendimiento a medida que se les proporciona
más datos y experiencia.

Las principales características del funcionamiento de la minería de datos son:

• Descubrimiento de Patrones: busca identificar patrones significativos y relaciones en


los datos que pueden no ser evidentes de manera directa.
• Análisis Exploratorio: se enfoca en el análisis exploratorio de datos para descubrir
tendencias, agrupamientos y anomalías.
• Aplicaciones Diversas: se utiliza en diversas áreas como marketing, finanzas, salud,
investigación científica y más para tomar decisiones informadas.
• Proceso Iterativo: la minería de datos es un proceso iterativo que involucra la
preparación de datos, exploración, modelado y evaluación.
• Identificación de Tendencias: permite la identificación de tendencias históricas y
predicciones futuras basadas en datos anteriores.

KDD (Knowledge Discovery in Databases)

El proceso KDD (Knowledge Discovery in Databases) es un enfoque sistemático para extraer


conocimientos útiles, patrones y relaciones a partir de grandes conjuntos de datos. Este
proceso consta de varias etapas, que se describen a continuación:

1. Selección de datos (Selection): En esta etapa, se eligen los datos relevantes para el
análisis. Esto implica identificar las fuentes de datos y seleccionar las variables que
serán objeto de estudio.

2. Preprocesamiento de datos (Preprocessing): Los datos brutos seleccionados se


someten a diversas transformaciones para prepararlos para el análisis. Esto incluye la
limpieza de datos para manejar valores faltantes, eliminar ruido y corregir
inconsistencias.

3. Transformación de datos (Transformation): En esta etapa, los datos preprocesados se


transforman mediante técnicas como normalización, discretización, agregación y
reducción de dimensionalidad para que sean más adecuados para el análisis.

4. Minería de Datos (Data Mining): La minería de datos es la etapa central del proceso
KDD. Aquí, se aplican algoritmos y técnicas de aprendizaje automático para descubrir
patrones, relaciones y conocimientos ocultos en los datos transformados.

5. Evaluación de patrones (Pattern Evaluation): Los patrones descubiertos en la etapa de


minería de datos se evalúan en términos de su relevancia y utilidad. Se utilizan
métricas y criterios para determinar la calidad de los patrones identificados.

6. Presentación de conocimientos (Knowledge Presentation): Los resultados de la


minería de datos y la evaluación de patrones se presentan de manera comprensible y
útil para los usuarios finales. Esto puede incluir informes, visualizaciones y
representaciones gráficas.
Introducción al Big Data y Business Intelligence

7. Acción (Action): Basándose en los conocimientos descubiertos, se toman decisiones o


se realizan acciones específicas. Esto puede incluir ajustes en procesos, formulación de
estrategias o implementación de cambios basados en los resultados obtenidos.
8. Almacenamiento y gestión de conocimientos (Knowledge Storage and Management):
Los conocimientos adquiridos se almacenan y gestionan para futuras consultas y
referencia. Esto puede implicar la creación de bases de conocimiento, sistemas de
información o almacenamiento en bases de datos.

Es importante destacar que el proceso KDD es cíclico e iterativo. Después de la etapa de acción,
se pueden identificar nuevas oportunidades o preguntas, lo que lleva a un nuevo ciclo de
selección, preprocesamiento, minería de datos y así sucesivamente.

2.5. Redes neuronales artificiales


Las Redes Neuronales Artificiales (RNA) son un modelo computacional inspirado en el
funcionamiento del cerebro humano. Estas redes están compuestas por unidades llamadas
"neuronas" interconectadas, y se utilizan para realizar tareas específicas de aprendizaje y
reconocimiento de patrones. Aquí hay aspectos clave sobre las redes neuronales artificiales:

Componentes Fundamentales:

• Neuronas (Nodos): Las neuronas son unidades básicas que reciben entradas, realizan
cálculos ponderados y producen una salida. Cada neurona está conectada a otras
mediante conexiones llamadas "pesos".

• Pesos: Los pesos asignados a las conexiones entre neuronas representan la fuerza de
influencia de una neurona sobre otra. Estos pesos se ajustan durante el proceso de
entrenamiento para optimizar el rendimiento de la red.

• Funciones de activación: Cada neurona tiene una función de activación que determina
su salida en función de la suma ponderada de sus entradas y los pesos asociados. Las
funciones de activación introducen no linealidades en la red.
Introducción al Big Data y Business Intelligence

Arquitecturas Comunes:

• Redes de Alimentación Adelante (Feedforward Neural Networks): Las redes de


alimentación adelante son el tipo más común de redes neuronales artificiales. La
información fluye en una dirección, desde la capa de entrada a través de capas ocultas
hasta la capa de salida. Son utilizadas para clasificación, regresión y otras tareas.

• Redes Neuronales Recurrentes (Recurrent Neural Networks - RNN): Las RNN tienen
conexiones cíclicas, lo que les permite mantener un estado interno y procesar
secuencias de datos. Son adecuadas para tareas donde el orden y la dependencia
temporal son importantes, como en el procesamiento de lenguaje natural.

• Redes Neuronales Convolucionales (Convolutional Neural Networks - CNN): Las CNN


están diseñadas específicamente para procesar datos estructurados en forma de
cuadrícula, como imágenes. Utilizan capas convolucionales para extraer características y
son ampliamente utilizadas en tareas de visión por computadora.

Proceso de Entrenamiento:

1. Paso Adelante (Forward Pass): Durante la fase de entrenamiento, se pasa un conjunto


de datos de entrada a través de la red y se calcula la salida predicha.

2. Cálculo de Pérdida (Loss Calculation): Se compara la salida predicha con la salida real
mediante una función de pérdida para evaluar el rendimiento de la red.

3. Retropropagación (Backpropagation): Los errores se retropropagan a través de la red, y


los pesos se ajustan iterativamente para minimizar la pérdida. Este proceso utiliza
algoritmos de optimización como el descenso del gradiente.

4. Iteración: Se repiten los pasos de paso adelante, cálculo de pérdida y retropropagación


durante múltiples iteraciones (épocas) hasta que la red converge y logra un rendimiento
satisfactorio.

Aplicaciones:

• Reconocimiento de imágenes y vídeo: Clasificación de objetos, detección facial,


segmentación de imágenes.

• Procesamiento de lenguaje natural: Traducción automática, análisis de sentimientos,


generación de texto.

• Diagnóstico médico: Análisis de imágenes médicas, diagnóstico de enfermedades.

• Finanzas: Predicción de precios de acciones, evaluación de riesgos crediticios.

• Robótica: Control de robots, visión computacional para robots.

2.6. Árboles de decisión


Los árboles de decisión son modelos de aprendizaje automático que se utilizan para la toma de
decisiones y la clasificación. Estos modelos se construyen en forma de estructuras de árbol,
donde cada nodo representa una pregunta o una decisión, y las ramas representan las posibles
respuestas o caminos de decisión.
Introducción al Big Data y Business Intelligence

Estructura del Árbol:

• Nodos: Los árboles de decisión constan de nodos, que representan las decisiones o
preguntas que se deben tomar.

• Bifurcaciones (ramas): Las bifurcaciones en el árbol representan las opciones o


respuestas posibles a una pregunta dada.

• Hojas: Las hojas del árbol representan las decisiones o resultados finales. Cada hoja
puede estar asociada con una clase o un valor específico.
• Raíz: El nodo inicial del árbol se llama raíz, y a partir de él se desarrollan las decisiones a
medida que se desciende por las ramas.

Proceso de Construcción

1. Selección de atributos: Seleccionar el mejor atributo para dividir los datos en cada nodo.
El atributo seleccionado es aquel que proporciona la mejor separación entre las clases o
resultados.

2. Criterio de división: Se utiliza un criterio, como la ganancia de información o la impureza


de Gini, para evaluar la calidad de la división y seleccionar el atributo óptimo.

3. Recursividad: El proceso se repite de manera recursiva para cada subconjunto de datos


en cada nodo. Se selecciona el mejor atributo en cada nivel del árbol.

4. Criterio de parada: Se establecen criterios de parada para detener la construcción del


árbol, como un límite en la profundidad del árbol o un número mínimo de instancias en
cada hoja.

Ventajas

• Interpretabilidad: Los árboles de decisión son fácilmente interpretables y


comprensibles, ya que se pueden visualizar y entender de manera intuitiva.

• No requieren normalización de datos: No es necesario realizar una normalización


extensa de los datos antes de construir un árbol de decisión.
Introducción al Big Data y Business Intelligence

• Manejo de datos mixtos: Pueden manejar conjuntos de datos que contienen tanto
variables numéricas como categóricas.

• Identificación de variables importantes: Los árboles de decisión permiten identificar las


variables más importantes para la toma de decisiones.

Aplicaciones:

• Clasificación: Clasificación de elementos en categorías específicas.

• Regresión: Predicción de valores numéricos.

• Diagnóstico médico: Ayuda en la toma de decisiones médicas basadas en síntomas y


resultados de pruebas.

• Detección de fraudes: Identificación de transacciones fraudulentas en sistemas


financieros.

• Recomendación de productos: Recomendación de productos basada en preferencias


del usuario.

• Análisis de riesgos: Evaluación de riesgos en entornos empresariales.

• Sistemas de recomendación: Construcción de sistemas de recomendación para


plataformas en línea.

Las reglas de clasificación son declaraciones condicionales que describen cómo se pueden
asignar etiquetas o categorías a nuevas instancias de datos basándose en sus características.
Cada regla generalmente tiene una condición y una acción asociada. Estas reglas son muy
comunes en los árboles de decisión.

Reglas de inducción:

La inducción de reglas es el proceso de extraer automáticamente reglas a partir de datos


mediante técnicas de aprendizaje automático. Este proceso implica identificar patrones y
relaciones en los datos para formular reglas que describan el comportamiento observado.

Pasos típicos en el proceso de inducción de reglas:

1. Selección de Atributos: Identificar los atributos relevantes para el problema en cuestión.

2. Generación de Reglas: Utilizar algoritmos de aprendizaje automático para generar reglas


basadas en los datos de entrenamiento.

3. Evaluación de Reglas: Evaluar la calidad y la precisión de las reglas generadas utilizando


datos de prueba o validación.

4. Refinamiento: Refinar las reglas según sea necesario, ajustando parámetros o


seleccionando diferentes atributos para mejorar el rendimiento.

5. Interpretación y Validación: Interpretar las reglas generadas y validarlas con expertos


del dominio para asegurar que sean coherentes y útiles.

Ejemplo de regla inducida: Si ingreso mensual > 5000 € y historial crediticio es bueno, entonces:
Aprobación del préstamo.

Las reglas inducidas pueden provenir de diversos algoritmos, como los algoritmos de
clasificación basados en reglas (por ejemplo, el algoritmo C4.5) o algoritmos de extracción de
Introducción al Big Data y Business Intelligence

reglas de asociación (por ejemplo, el algoritmo Apriori).

Algoritmos de inducción
• ID3 (Iterative Dichotomiser 3): es uno de los primeros algoritmos de inducción de árboles
de decisión. Fue desarrollado por Ross Quinlan y utiliza el concepto de ganancia de
información para seleccionar los atributos en cada paso.

• C4.5: Es la evolución de ID3 y fue también desarrollado por Ross Quinlan. C4.5 utiliza la
relación de ganancia y puede manejar atributos continuos. Además de la clasificación,
C4.5 puede generar reglas de clasificación.

• CART (Classification and Regression Trees): Desarrollado por Leo Breiman, CART es un
algoritmo que puede utilizarse tanto para problemas de clasificación como de regresión.
Construye árboles binarios y utiliza criterios como la Gini impurity para seleccionar los
atributos.

• Apriori: Aunque Apriori es conocido principalmente como un algoritmo de minería de


reglas de asociación, también puede considerarse un algoritmo de inducción de reglas.
Se utiliza para descubrir reglas que describen patrones de asociación entre diferentes
variables en un conjunto de datos.

• SLIQ (Supervised Learning in Quest): es un algoritmo diseñado para construir árboles de


decisión de manera eficiente, especialmente en grandes conjuntos de datos. Utiliza un
enfoque basado en la partición de atributos.

• RIPPER (Repeated Incremental Pruning to Produce Error Reduction): es un algoritmo que


construye reglas de clasificación mediante un proceso iterativo. Desarrollado por
William W. Cohen, se enfoca en mejorar la precisión al repetidamente ajustar y refinar
reglas.

• PART (Partial C4.5): es una versión simplificada de C4.5 y fue desarrollado por John Ross
Quinlan. En lugar de construir un árbol completo, PART construye reglas de clasificación
parciales que son más fáciles de interpretar.

• OneR: es un algoritmo simple pero efectivo que selecciona una sola regla basada en la
variable que mejor predice la clase en un conjunto de datos. Aunque es básico, a
menudo es utilizado como línea base para comparar con otros algoritmos más
complejos.

• CN2: es un algoritmo de inducción de reglas que se enfoca en la construcción de reglas


comprensibles. Se utiliza principalmente en minería de datos para la extracción de
conocimiento.

Redes Bayesianas

Las Redes Bayesianas, también conocidas como Redes de Probabilidad, son modelos gráficos
probabilísticos que representan relaciones probabilísticas entre un conjunto de variables. Estas
redes son utilizadas para modelar la incertidumbre y la dependencia entre variables en sistemas
complejos.

Las Redes Bayesianas son representadas mediante grafos dirigidos acíclicos (DAG), donde los
nodos son los vértices y los arcos son las aristas. La dirección de los arcos indica la dirección de
la influencia probabilística.
Introducción al Big Data y Business Intelligence

Propiedades Clave:
• Factorización de Probabilidades: La probabilidad conjunta de todas las variables en la
red se factoriza de acuerdo con la regla del producto de la probabilidad condicional.
• Inferencia: Las Redes Bayesianas permiten realizar inferencias sobre las probabilidades
de las variables, dadas observaciones o evidencias. Pueden responder preguntas del tipo
"dada la evidencia, ¿cuál es la probabilidad de que cierto evento ocurra?".

2.7. Virtualización
La virtualización es una tecnología que permite la creación de entornos virtuales o versiones
simuladas de recursos como hardware, sistemas operativos, almacenamiento y redes. A través
de la virtualización, un único sistema físico puede albergar múltiples entornos virtuales
independientes, cada uno de los cuales opera como si estuviera utilizando recursos físicos
dedicados.

La virtualización implica crear una versión virtual de recursos como servidores, almacenamiento,
redes u otros dispositivos, permitiendo la ejecución de múltiples sistemas operativos o
aplicaciones en un único hardware físico. Las capas de abstracción clave son:

• Hypervisor (Hipervisor): Es la capa de virtualización que se sitúa directamente sobre el


hardware físico. También conocido como VMM (Virtual Machine Monitor), permite la
creación y gestión de máquinas virtuales (VM).
• Máquinas Virtuales (VM): Son instancias virtuales de sistemas operativos y aplicaciones
que se ejecutan sobre el hipervisor. Cada VM opera como si estuviera en un entorno
físico separado.
• Sistema operativo anfitrión: Es el sistema operativo instalado directamente en el
hardware físico. Este sistema operativo se comunica con el hipervisor y gestiona los
recursos físicos.

Ventajas de la Virtualización:

• Optimización de recursos: Permite la consolidación de múltiples entornos de trabajo en


un solo servidor físico, maximizando la utilización de recursos y reduciendo la necesidad
de hardware físico.
• Flexibilidad y agilidad: Facilita la creación, clonación y movimiento rápido de máquinas
virtuales, lo que agiliza el aprovisionamiento de recursos y la respuesta a cambios en la
demanda.
• Aislamiento y seguridad: Proporciona aislamiento entre máquinas virtuales, lo que
mejora la seguridad al evitar que problemas en una VM afecten a otras. Además, facilita
la creación de entornos de prueba aislados.
• Mejora en la recuperación ante desastres: La virtualización permite la creación de
instantáneas (snapshots) y la migración en tiempo real de máquinas virtuales,
mejorando la capacidad de recuperación ante desastres.
• Ahorro: Reducción de costes asociados con la compra, mantenimiento y consumo de
energía de múltiples servidores físicos. También permite utilizar servidores de manera
más eficiente.

Implementación:

La virtualización se puede implementar de varias maneras, y dos enfoques comunes son la


virtualización completa y la paravirtualización. Ambos métodos tienen diferencias en cómo
interactúan con el hardware subyacente y cómo gestionan las máquinas virtuales.
Introducción al Big Data y Business Intelligence

Fuente: Elaboración propia

Virtualización Completa:

En la virtualización completa, también conocida como virtualización nativa o basada en


hardware, un hipervisor (VMM) se ejecuta directamente sobre el hardware físico y crea
máquinas virtuales que son similares a las máquinas físicas. Cada máquina virtual ejecuta su
propio sistema operativo sin necesidad de modificarlo.

• Interacción con el hardware: El hipervisor se interpone entre el hardware físico y las


máquinas virtuales, gestionando el acceso a los recursos y proporcionando una interfaz
virtualizada que simula un entorno de hardware completo.
• Ejemplos de hipervisores de virtualización completa: VMware vSphere/ESXi, Microsoft
Hyper-V (con virtualización anidada), KVM (Kernel-based Virtual Machine).
• Ventajas:
- Mayor compatibilidad con sistemas operativos no modificados.
- Facilita la migración de máquinas virtuales entre diferentes hipervisores.

• Desventajas :
- Puede tener un rendimiento ligeramente inferior en comparación con la
paravirtualización debido a la necesidad de emular ciertos componentes del
hardware.

Paravirtualización:

En la paravirtualización, el hipervisor no solo emula el hardware, sino que también proporciona


interfaces de programación modificadas a las máquinas virtuales. Esto implica que los sistemas
operativos invitados deben ser modificados para ser conscientes de la virtualización.

• Interacción con el hardware: Las máquinas virtuales paravirtualizadas interactúan con


el hipervisor de una manera más colaborativa, utilizando interfaces optimizadas para
entornos virtualizados.
• Ejemplos de hipervisores que admiten paravirtualización: Xen, Oracle VM VirtualBox
(en algunos casos), Microsoft Hyper-V (con sistemas operativos invitados Linux
paravirtualizados).

• Ventajas :
- Puede ofrecer un rendimiento más eficiente ya que evita la necesidad de
emulación completa del hardware.
- Mayor eficiencia en operaciones de entrada/salida (E/S).
Introducción al Big Data y Business Intelligence

• Desventajas :
- Requiere sistemas operativos invitados modificados para aprovechar las
optimizaciones de paravirtualización.
- Menor compatibilidad con sistemas operativos no modificados.

En resumen, mientras que la virtualización completa ofrece una mayor compatibilidad con
sistemas operativos no modificados, la paravirtualización puede ofrecer un rendimiento más
eficiente al requerir modificaciones específicas en los sistemas operativos invitados. La elección
entre estos enfoques dependerá de los requisitos y las prioridades específicas de la
implementación.

Categorías de virtualización

Existen varias categorías de virtualización, cada una diseñada para abordar necesidades
específicas en entornos de TI.

• Virtualización de servidores: Permite la ejecución de múltiples sistemas operativos y


aplicaciones en un solo servidor físico. Facilita la consolidación de servidores,
optimizando el uso de recursos y reduciendo la necesidad de hardware físico.

o Ventajas:
- Optimización de recursos: Permite ejecutar múltiples sistemas operativos en
un solo servidor físico, maximizando la utilización de recursos.
- Flexibilidad y escalabilidad: Facilita la rápida implementación y escalabilidad
de nuevas máquinas virtuales según las necesidades del negocio.
- Ahorro de costes: Reduce la necesidad de hardware físico, disminuyendo
costes de energía y mantenimiento
• Virtualización de almacenamiento: Abstrae y agrupa los recursos de almacenamiento
físico, permitiendo la gestión centralizada y la asignación dinámica de espacio de
almacenamiento según las necesidades.

o Ventajas:
- Gestión centralizada: Permite gestionar y asignar eficientemente recursos
de almacenamiento a través de una interfaz centralizada.
- Flexibilidad en la asignación: Facilita la asignación dinámica de espacio de
almacenamiento según las necesidades de las aplicaciones y los usuarios.
- Recuperación rápida: Mejora la capacidad de recuperación ante desastres
mediante la creación de copias de seguridad y la migración de datos.
• Virtualización de redes: Crea redes virtuales independientes de la infraestructura física,
lo que facilita la configuración y administración de redes, así como la implementación de
políticas de seguridad.

o Ventajas:
- Aislamiento y seguridad: Permite la creación de redes virtuales aisladas para
mejorar la seguridad y evitar interferencias entre distintos entornos.
- Configuración rápida: Facilita la configuración y gestión de redes virtuales,
agilizando la implementación de servicios y políticas de red.
- Optimización de recursos: Permite el uso eficiente de recursos de red al
compartir ancho de banda y optimizar la conectividad.
• Virtualización de escritorios (VDI - Virtual Desktop Infrastructure): Proporciona
escritorios virtuales a usuarios finales, permitiéndoles acceder a sus aplicaciones y datos
Introducción al Big Data y Business Intelligence

desde dispositivos diversos, mientras se ejecutan en servidores centralizados.

o Ventajas :
- Acceso remoto: Permite a los usuarios acceder a sus escritorios virtuales
desde cualquier dispositivo conectado a la red.
- Administración centralizada: Facilita la gestión centralizada de escritorios
virtuales, simplificando actualizaciones y políticas de seguridad.
- Aislamiento y seguridad: Mejora la seguridad al aislar los escritorios
virtuales y evitar interferencias entre usuarios.
• Virtualización de aplicaciones: permite ejecutar aplicaciones de software en entornos
aislados, independientes del sistema operativo y del hardware subyacente.

o Ventajas :
- Compatibilidad: Permite ejecutar aplicaciones diseñadas para diferentes
sistemas operativos en un mismo entorno.
- Aislamiento de aplicaciones: Mejora la seguridad al ejecutar aplicaciones en
entornos aislados, evitando conflictos y problemas de compatibilidad.
- Flexibilidad: Facilita la implementación y actualización de aplicaciones sin
afectar el sistema operativo subyacente.

2.8. Bases de datos:


Una base de datos es un conjunto organizado de datos que se almacena y se gestiona de manera
que pueda ser fácilmente accedido, gestionado y actualizado. En el contexto de los sistemas de
gestión de bases de datos (DBMS), las bases de datos están estructuradas de acuerdo con un
modelo específico que define la relación entre los datos.

Objetivos de los sistemas de Bases de Datos:

• Almacenamiento eficiente: Uno de los principales objetivos es proporcionar un


almacenamiento eficiente para grandes cantidades de datos. Los sistemas de bases de
datos están diseñados para optimizar el espacio de almacenamiento y garantizar un
acceso rápido a la información.
• Acceso rápido y eficiente: Facilitar el acceso rápido y eficiente a los datos es esencial.
Los DBMS utilizan índices y otras técnicas de optimización para garantizar que las
consultas y operaciones se realicen de manera eficiente, incluso en conjuntos de datos
extensos.
• Integridad de los datos: Mantener la integridad de los datos es crucial. Los sistemas de
bases de datos implementan restricciones y reglas para garantizar que los datos sean
coherentes y cumplan con ciertas normas y requisitos.
• Consistencia de la información: La consistencia se refiere a la uniformidad y precisión
de los datos. Los sistemas de bases de datos aseguran que los datos sean consistentes y
no contradigan entre sí.
• Seguridad de los datos: La seguridad de los datos es un objetivo fundamental. Los DBMS
implementan medidas de seguridad como control de acceso, cifrado y auditorías para
proteger la información de accesos no autorizados.
• Facilidad de mantenimiento: Facilitar el mantenimiento y la administración de la base
de datos es otro objetivo clave. Esto implica la capacidad de realizar actualizaciones,
modificaciones y ajustes en la estructura de la base de datos sin afectar la integridad de
los datos.
Introducción al Big Data y Business Intelligence

• Reducción de la redundancia: Evitar la redundancia de datos es esencial para ahorrar


espacio de almacenamiento y garantizar que los cambios en los datos se realicen de
manera consistente en toda la base de datos.
• Facilidad de recuperación de datos: Los sistemas de bases de datos están diseñados
para proporcionar herramientas y mecanismos de recuperación en caso de fallos o
pérdida de datos. Esto incluye la capacidad de realizar copias de seguridad y restaurar
datos.
• Soporte para transacciones: Los DBMS deben admitir transacciones, que son secuencias
de operaciones que deben ejecutarse de manera completa o no ejecutarse en absoluto.
Esto garantiza la integridad y consistencia de los datos, incluso en entornos con múltiples
usuarios concurrentes.
• Facilitar la interacción con aplicaciones: Los sistemas de bases de datos deben
proporcionar interfaces que faciliten la integración y la interacción con aplicaciones de
software. Esto puede incluir APIs, lenguajes de consulta como SQL, y herramientas de
desarrollo.

Administracion de datos y bases de datos

La administración de datos y bases de datos desempeña un papel fundamental en las


operaciones empresariales actuales. En un mundo donde la información es un activo crítico, la
capacidad de organizar, acceder y gestionar datos de manera eficiente se convierte en un factor
clave para el éxito organizacional.

La importancia de esta disciplina radica en su capacidad para proporcionar un marco


estructurado que garantiza la integridad, seguridad y eficiencia en la gestión de grandes
conjuntos de información.

Desde la toma de decisiones informada hasta la optimización de procesos y la salvaguardia de la


confidencialidad, la administración de datos y bases de datos se erige como un cimiento esencial
para la funcionalidad fluida y la competitividad sostenible en el panorama empresarial
contemporáneo. Este conjunto de prácticas no solo facilita la organización de la información,
sino que también empodera a las organizaciones para aprovechar al máximo su valioso recurso:
los datos.

Niveles de arquitectura de bases de datos:

La arquitectura de bases de datos se estructura en distintos niveles, interno, conceptual y


externo; que definen cómo se almacenan, se representan lógicamente y se presentan a los
usuarios los datos dentro de un sistema de bases de datos.

Esta jerarquía proporciona una estructura organizada que facilita la administración y el uso
efectivo de las bases de datos, permitiendo a los administradores, diseñadores y usuarios
interactuar con la información de manera coherente y eficiente. Este enfoque de niveles en la
arquitectura de bases de datos contribuye significativamente a la flexibilidad, seguridad y
mantenimiento efectivo de sistemas de información complejos.

• Nivel interno o físico: Este nivel se refiere a cómo se almacenan los datos físicamente
en el disco. Incluye detalles como la estructura de almacenamiento, índices y técnicas
de acceso. Es la capa más baja de la arquitectura y está oculta para los usuarios y las
aplicaciones.
Introducción al Big Data y Business Intelligence

• Nivel conceptual o lógico: Este nivel describe la estructura de la base de datos en un


nivel más abstracto. Se centra en la representación de los datos y las relaciones entre
ellos sin preocuparse por la implementación física. El modelo de datos a menudo se
expresa mediante un Diagrama de Entidad-Relación (DER) u otro modelo de datos lógico.
• Nivel externo o de vista de usuario: Este nivel se centra en cómo los usuarios perciben
la estructura de la base de datos. Se define mediante esquemas o vistas que representan
porciones específicas de la base de datos según las necesidades de cada usuario. Cada
usuario puede tener su propia vista personalizada de la base de datos.

Roles asociados a cada nivel:

• Administrador de bases de datos (DBA): Se ocupa principalmente del nivel interno,


gestionando la implementación física, la seguridad y la eficiencia del sistema.
• Diseñador de bases de datos: Trabaja en el nivel conceptual, definiendo la estructura
lógica de la base de datos y asegurándose de que cumpla con los requisitos del negocio.
• Usuarios finales y desarrolladores de aplicaciones: Trabajan principalmente en el nivel
externo, interactuando con la base de datos según sus necesidades específicas.

2.9. Sistema de gestión de bases de datos (DBMS)


Un Sistema de Gestión de Bases de Datos es un software que facilita la creación, organización,
acceso y administración de bases de datos, proporcionando una interfaz para que los usuarios
interactúen con los datos de manera eficiente y segura. Sus funciones principales son:

• Creación de base de datos: Permite la definición de la estructura de la base de datos,


incluyendo la creación de tablas, definición de relaciones, especificación de restricciones
y más.
• Inserción, actualización y eliminación de datos: Facilita la manipulación de datos
mediante operaciones como la inserción de nuevos registros, actualización de registros
existentes y eliminación de registros según ciertos criterios.
• Recuperación de datos (consulta): Proporciona un lenguaje de consulta, por ejemplo,
SQL, que permite a los usuarios y aplicaciones recuperar datos de la base de datos de
manera eficiente. Las consultas pueden incluir condiciones, ordenamientos y
proyecciones.
• Gestión de transacciones: Garantiza la integridad y consistencia de los datos al permitir
operaciones atómicas, coherentes, aisladas y duraderas (propiedades ACID). Esto es
crucial para mantener la consistencia de los datos en entornos concurrentes.
• Control de concurrencia: Gestiona el acceso concurrente a la base de datos por parte
de múltiples usuarios o aplicaciones para evitar problemas como la pérdida de
actualizaciones y la interferencia entre transacciones.
• Seguridad y control de acceso: Administra la seguridad de la base de datos mediante la
autenticación y autorización de usuarios, así como la implementación de políticas de
acceso para garantizar la confidencialidad e integridad de los datos.
• Respaldo y recuperación: Proporciona herramientas y mecanismos para realizar copias
de seguridad periódicas de la base de datos y recuperarla en caso de fallas o pérdida de
datos.
• Optimización del rendimiento: Ofrece técnicas para optimizar la ejecución de consultas
y operaciones, como la creación de índices, la optimización del plan de ejecución de
consultas y la gestión de la memoria y el almacenamiento.
Introducción al Big Data y Business Intelligence

• Diseño y mantenimiento de la base de datos: Facilita la creación y modificación de la


estructura de la base de datos, incluyendo la adición de nuevas tablas, la alteración de
columnas y la aplicación de restricciones.
• Soporte para transacciones distribuidas: Permite la gestión de bases de datos
distribuidas, donde los datos pueden estar ubicados en diferentes servidores o
ubicaciones geográficas.
• Interfaz de programación (API): Ofrece interfaces de programación que permiten a las
aplicaciones comunicarse y manipular datos en la base de datos.

Administrador de la base de datos (DBA)

Un Administrador de la Base de Datos es un profesional encargado de planificar, implementar,


mantener y asegurar la integridad y eficiencia de una o varias bases de datos en una
organización. El DBA es crucial para garantizar que los datos estén disponibles, sean accesibles y
estén protegidos de manera adecuada. Sus funciones principales son:

• Diseño de la base de datos: Participa en el diseño y planificación de la estructura de la


base de datos, incluyendo la definición de tablas, relaciones, índices y restricciones.
• Implementación y mantenimiento: Instala y configura sistemas de gestión de bases de
datos (SGBD) en servidores. Realiza actualizaciones, parches y mejoras para garantizar la
seguridad y el rendimiento.
• Seguridad de la base de datos: Administra la seguridad de la base de datos, controlando
el acceso de usuarios y aplicaciones. Establece políticas y procedimientos para proteger
los datos contra accesos no autorizados.
• Respaldos y recuperación: Planifica y ejecuta estrategias de respaldo regularmente para
asegurar la disponibilidad de los datos en caso de fallas. Implementa procedimientos de
recuperación para restaurar la base de datos en condiciones normales después de
eventos adversos.
• Optimización del rendimiento: Monitoriza el rendimiento de la base de datos y ajusta
la configuración para mejorar la eficiencia. Realiza análisis de consultas y sugerencias de
índices para optimizar el tiempo de respuesta.
• Gestión de transacciones: Asegura la consistencia y la integridad de los datos mediante
el control de transacciones. Implementa mecanismos para garantizar la atomicidad,
consistencia, aislamiento y durabilidad de las operaciones.
• Gestión de usuarios y permisos: Administra la creación y gestión de cuentas de usuario,
asignación de roles y permisos para garantizar el acceso controlado a la base de datos.
• Planificación de capacidad: Evalúa la carga de trabajo y planifica la capacidad de
almacenamiento y procesamiento para garantizar un rendimiento óptimo de la base de
datos a medida que crece la cantidad de datos y usuarios.
• Migración y actualización: Coordina la migración de datos entre versiones de SGBD,
aplicando actualizaciones y parches de software de manera planificada.
• Documentación: Mantiene documentación detallada sobre la estructura de la base de
datos, procedimientos de respaldo, políticas de seguridad y otros aspectos críticos para
la gestión efectiva de la base de datos.
• Soporte técnico: Brinda soporte técnico a usuarios y desarrolladores, resolviendo
problemas relacionados con la base de datos, consultas complejas y optimización del
rendimiento.

Usuarios de bases de datos


Los usuarios de bases de datos son individuos o aplicaciones que interactúan con una base de
Introducción al Big Data y Business Intelligence

datos para realizar consultas, actualizaciones y otras operaciones relacionadas con los datos.
Estos usuarios pueden tener diferentes niveles de conocimiento y habilidades, y se clasifican en
varios tipos según sus funciones y responsabilidades.

• Usuarios normales: También conocidos como usuarios finales o usuarios de consulta.


Son aquellos que interactúan con la base de datos para realizar consultas y obtener
información. Estos usuarios suelen utilizar interfaces de usuario intuitivas para acceder
y visualizar datos sin necesidad de conocimientos técnicos profundos.
• Programadores de aplicaciones: Desarrolladores de software que diseñan y crean
aplicaciones que utilizan la base de datos. Estos usuarios escriben código para
conectarse a la base de datos, realizar consultas, y manejar la lógica de la aplicación.
Tienen un conocimiento más profundo de las estructuras de datos y de los lenguajes de
programación.
• Usuarios sofisticados: Son usuarios que necesitan un nivel más avanzado de acceso y
control sobre la base de datos. Pueden incluir analistas de datos, científicos de datos o
personal especializado en informes. Estos usuarios pueden realizar consultas más
complejas, generar informes especializados y realizar análisis detallados.
• Administradores de Bases de Datos (DBA): Profesionales responsables de la
administración general de la base de datos. Los DBA realizan tareas como la instalación
y configuración del sistema de gestión de bases de datos, la planificación de la capacidad,
la implementación de políticas de seguridad y la gestión de respaldos y recuperación.
Tienen un conocimiento profundo de la arquitectura y la gestión de bases de datos.

2.10.Estructura general de la base de datos:


La estructura general de las bases de datos se compone de varios elementos que trabajan en
conjunto para almacenar, organizar y recuperar información de manera eficiente. Estos
elementos trabajan en conjunto para proporcionar una estructura organizada y accesible para la
información en una base de datos:

• Tablas: Las tablas son la estructura principal de una base de datos relacional.
Representan conjuntos de datos relacionados y se componen de filas y columnas. Cada
fila en una tabla se conoce como un registro, y cada columna representa un atributo o
campo específico.
• Registros: Un registro es una fila individual en una tabla y contiene la información
relacionada con un objeto o entidad en particular. Cada campo en un registro almacena
un valor específico correspondiente al atributo que representa.
• Campos o atributos: Los campos son las columnas individuales en una tabla y
representan atributos específicos de los datos. Cada campo tiene un nombre único y un
tipo de datos que define el tipo de información que puede almacenar.
• Consultas: Las consultas son instrucciones que permiten recuperar, filtrar y manipular
datos almacenados en una base de datos. Utilizan un lenguaje de consulta, como SQL
para realizar operaciones como selección, actualización, inserción y eliminación de
datos.
• Formularios: Los formularios son interfaces de usuario que facilitan la entrada y
visualización de datos en la base de datos. Proporcionan un medio interactivo para que
los usuarios introduzcan información de manera estructurada. Los formularios pueden
Introducción al Big Data y Business Intelligence

estar vinculados a tablas específicas y simplifican la interacción del usuario con la base
de datos.
• Máscaras de entrada: Las máscaras de entrada son herramientas que definen el formato
de entrada de datos en un campo específico. Ayudan a garantizar la consistencia de los
datos al limitar las opciones que un usuario puede ingresar. Por ejemplo, una máscara
de entrada para un número de teléfono podría requerir un formato específico, como
(XXX) XXX-XXXX.

Arquitectura de sistemas de bases de datos:

La arquitectura de sistemas de bases de datos se refiere a la estructura y organización de los


componentes que componen un sistema de gestión de bases de datos. Estos sistemas están
diseñados para administrar eficientemente la creación, almacenamiento, recuperación y
actualización de datos. Hay dos tipos principales de arquitecturas: centralizada y distribuida.

• Arquitectura centralizada: En una arquitectura centralizada, todos los componentes del


sistema de bases de datos se encuentran en una única ubicación física o en un servidor
central.
• Arquitectura distribuida: En una arquitectura distribuida, los componentes del sistema
de bases de datos están distribuidos en múltiples ubicaciones físicas o servidores.

2.11.Modelo entidad-relación:
El Modelo Entidad-Relación (ER) es un modelo de datos que representa de manera gráfica la
estructura y las relaciones entre diferentes entidades en un sistema. En este modelo, las
entidades son objetos o conceptos del mundo real, y las relaciones representan cómo
interactúan estas entidades entre sí.

• Entidades: Representan objetos o conceptos del mundo real que pueden ser
identificados y almacenados en una base de datos. Cada entidad se representa mediante
un rectángulo en el diagrama ER.
• Atributos: Son características o propiedades de una entidad. Los atributos se
representan dentro de elipses conectadas a las entidades. Por ejemplo, una entidad
"Cliente" puede tener atributos como "Nombre", "Apellido" y "Número de teléfono".
• Relaciones: Indican cómo dos o más entidades están relacionadas entre sí. Las
relaciones se representan mediante líneas conectando las entidades. Por ejemplo, una
relación "Realiza" podría conectar las entidades "Cliente" y "Pedido".

Interrelaciones: cardinalidad, rol y grado

Las interrelaciones se refieren a las conexiones o asociaciones entre entidades. Al explorar las
interrelaciones, se introducen conceptos importantes como cardinalidad, rol y grado.

• Cardinalidad: La cardinalidad describe la cantidad de instancias de una entidad que


pueden estar relacionadas con otra entidad a través de una relación. Se especifica
mediante notación como "uno a uno" (1:1), "uno a muchos" (1:N), o "muchos a muchos"
(N:M).
Ejemplo: En una relación "Cliente realiza Pedido":
- Cardinalidad del lado del Cliente podría ser "uno" (1), ya que un cliente puede
realizar muchos pedidos.
- Cardinalidad del lado del Pedido podría ser "muchos" (N), ya que un pedido
puede ser realizado por un solo cliente.
Introducción al Big Data y Business Intelligence

• Rol: El rol describe la función o el papel que una entidad juega en una relación. Cada
extremo de la relación tiene un rol, y los roles proporcionan un contexto adicional sobre
la naturaleza de la conexión.
Ejemplo: En una relación "Cliente realiza Pedido":
- El cliente podría tener el rol de "Cliente".
- El pedido podría tener el rol de "Pedido".
• Grado: El grado de una relación indica el número de entidades participantes en la
relación. Puede ser "binario" (dos entidades), "ternario" (tres entidades), etc.
Ejemplo: Una relación "Cliente realiza Pedido" es una relación binaria, ya que involucra
dos entidades: Cliente y Pedido.

Dominios y valores

Un dominio se refiere al conjunto de todos los posibles valores que puede tomar un atributo.
Especifica las restricciones y el rango de valores que un atributo puede contener. Por ejemplo, si
consideramos un atributo "Edad" para una base de datos de empleados, el dominio podría ser
el conjunto de números enteros positivos, limitando así los valores posibles para ese atributo.

Los valores son instancias específicas que un atributo puede contener dentro de su dominio.
Cada vez que se asigna un valor a un atributo para una entidad específica, ese valor debe
pertenecer al dominio del atributo. Por ejemplo, si el atributo "Color" tiene un dominio de
["Rojo", "Verde", "Azul"], los valores posibles para ese atributo serían, "Rojo", "Verde" o "Azul".

En definitiva, el dominio establece las reglas y restricciones para los valores que un atributo
puede tomar, mientras que los valores son las instancias específicas que cumplen con esas reglas
y pertenecen al dominio.

Atributo: es una propiedad o característica asociada a una entidad que contiene información
sobre esa entidad. Puede representar aspectos como nombres, fechas, cantidades, estados, etc.
Por ejemplo, si consideramos la entidad "Empleado", algunos atributos típicos podrían ser
"Nombre", "Apellido", "Fecha de Contratación", "Salario", etc.

Los atributos son fundamentales para definir la información que se almacena sobre las entidades
en una base de datos. Proporcionan detalles específicos y permiten una representación precisa
de los objetos del mundo real.

Propiedades identificadoras:

Una propiedad identificadora es un conjunto de uno o más atributos que permite identificar de
manera única cada instancia de una entidad en una base de datos. Sirve como un identificador
único que distingue una entidad específica de otras instancias de la misma entidad. Sus
características clave son:

• Unicidad: La propiedad identificadora debe garantizar que cada instancia de la entidad


tenga un valor único para ese identificador en la base de datos.
• Irredundancia: Debe ser un conjunto mínimo de atributos necesario para identificar de
manera única a la entidad. No debe haber redundancia innecesaria en la clave.

Tipos de propiedades identificadoras:

• Clave primaria: Es un conjunto de atributos elegido como la propiedad identificadora


principal de una entidad. Garantiza la unicidad y no permite valores nulos.
Introducción al Big Data y Business Intelligence

• Clave candidata: Es un conjunto de atributos que podría haberse seleccionado como


clave primaria. Cumple con las características de unicidad e irredundancia.
• Clave externa: Es una propiedad identificadora que establece una relación entre dos
entidades. Se utiliza para vincular entidades en una relación uno a muchos.

Las propiedades identificadoras son esenciales para el diseño eficiente de bases de datos.
Permiten una identificación única de las instancias de las entidades, facilitando la manipulación
y la búsqueda de datos de manera efectiva.

Diagramas entidad-relación

En los diagramas ER, se utiliza una simbología específica para representar las entidades,
atributos, relaciones y otros elementos que componen la estructura de una base de datos:

• Entidad: Rectángulo
• Atributo: Círculos conectados a una entidad a través de una línea
• Relación: Rombo
• Cardinalidad

Especialización

En este contexto, la especialización es un proceso que permite organizar entidades en jerarquías


o categorías más específicas. Esta técnica es comúnmente utilizada en situaciones en las que hay
entidades que comparten algunas características comunes, pero también tienen atributos
únicos. Al utilizar la especialización, se pueden representar estas relaciones de manera más clara.

• Restricciones inherentes: Las restricciones inherentes son aquellas que se derivan


directamente de la naturaleza del modelo de datos y las relaciones entre los elementos
de la base de datos. Estas restricciones son intrínsecas al diseño y la lógica del sistema.
Son restricciones inherentes:
- No pueden existir dos registros iguales de una misma entidad.
- Cada atributo de una entidad hace referencia solamente a un valor de su
dominio.
- Cualquier relación puede ser normalizada.
Introducción al Big Data y Business Intelligence

• Restricciones explícitas: Las restricciones explícitas son reglas adicionales que se


especifican de manera consciente y se aplican a la base de datos. Estas restricciones se
imponen utilizando comandos específicos del lenguaje de definición de datos (DDL) o
mediante herramientas de administración de bases de datos. Son restricciones
explícitas:
- Las claves primarias
- La unicidad de un campo
- La obligatoriedad de un campo
- Las claves referenciales

Valor “NULL” en el modelo

En el contexto de bases de datos relacionales, el valor NULL se utiliza para representar la ausencia
de un valor en una columna de una tabla. NULL indica que no hay un valor válido presente en la
columna. No debe confundirse con un valor cero o vacío; NULL significa que el valor es
desconocido o no aplicable.

La mayoría de los tipos de datos en una base de datos pueden admitir NULL, incluidos enteros,
cadenas de texto, fechas, etc. Sin embargo, algunos tipos de datos, como claves primarias,
pueden estar configurados para no aceptar valores nulos.

Las operaciones que involucran NULL a menudo tienen resultados especiales. Por ejemplo,
cualquier operación aritmética que incluya NULL generalmente produce NULL. Es importante
manejar adecuadamente las condiciones de NULL en consultas y operaciones para obtener
resultados esperados.

El uso de NULL debe hacerse con precaución. Puede ser útil para indicar la falta de información
o la no aplicabilidad de un valor, pero su uso excesivo o incorrecto puede complicar las consultas
y el mantenimiento del código.

2.12.El proceso de normalización


La normalización es un proceso en el diseño de bases de datos relacionales que busca minimizar
la redundancia y las anomalías en los datos al organizar las tablas de manera eficiente. En el
contexto de la normalización, se habla sobre dependencias funcionales, que son reglas que
describen cómo los valores de ciertos atributos están relacionados entre sí en una tabla.

En una relación R, se dice que un conjunto de atributos X determina de manera funcional otro
atributo Y si, para cada valor único de X, hay un único valor correspondiente de Y. Esto se denota
como X→Y.

Existen tres tipos de dependencias funcionales:

• Dependencia funcional reflexiva: Si un conjunto de atributos X se determina de manera


funcional a sí mismo, se llama dependencia funcional reflexiva. Esto significa que los
valores de X determinan los valores de X. Por ejemplo, para la entidad Persona, los
atributos Nombre y Dirección pertenecen a DNI, por tanto, conociendo el DNI se puede
obtener el nombre y la dirección.
• Dependencia funcional aumentativa: un conjunto de atributos X determina de manera
funcional a otro conjunto de atributos Y, y Y está "aumentado" con algún atributo
adicional. Por ejemplo, si tenemos: Nº. empleado→ Nombre, Apellido y Nombre,
Introducción al Big Data y Business Intelligence

Apellido → Departamento, tenemos una dependencia funcional aumentativa Nº.


empleado → Departamento.
• Dependencia funcional transitiva: un conjunto de atributos X determina de manera
funcional a Y, y Y determina de manera funcional a otro conjunto de atributos Z. En este
caso, X determina de manera transitiva a Z. Es decir, si tenemos Nombre → Nº. empleado
y Nº. empleado → Departamento, entonces Nombre → Departamento es una
dependencia funcional transitiva.

Estos conceptos son fundamentales en la teoría de normalización, que se divide en


diferentes formas normales (1NF, 2NF, 3NF, etc.) para asegurar que las tablas en una base de
datos estén estructuradas de manera eficiente y se eviten redundancias y anomalías en los
datos. Cada forma normal se basa en ciertas reglas y dependencias funcionales para lograr
estos objetivos.

Primera forma normal (1FN):

Se trata del primer paso en el proceso de normalización de una base de datos relacional. El
objetivo de la 1FN es eliminar la redundancia y garantizar que cada celda de la tabla contenga un
único valor atómico. Para cumplir con la 1FN, una tabla debe cumplir con las siguientes reglas:

• Valores atómicos: Cada celda en la tabla debe contener un único valor atómico, es
decir, un valor que no puede descomponerse en partes más pequeñas.
• Sin repetición de grupos: No debe haber grupos repetidos de columnas. Cada
columna debe tener un nombre único y contener información específica.
• Identificador único: Cada fila debe tener un identificador único que la distinga de
otras filas. Esto generalmente implica tener una clave primaria que garantice la
unicidad de cada registro.

Ejemplo: Supongamos que tenemos una tabla “Estudiantes” con la siguiente estructura:

Esta tabla no cumple con la 1FN porque la columna “Materia” viola la regla de valores atómicos
al contener múltiples materias en una sola celda.

Para llevarla a 1FN, podríamos dividir la información en tablas separadas:


Introducción al Big Data y Business Intelligence

Ahora, cada celda en ambas tablas contiene un único valor atómico, y no hay grupos repetidos
de columnas. Estas tablas cumplen con la Primera Forma Normal.

Segunda forma normal (2FN)

La segunda forma normal es un nivel adicional de normalización en el diseño de bases de


datos. Se aplica a tablas que ya han cumplido con la 1FN. El objetivo de la 2FN es eliminar
dependencias parciales en una tabla, asegurando que todos los atributos no clave estén
totalmente dependientes de la clave primaria. Para lograr esto, la tabla debe cumplir con dos
condiciones:

1. Cumplir con la Primera Forma Normal (1FN).


2. No debe haber dependencias parciales de atributos no clave respecto a la clave
primaria.

En otras palabras, todos los atributos no clave deben depender completamente de la clave
primaria.

Tercera forma normal (3FN)

El objetivo de la 3FN es eliminar las dependencias transitivas entre los atributos no clave. Una
tabla está en 3FN si cumple con las siguientes condiciones:

1. Cumple con la Segunda Forma Normal (2FN).


2. No hay dependencias transitivas de atributos no clave respecto a la clave primaria.

Es decir, ningún atributo no clave debe depender de otro atributo no clave si ambos dependen
de la clave primaria.

Otras formas normales (4FN, 5FN)

Las formas normales más allá de la 3FN se aplican en situaciones particulares para abordar
dependencias más específicas y reducir la redundancia en las bases de datos. Con la 4FN dejan
de existir los atributos que dependan de valores múltiples, dividiendo así las relaciones. En la
5FN dejarán de existir restricciones impuestas por el creador dela base de datos.

La aplicación de estas formas normales depende de la estructura y las características


específicas de los datos en cada caso.
Introducción al Big Data y Business Intelligence

Desnormalización
La desnormalización es el proceso de modificar la estructura de una base de datos
normalizada para mejorar el rendimiento o facilitar ciertas consultas, a expensas de la
redundancia de datos y la consistencia. Aunque la normalización es una práctica común para
diseñar bases de datos, hay situaciones específicas en las que la desnormalización puede ser
beneficiosa.

Es importante destacar que la desnormalización tiene sus desafíos y debe manejarse con
precaución. Aunque puede ofrecer beneficios en términos de rendimiento, simplificación y
experiencia del usuario, también introduce el riesgo de inconsistencias de datos y puede hacer
que el mantenimiento del modelo sea más complejo. La decisión de desnormalizar debe
basarse en las necesidades específicas del sistema y debe equilibrarse cuidadosamente con los
principios de diseño de bases de datos.

El diccionario de datos

Un diccionario de datos sirve como un catálogo completo de los elementos de datos en una base
de datos. Contiene metadatos, que son datos que describen otros datos. El diccionario
proporciona información sobre la estructura de la base de datos, los tipos de datos utilizados,
las relaciones entre las tablas y cualquier restricción o regla que se aplique a los datos.

La estructura del diccionario de datos puede variar según el sistema y las necesidades específicas
de la organización, pero generalmente incluye los siguientes elementos:

• Elemento dato: que forma la estructura de datos.


• Descripción: detalles que describen los datos utilizados.
• Notación: símbolos especiales que describen y muestran las relaciones entre datos.

2.13.Álgebra relacional
El álgebra relacional es un conjunto de operaciones matemáticas definidas sobre relaciones, que
son conjuntos de tuplas con atributos específicos. Proporciona un lenguaje formal para
manipular datos almacenados en bases de datos relacionales.

Fue introducido por Edgar F. Codd, un pionero en la teoría de bases de datos relacionales.

A continuación, se presentan algunos conceptos clave del álgebra relacional:

• Relación: En el contexto del álgebra relacional, una relación se refiere a una tabla que
contiene información organizada en filas y columnas. Cada fila representa una tupla, y
cada columna representa un atributo.
• Tupla: Una tupla es una fila en una relación y consiste en un conjunto ordenado de
valores correspondientes a los atributos de esa relación.
• Atributo: Un atributo es una columna en una relación y representa una característica
específica de los datos. Cada atributo tiene un nombre único que lo identifica dentro de
la relación.

El álgebra relacional define varias operaciones fundamentales para manipular datos. Algunas de
las operaciones incluyen:

• Unión: Combina dos relaciones compatibles por número y tipo de atributos.


• Intersección: Devuelve las tuplas comunes a dos relaciones.
Introducción al Big Data y Business Intelligence

• Diferencia: Devuelve las tuplas presentes en una relación, pero ausentes en


otra.Producto Cartesiano: Combina todas las tuplas de una relación con todas las
tuplas deotra relación.
• Renombramiento: Cambia el nombre de atributos o relaciones para facilitar su uso en
expresiones
• Selección: Permite seleccionar las tuplas que cumplen con una condición específica.
• Proyección: Permite seleccionar ciertos atributos de las tuplas.
• Concatenación: Devuelve una relación con los atributos de ambas relaciones.

Cálculo relacional

El cálculo relacional es otro enfoque para expresar consultas y manipulaciones en bases de datos
relacionales. Hay dos variantes principales del cálculo relacional: el cálculo relacional orientado
a dominios y el cálculo relacional orientado a tuplas.

• Cálculo relacional orientado a dominios: En el cálculo relacional orientado a dominios,


las consultas se expresan como fórmulas matemáticas que describen conjuntos de
valores posibles.
• Cálculo relacional orientado a tuplas: En el cálculo relacional orientado a tuplas, las
consultas se expresan utilizando una notación más parecida a las frases naturales. Se
utilizan variables de relación y operadores lógicos para describir las tuplas que deben
recuperarse.

2.14.SQL
SQL (Structured Query Language) es el lenguaje de consulta estándar utilizado en la mayoría de
los sistemas de gestión de bases de datos relacionales. SQL combina elementos del cálculo
relacional con otros conceptos y estructuras. Las consultas en SQL se expresan utilizando
instrucciones como SELECT, FROM, WHERE y JOIN para recuperar y manipular datos.

Algunas de sus principales características son las siguientes:

• Lenguaje declarativo: SQL es un lenguaje declarativo, lo que significa que los usuarios
especifican qué datos quieren y no cómo obtenerlos. En lugar de describir paso a paso
cómo se debe realizar una tarea, los usuarios simplemente declaran la información que
desean recuperar o modificar.
• Operaciones CRUD: SQL es capaz de realizar operaciones fundamentales CRUD (Crear,
Leer, Actualizar, Eliminar) en una base de datos. Esto se logra mediante comandos como
SELECT, INSERT, UPDATE y DELETE.
• Manipulación de datos: SQL permite manipular datos almacenados en una base de
datos. Puede realizar operaciones como la selección de datos específicos, la
modificación de registros existentes y la inserción de nuevos datos.
• Interrogación de datos: Con SQL, los usuarios pueden realizar consultas complejas para
recuperar datos específicos que cumplan con ciertos criterios. El comando SELECT se
utiliza para la interrogación de datos.
• Definición de datos y estructuras: SQL permite definir la estructura de la base de datos,
incluyendo la creación de tablas, especificación de claves primarias y foráneas, y la
imposición de restricciones de integridad.
• Transacciones: SQL admite el concepto de transacciones, que son secuencias de
operaciones que se ejecutan como una unidad. Las transacciones garantizan la
consistencia y la integridad de los datos, permitiendo la confirmación o reversión de
cambios en conjunto.
Introducción al Big Data y Business Intelligence

• Integridad de datos: SQL proporciona mecanismos para mantener la integridad de los


datos mediante la aplicación de restricciones, como claves primarias, claves foráneas,
restricciones únicas, y chequeo de integridad.
• Vistas y procedimientos Almacenados: SQL permite crear vistas, que son consultas
guardadas que pueden ser referenciadas como si fueran tablas. También permite definir
procedimientos almacenados, que son secuencias de comandos SQL que pueden ser
ejecutadas repetidamente.
• Seguridad: SQL ofrece características de seguridad para controlar el acceso a la base de
datos. Los usuarios y roles pueden tener diferentes niveles de privilegios para realizar
operaciones específicas.
• Portabilidad: SQL es ampliamente utilizado y está estandarizado, lo que facilita la
portabilidad de bases de datos entre diferentes sistemas de gestión de bases de datos
(DBMS) que admiten SQL.
• Manejo de índices: SQL permite la creación y gestión de índices para mejorar la
velocidad de las consultas al acelerar la búsqueda de datos en las tablas.
• Optimización de consultas: Los sistemas de gestión de bases de datos (DBMS) que
implementan SQL suelen incluir optimizadores de consultas para mejorar el rendimiento
y la eficiencia de las operaciones.

SQL es esencial en el desarrollo y administración de bases de datos relacionales y ha sido


adoptado de manera generalizada en la industria de la tecnología de la información. Su
versatilidad y potencia hacen que sea una herramienta fundamental para trabajar con datos
estructurados.

2.15.Análisis de los datos


El análisis de datos es una disciplina crucial en el mundo actual, donde la cantidad de información
generada continuamente es abrumadora. La inteligencia analítica, en este contexto, se refiere a
la capacidad de recopilar, procesar, analizar y visualizar datos para obtener información valiosa
y tomar decisiones informadas. Esta disciplina combina herramientas analíticas, técnicas
estadísticas y enfoques tecnológicos para extraer conocimientos significativos de conjuntos de
datos complejos.

La inteligencia analítica es un enfoque integral que va más allá del simple análisis descriptivo de
datos. Se centra en la capacidad de utilizar datos para comprender patrones, identificar
tendencias, prever resultados y, en última instancia, mejorar la toma de decisiones. Implica el
uso de herramientas avanzadas de análisis de datos, modelos predictivos y tecnologías
emergentes para obtener una comprensión más profunda de los fenómenos y comportamientos
que subyacen a los datos. En este contexto, surgen tres tendencias:

• Optimización: La optimización en el análisis de datos implica el uso de algoritmos y


modelos para encontrar las mejores soluciones posibles en situaciones complejas. Esto
puede aplicarse a la asignación de recursos, la planificación de rutas, la programación y
otras áreas donde se busque mejorar eficiencias.
• Analítica Combustible: La analítica combustible se refiere a la integración de
capacidades analíticas directamente en las aplicaciones y procesos empresariales.
Permite que la toma de decisiones se realice en el contexto operativo, sin necesidad de
cambiar a herramientas analíticas separadas.
• Análisis de Datos Nuevos: Con el aumento de la cantidad y variedad de datos generados,
la capacidad de analizar datos nuevos, como datos no estructurados, datos en tiempo
Introducción al Big Data y Business Intelligence

real y datos provenientes de fuentes diversas, se vuelve esencial. Herramientas y


técnicas como el análisis de texto, el análisis de sentimientos y el procesamiento de flujo
de datos son ejemplos de este enfoque.

La inteligencia analítica en el negocio puede verse como una evolución del Business Intelligence
tradicional, con el apoyo del big data y métodos de procesamiento de datos mas avanzados. Los
resultados obtenidos pueden tener dos objetivos:

• Informar: El análisis de datos informa al proporcionar una comprensión retrospectiva de


lo que ha sucedido. A través de informes y dashboards, las organizaciones pueden
evaluar el rendimiento pasado, identificar tendencias históricas y comprender el estado
actual basado en datos.
• Predecir: La capacidad predictiva del análisis de datos utiliza modelos estadísticos y
algoritmos para hacer predicciones sobre eventos futuros. Esto es fundamental para
anticipar tendencias, tomar decisiones proactivas y planificar estratégicamente.

Es decir, la inteligencia analítica no solo se trata de analizar datos históricos, sino también de
mirar hacia el futuro. Las tendencias actuales enfatizan la optimización, la integración de análisis
en procesos operativos y la capacidad de abordar nuevos tipos de datos. Con resultados que
informan y predicen, las organizaciones pueden aprovechar al máximo el valor de sus datos para
impulsar el éxito empresarial.

2.16.Las redes sociales en el mundo de los datos


Las redes sociales desempeñan un papel significativo en el mundo de los datos, proporcionando
vastas cantidades de información sobre las interacciones, preferencias y comportamientos de
los usuarios.

Las plataformas de redes sociales generan enormes cantidades de datos diariamente a través de
interacciones, publicaciones, comentarios, likes, comparticiones, entre otros. Esta información
se convierte en una fuente invaluable para el análisis de datos.

El análisis de redes sociales permite comprender las relaciones entre usuarios. Identificar
influenciadores, comunidades y patrones de conexión puede ser valioso para estrategias de
marketing, colaboraciones y toma de decisiones empresariales.

La información demográfica y de comportamiento recopilada a través de las redes sociales


permite a los anunciantes dirigir sus campañas de manera más efectiva. Se pueden crear perfiles
detallados de audiencia para personalizar los mensajes y optimizar el retorno de la inversión
publicitaria.

El seguimiento de temas candentes, hashtags y conversaciones en redes sociales proporciona


información inmediata sobre las tendencias emergentes. Esto es valioso tanto para empresas
que desean mantenerse actualizadas como para profesionales del marketing que buscan
capitalizar eventos y temas actuales.

El aprendizaje automático se utiliza para construir modelos predictivos basados en datos de


redes sociales. Estos modelos pueden predecir comportamientos futuros, como la probabilidad
de que un usuario compre un producto o participe en una conversación específica.
Introducción al Big Data y Business Intelligence

2.17.Teoría de grafos

La teoría de grafos es una rama de las matemáticas que estudia las relaciones entre entidades
mediante la representación gráfica de nodos y aristas. Un grafo se compone de un conjunto de
nodos (o vértices) y un conjunto de aristas (o conexiones) que establecen relaciones entre los
nodos. Estos nodos y aristas pueden tener diversas propiedades y direcciones. Los elementos
clave de la teoría de grafos son los siguientes:

• Nodo (Vértice): Representa una entidad individual en el grafo.


• Arista (Conexión): Indica una relación entre dos nodos. Puede ser no dirigida (sin
orientación) o dirigida (condirección).
• Grafo No Dirigido: Un tipo de grafo en el que las aristas no tienen dirección específica.
• Grafo Dirigido: Un tipo de grafo en el que las aristas tienen una dirección específica.
• Peso de la Arista: Algunas aristas pueden llevar un peso para representar la intensidad o
costo de la relación entre nodos.
• Ciclo: Una secuencia de nodos conectados que forma un bucle cerrado.
• Grado de un Nodo: El número de aristas conectadas a un nodo.
• Grafo Conexo: Un grafo en el que hay un camino entre cada par de nodos.

La teoría de grafos encuentra aplicaciones significativas en el análisis de redes sociales,


proporcionando herramientas para modelar, visualizar y entender las relaciones entre individuos
o entidades.

• Modelado de relaciones: Utiliza nodos para representar individuos y aristas para


representar las relaciones entre ellos. En una red social, los nodos pueden ser personas
y las aristas indican conexiones (amistad, seguimiento, interacción).
• Identificación de nodos centrales: Medidas como la centralidad pueden identificar
nodos centrales que son fundamentales en la red. La centralidad de intermediación
destaca aquellos nodos que conectan diferentes partes de la red.
• Análisis de comunidades: Algoritmos de partición de comunidades pueden identificar
grupos densamente conectados de nodos. Esto ayuda a comprender la estructura y
dinámica de las comunidades dentro de la red.
• Detección de clústeres: Busca agrupaciones naturales de nodos que puedan compartir
características comunes o estar fuertemente interconectados.
• Análisis de trayectorias: Se utiliza para encontrar la ruta más corta entre dos nodos o
para evaluar la accesibilidad en la red.
• Visualización gráfica: La representación gráfica de la red facilita la comprensión visual de
la estructura y las relaciones.
• Predicción de conexiones: Basándose en patrones de conexión existentes, se pueden
utilizar algoritmos para prever posibles nuevas conexiones en la red.
• Análisis de influencia: Identifica nodos que tienen un impacto significativo en la
propagación de información o influencia en la red.
Introducción al Big Data y Business Intelligence

2.18.Métodos Jerárquicos
Los métodos jerárquicos se centran en la creación de una jerarquía o estructura en capas dentro
de un grafo. Dos enfoques comunes son:
• Clustering Jerárquico: Este método agrupa nodos de manera jerárquica,
formando un árbol que representa la estructura de clusters o comunidades en
diferentes niveles de granularidad. Puede ser aglomerativo, comenzando con nodos
individuales y fusionando clusters, o divisivo, comenzando con el grafo completo y
dividiéndolo en clusters más pequeños.
• Árboles de Expansión Mínima: También conocidos como árboles de expansión mínima
jerárquicos, estos árboles buscan conectar todos los nodos de manera eficiente,
minimizando la longitud total de las aristas. Estos árboles pueden revelar la estructura
jerárquica subyacente en la red.

2.19.Métodos modulares
Los métodos modulares se centran en identificar comunidades o módulos dentro de un grafo,
donde los nodos dentro de un módulo están más densamente conectados entre sí que con nodos
fuera del módulo. Algunos métodos incluyen:

• Método de Newman-Girvan: Este método utiliza la medida de modularidad para


detectar comunidades en un grafo. La modularidad cuantifica la fuerza de la partición
de un grafo en comunidades y se esfuerza por maximizar esta medida.
• Louvain Modularity Optimization: Es un algoritmo popular para la detección de
comunidades que optimiza la modularidad. Se basa en la maximización de la
modularidad en cada paso del algoritmo, moviendo los nodos entre comunidades para
mejorar la partición.
• Algoritmos de Detección de Clústeres: Utilizan métodos iterativos para asignar nodos a
comunidades, maximizando la densidad interna y minimizando la densidad externa.
Ejemplos incluyen el algoritmo de Clauset-Newman-Moore y el algoritmo de Girvan-
Newman.

Estos métodos son esenciales para revelar patrones y estructuras en redes complejas, como las
Introducción al Big Data y Business Intelligence

redes sociales. Al aplicar métodos jerárquicos y modulares, los analistas pueden entender la
organización interna, identificar comunidades de nodos altamente interconectados y visualizar
la estructura de manera más clara. Estos enfoques son fundamentales para el análisis y la
interpretación de la información en grafos.

También podría gustarte