Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. LA GESTIÓN DE DATOS
• Datos estructurados, semiestructurados y no estructurados
Descubrimiento del conocimiento en bases de datos (KDD)
Proceso que permite transformar el dato en valor en bases de datos (Knowledge Discovery in Databases)
Tipo de sistemas:
• Sisteas transaccionales o operacionales
• Sistemas intermedios
• Sistemas informacioneales → almacenes de datos
DLM o ILM (Data/Information Life Cycle Management) → no es un software sino un enfoque para gestionar el flujo de
datos de un sistema de información
Ciclo de vida de los datos: captura / organización / integración / análisis / actuación
COMPUTACIÓN EN LA NUBE
Ordenadores paralelos (decenas)
Clusters (cientos)
Grid computing (miles) → concepto acuñado en los 90. Tener interconectados clusters de ornedadores a través de
internet, de forma que tienes un sist. Informatico con muchos procesadores
Cloud computing → concepto diferente aunque a veces puedan ser complementarios. Serviciios que se ofrecen a
través de internet. Proveedor de servicios. Se paga según se consuma: accesible + mantenimiento + elasticidad + pago
por uso
Analytics as a service AaaS y Big Data as a Service BdaaS → servicios de análisis de big data que pueden ser ofrecidos
por nubes privadas, publicas o hibridas → se paga por la cantidad de datos analizados y el tiempo
Analisis de sentimientos
• Dificultades para identificar entre conversaciones positivas y negativas
• Las palabras claves y temáticas pueden resultar decepcionantes
NUEVOS ROLES
Chef Financial Officer (CFO) → Director financiero
Cher Marketing Officer (CMO) → Director de Marketing
Chef Strategy Officer (CSO) → Director de estrategia
Chief Data Officer (CDO) → Director de datos (tecnico responsable gobernabilidad datos empresa). Coordina:
procesamiento+analisis+mineria de datos y gestión información
Chief Data Scientist (CDS) →cientifico de datos. No necesariamente ligado a big data siempre.
Chief Data Steward → administrador o auxiliar de datos → encargado de la gestión de todos aquellos elementos
relacionados con los datos (datos, metadatos, indices)
1. Identificación de datos
Fuentes de datos internas
• Bases de datos transaccionales (OLTP) → ERP, CRM, …
• Sistemas de información analíticos (sistemas departamentales) → presupuestos, planes de proyecto, … (info
estructurada o no estructurada)
Fuentes de datos externas → se obtiene normalmente a través de APIs
• Información de profesionales expertos
• Datos que enriquecen info de nuestros clientes
• Información de máquinas y sensores
• Dispositivos moviles
• Datos opendata (ftp, soap o rest, SQPRQL, APIs ODBC o JDBC), redes sociales
Tecnicas de profiling → análisis estadístico de los valores de los datos para evaluar su consistencia, originalidad y lógica
→ permite identificar datos erroneos o imprecisos
Tecnica de sampling →estimar la calidad de los datos mediante análisis estadístico de un subconjunto de datos, en vez
de analizar el conjunto completo → tener en cuenta representatividad
2. ETL
1. Extracción
2. Limpieza
1. Operaciones de Preparación de datos
◦ Discretización → criterio que permite dividir los valores de un atributo en varios subconjuntos
(mayores de 20, minores)
◦ Normalización → situar los datos sobre una escala de valores
1. Tratamiento de la falta de datos
2. Limpieza de datos (incompletos, redundantes, incorrectos, errores de transcripcion, datos envejecidos,
datos sesgados )
3. Transformación → definición de una serie de reglas de negocio
• De datos númericos a categoricos y viceversa
• Simplificación de valores
• Agrupación de valores continuos
• Normalizacion de datos
• Añadir una etiqueta
• Conversión de unidades
• Agregación de columnas, dividir una columna en varias
• Generalizacion
• Lookups → se toma un dato y se compara con otro dato cruzando información (ej: a través del dni)
• Unir datos de varias fuentes
4. Carga ( mover del almacen operacional o intermedio)
• Carga inicial → historicos
• Mantenimiento periodico (TAL (trunc and load)→limpia y vuelve a cargar; o incremental). Conviene
calcular los indices después de la carga.
Datos deben tener: correctitud + coherencia + completitud
5. RECOLECCIÓN DE DATOS
Modelos de datos → Modelo conceptual (identifica relaciones a más alto nivle), Modelo logico (entidades, atributos y
relaciones), Modelo físico (aplicación especifica de un modelo de datos logico)
Modelo multidimensional → tecnica para presentación de datos analítica (permite consulta rapida + representación
datos de manera entendible) → forma de cubos → es un modelo conceptual
• Dimensiones (dimension table)→
• Hechos (fact table)→ los elementos que se quieren medir (cantidad vendida)
Para convertir en modelo logico:
1. MOLAP → Modelo logico multidimensional: almacenamiento de dimensiones en matrices → acceso rapido a
operaciones OLAP. Problemas cuando muchas dimensiones.
(+): consultas más rápidas + menor tamaño + automatizacion procesamientos de datos agregados de mayor
nivel + indexacion natural + muy compacto cuando pocas dimensiones
2. ROLAP → Modelo logico relacinal
Modelo estrella → traduce modelo multidimensional a tablas relacionales (para bases de datos relacionales)
→ dio pupularidad Kimball (popularidad en sistemas de BI)
BIG DATA y BI → Utilizan tanto cubos OLAP (obtimización calculo, indexacion y rendimiento. → gran carga
computacional) como esquemas en estrella.
Los dos:
• Tamaño bloque normal (4-128kb) → estos (64-128MB) → Sólo son eficientes con ficheros grandes, no con
pequeños
• Sist Fich Dist → Escalabilidad horizontal → mejorar rendimiento añadiendo nuevos nodos → más capacidad +
más entradas y salidas paralelas
• Distribución a nivel de bloque no a nivel de fichero
(-)
• La probabilidad de que falle un nodo aumenta
• HDFS utiliza factor de replicación de 3 (cada bloque 3 replicas en nodos distintos) → tiene en cuenta la
topologia → 2 replicas en el mismo rack y 3 en rack diferente
BBDD NO RELACIONALES
NoSQL (Not only SQL) → la mayoría no utilizan SQL pero existen algunos que lo utilizan
• Relacionales → datos estructurados, NoSQL → datos semiestructurados
• Relacionales → ideadas para ser transaccionales (OLTP) → garantizan principios ACID (atomicidad,
consistencia, aislamiento, durabilidad), las no relacionales no ofrecen esto.
• Relacionales permiten combinación a través de JOIN, las no realcionales NO
• Las relacionales no escalan bien (no escalabilidad horizontal), las NoSQL SI
(*) ACID y Join aumenta tiempos de respuesta en BBDD no relacionales
BBDD relacionales → Amazon RDS (Relational Database Service) → servicio amazon para DB relacionales
Google Cloud → CloudSQL
Stream processing → además de gran volumen puede haber demanda de gran velocidad (ejemplo: calcular el trend
topic en Twitter)
Storm → desarrollada por Twitter para dar respuesta a estas necesidades
MAP REDUCE
Es un paradigma para resolver un tipo de problema. Surge de la necesidad de Google de dar respuesta a una necesidad
de procesamiento masivo de datos. Procesamiento distribuido, tareas se dividen en subtareas que se reparten en
diferentes nodos de un cluster. Cada uno ejectua la suyo y finalmenet los resultados se agregan.
Los programas que emplean este paradigma tienen dos rutinas: rutina map y reduce. Entre ambas, el sistema ejecuta
una fase llamada shuffle.
Rutina map → mapping (mapeo) de los datos de entrada, cambio de dominio. Conversión de la entrada y si fuera
necesario un filtrado de los datos. Por cada tupa <A,B> devuelve un conjunto n de tupas <An, Bn>
Fase shuffle → tudas las tuplas generadas como salida de rutina map se ordenan y agrupan por clave. Tuplas que
contienen una clave y un conjunto de valores. Se asemeja a GROUP BY
Rutina reduce → agregación de los datos mapeados con anterioridad (parecido a SUM, COUNT, AVG)
Nodo nimbus → se ocupa de la gestión del trabajo (igual que el JobTracker de Hadoop). Este distribuye las tareas sobre
el resto de nodos de la topologia (igual que el TaskTracker de Hadoop) → también llamado nodo maestro. No ejecuta
trabajo.
Nodo supervisor → se encarga de iniciar o parar trabajos que envía nodo nimbus → también conocidos como nodos
esclavos
Zookeeper → guarda el estado del trabajo en cada momento para garantizar que si ocurre un fallo, este se replique en
otro nodo.
Storm es más toleranto a fallos que Hadoop
Topologias en STORM → nodos Spouts (encargados de obtención y preprocesado de datos: siempre son nodos de
origen, nunca intermedios ni finales) y Bolts (procesado intermedio o final de las tuplas. Nunca origen).
EN LA NUBE
• Amazon Elastic MapReduce (EMR)
• Google BigQuery → permite realizar analisis Big Data usando consultas SQL. Permite hacer JOIN entre tablas.
• Azure Spark → permite usar plataforma HDInsights para crar clustes
Machine Learning: conjunto de tecnicas de la inteligencia artificial que permite descubrir patrones y aprender
modelos a partir de los datos.
Aprendizaje supervisado: una rema de ML, en los que los datos están etiquetados (aprender un modelo a través de
datos que están etiquetados. A partir de aquí debe poder asignar la etiqueta a ciertos datos cuya etiqueta se
desconoce. Instancia = cada uno de los elementos que conforman nuestros datos.
Modelos de aprendizaje supervisado:
• Modelos probabilisticos (distribución de probabilidades que permiten inferir el valor de una clase).
• Modelos logicos (buscar reclas para determinar el valor de una clase)
• Modelos geometricos
Técnicas de clasificación
• Arboles de decisión → inferir la clase de una instancia mediante realización de preguntas sobre atributos
(Modelo logico)
• Naive Bayes → tecnica de aprendizaje aut supervisado, aprende modelos probabilisticos para poder realizar
una predicción de clas (Modelo probabilistico)
• k-neareste neighboards → tecnica de clasificación vaga (exige entrenamiento del modelo)
• Tecnicas de regresión → se busca predecir un valor númerico en funcuón de los valores de atributos de una
instancia.
◦ Regresión lineal
◦ Arboles de regresión → iguales a arboles de decision, pero las hojas no contienen una clase sino un valor
numérico.
• Redes neuronales
Aprendizaje no supervisado
Las instancias no dotadas de una etiqueta → objetivo no predecir clase, sino detectar que varias instancias son
similares en función de una medida de distancia dada. Ha esto se le llama clustering
Funciones de distancia:
• Distancia euclidea → longitud del segmento de linea recta entre dos puntos, en espacio euclideo. Importante
normalizar los valores para que todos los atributos el mismo peso.
• Distancia manhattan → mínima suma de las longitudes de los segmentos que habría que cruzar en una rejilla
para unir dos puntos.
• Distancia coseno → angulo que forman las dos distancias si se consideran vectores en un espacio geométrico.
Técnicas de clustering
• Basadas en conexiones (clustering jerárquico)
• Basadas en centroides
• Basadas en distribuciones
• Basadas en densidades
•
9. VISUALIZACIÓN Y CONSUMO
Herramientas de cuadros de mando como : Weka, RapidMiner, Tableau, QlickView