Analítica Digital - Resumen 1
Analítica Digital - Resumen 1
Analítica Digital - Resumen 1
Introducción en Data Analytics: Es la práctica de extraer y analizar datos para descubrir información
útil del negocio, con el objetivo de mejorar la toma de decisiones.
Arquitectura de Datos:
Es importante entender los distintos componentes que forman la arquitectura tecnológica de cada
compañía, para dar una solución específica al negocio. Sistemas transaccionales, ERP, Web Social,
Datos externos, IoT, Data Warehouse, HADOOP, Herramientas BI, Analytics y Discovery,
Tableros
Sistemas trans. Data Warehouse
Herramientas Herramientas
ETL BI, Analytics y Reportes
ERP Discovery
HADOOP
Web/Social
Ad Hoc Analytics
Datos externos
Geo Referencia
IoT
Otras APPS.
Niveles de madurez analítica
• Transportation.
• Risk Detection
• Risk Management
• Customer interaction
• Planning
• Healthcare
• Travelling
• Internet searching
• Digital advertisement
Roles en Data Analytics
• Data Analyst
• Data Scientist
• Data Engineer
• Data Governance
• Project Manager
• Business Analyst
• ¿Dónde hay más probabilidad de riesgo de que los datos estén incorrectos? Donde cargan
manualmente. Ver la consistencia de los datos.
• Validar + normalizar la data que este bien.
• Revisar si es porque no tuve disponible lo que pidió
• Si una oportunidad no se ganó ¿Por qué?
Desventaja Perdidas de recurso y tiempo para el proceso en caso de que no sea válido.
Ventajas: Es más flexible y no se pierde (te puedes equivocar)
• Estructura del trabajo: dividir las tareas en varias subtareas para ver los pasos que se deben
completar.
• Complejidad del Proyecto: si bien es difícil estimar una tarea compleja por sí misma, estimar
cada parte individual de la estructura de trabajo es
• más sencillo. Te permitirá tener una idea de lo compleja que es la tarea y cuánto tiempo
llevará terminarla.
• Costos: en la mayoría de las empresas, no podrá comenzar a trabajar en proyectos si no se
explica y defiende los costos y recursos requeridos primero.
30/03/2023
Que muestren como venimos, para revelar nuestras fuerzas y debilidades. ¿Cómo mostrarlo? A través
de Dashboards, Tableau, Power BI. Deben ser simples, entendimiento sin explicar.
Clase de recuperación
FERIADO (Ver recuperación de clase online)
SLA: El porcentaje de entregas on-time debe estar por arriba del 98%, sobre el total de entregas realizadas.
Relevamiento de Información
Taller Práctico #1
Data Cleansing o Limpieza de datos es el proceso de detectar y corregir (o eliminar) registros
incorrectos o corruptos de un conjunto de datos, tabla o base de datos. Identificar las partes
incompletas, incorrectas, inexactas o irrelevantes, y sustituir, modificar o eliminar los datos erróneos.
El proceso de depuración de datos puede hacerse de forma interactiva, con herramientas de “ETL”,
o en batch, a través de la ejecución de scripts.
• Descartar campos
• Igualar formatos
• Corregir errores ortográficos
• Dar formato a fechas
• Eliminar columnas duplicadas
• Borrar registros no útiles
Perfilado
Perfilado individual
• Valores booleanos codificados como bits {0,1}
• Sexo {Hombre, Mujer}
• Total, minuto llamadas diarias (24min)
Perfilado en conjunto
Transformación
20/04/2023
Taller Practico #2
Clase Power BI practica (Yamir)
SLA: Contrato legal que tenemos que cumplir con el objetivo de la empresa.
• Compañía: empresa de logística que presta servicio a algunos de los clientes más grandes del
país.
• Equipo de trabajo: Customer Experience
SLA: el porcentaje de entregas on-time debe estar por arriba del 98%, sobre el total de entregas
realizadas.
Proyecto Data Analytics (replicar el ciclo del ppt)
Trabajo práctico
• Entrega informe: jueves 22/6
o 10-12 páginas
• Presentación grupal: 29/6
o 10-12min de presentación
Monolitico.
Tipos de Datos:
Datos de los datos:
18 meses que tardan en duplicarse los datos.
90% porcentaje de datos creados en los últimos 2 años.
40 meses que tardan en duplicarse la capacidad de almacenamiento.
90% Porcentaje de reducción del costo de almacenamiento.
3k Aumento de la capacidad de procesamiento desde el año 2000.
60 segundos que tardan en procesarse millones de transacciones.
80% Porcentaje de información no estructurada.
Diferencia: el warehouse necesita que, si sea estructurada, distinto al lake que puedo colocar la
información como venga. *ver ppt*
Las V del Big Data
Volumen
Velocidad
Variedad
Data Governance
• Disponibilidad de datos
• Roles, responsabilidades y reglas
• Aseguramiento de los datos
• Estructura empresarial en base a datos
Principios
Data catalog: Organiza los datos, aportando gran valor agregado a la solución de Big Data.
In the simplest sense, parallel computing is the simultaneous use of multiple compute resources to
solve a computational problem:
What is the role of distributed computing in cloud computing? Distributed computing and cloud
computing are not mutually exclusive. Distributed computing is essentially a variant of cloud computing
that operates on a distributed cloud network.
Edge computing is a type of cloud computing that works with data centers or PoPs placed near end-
users. With data centers located physically close to the source of the network traffic, applications serve
users’ requests faster.
Distributed clouds utilize resources spread over a network, irrespective of where they have users.
Cloud architects combine these two approaches to build performance-oriented cloud computing
networks that serve global network traffic with maximum uptime.
Distributed computing connects hardware and software resources to accomplish many things,
including:
¿Qué ocurre cuando creas una aplicación como una unidad implementable única que funciona
relativamente bien, pero cuyo tamaño y complejidad aumentan con el tiempo? Normalmente su
mantenimiento se complica, se ralentiza la velocidad de desarrollo y es más fácil que se produzcan
errores. En ese caso, lo habitual es convertir el sistema monolítico en un sistema distribuido, por lo
general, una arquitectura de microservicios.
¿Qué es un sistema distribuido?
• Recursos compartidos: los sistemas distribuidos pueden compartir hardware, software o datos
• Procesamiento simultáneo: varias máquinas pueden procesar la misma función a la vez
• Escalabilidad: la capacidad computacional y de procesamiento puede escalarse hacia arriba
según sea necesario cuando se añaden máquinas adicionales
• Detección de errores: los errores se pueden detectar más fácilmente
• Transparencia: un nodo puede acceder a otros nodos del sistema y comunicarse con ellos
Un sistema de computación centralizado es aquel en el que todos los cálculos los realiza un solo
ordenador en una ubicación. La principal diferencia entre un sistema centralizado y un sistema
distribuido es el patrón de comunicación entre los nodos del sistema. El estado de un sistema
centralizado se encuentra dentro de un nodo central al que los clientes acceden a través de un método
personalizado. Todos los nodos de un sistema centralizado acceden al nodo central, lo que puede
sobrecargar y ralentizar la red. Los sistemas centralizados tienen un punto de error único. Este no es el
caso de los sistemas distribuidos.
El seguimiento distribuido es un método que se utiliza para perfilar o supervisar el resultado de una
solicitud que se ejecuta en un sistema distribuido. La supervisión de un sistema distribuido puede ser
complicada porque cada nodo tiene su propio flujo de registros y métricas. Para obtener una visión
precisa de un sistema distribuido, estas distintas métricas de nodos deben agruparse en una vista
holística.
Normalmente, las solicitudes que se envían a los sistemas distribuidos no acceden a todo el conjunto
de nodos del sistema, sino a un conjunto parcial o a una ruta a través de los nodos. El seguimiento
distribuido señala las rutas a las que se accede habitualmente a través de un sistema distribuido y
permite que los equipos las analicen y las supervisen. El seguimiento distribuido se instala en cada
nodo del sistema y permite que los equipos pidan al sistema información sobre el estado de los nodos
y el rendimiento de la solicitud.
Los sistemas distribuidos suelen contribuir a mejorar la fiabilidad y el rendimiento del sistema. La
fiabilidad se mejora eliminando los puntos de error centrales y los cuellos de botella. Los nodos de un
sistema distribuido ofrecen redundancia, de modo que, si un nodo falla, hay otros que pueden
sustituirlos y reparar el error. El rendimiento se mejora porque los nodos pueden escalarse fácilmente
en sentido horizontal y vertical. Si un sistema se somete a una carga extensiva, pueden añadirse nodos
adicionales para ayudar a absorber dicha carga. También es posible aumentar la capacidad de un nodo
concreto para gestionar una carga extensiva.
Sin embargo, uno de los inconvenientes que presentan estos sistemas puede ser la "expansión del
desarrollo", que implica que los sistemas acaban siendo excesivamente complejos y difíciles de
mantener. Esta mayor complejidad puede complicar a los equipos las tareas de organización, gestión
y mejora de estos sistemas. Parte de la dificultad puede ser entender la relación que hay entre los
distintos componentes o quién posee un componente de software concreto. Esto hace que sea difícil
saber cómo modificar los componentes para maximizar su rendimiento y evitar que ello tenga un
impacto negativo no solo en los componentes dependientes, sino también en los clientes. Cuando un
sistema distribuido tiene varios repositorios, puede que sea necesario utilizar herramientas
especializadas como Atlassian Compass para gestionar y organizar el código del sistema.
Hay muchos tipos de sistemas distribuidos. Estos son los más habituales:
Por capas: Una arquitectura por capas amplía la arquitectura cliente-servidor. En ella, el servidor se
descompone en otros nodos granulares, que desacoplan responsabilidades adicionales del servidor
backend, como el procesamiento y la gestión de los datos. Estos nodos adicionales se usan para
procesar de forma asíncrona las tareas de larga duración y liberar al resto de los nodos del backend
para que puedan centrarse en responder a las solicitudes del cliente e interactuar con el almacén de
datos.
Punto a punto: En un sistema distribuido punto a punto, cada nodo contiene la instancia completa de
una aplicación. No hay separación de nodos entre la presentación y el procesamiento de datos. Un nodo
contiene la capa de presentación y las capas de gestión de datos. Los otros nodos pueden contener
todos los datos de estado del sistema.
Los sistemas punto a punto tienen la ventaja de ser extremadamente redundantes. Cuando un nodo
punto a punto se inicializa y se lleva online, descubre otros nodos, se conecta a ellos y sincroniza su
estado local con el estado de todo el sistema. Por ello, si en un sistema punto a punto un nodo falla, los
demás nodos no se verán afectados. Además, el sistema punto a punto persistirá.
Los microservicios son una alternativa más popular a la arquitectura SOA debido a las ventajas que
ofrecen. Son más modulares, ya que permiten a los equipos reutilizar funcionalidades que proporcionan
los nodos de servicio pequeños. También son más sólidos y permiten realizar un escalado vertical y
horizontal más dinámico.
Muchas aplicaciones modernas utilizan sistemas distribuidos. Las aplicaciones web y móviles con
mucho tráfico son sistemas distribuidos. Los usuarios se conectan siguiendo un modelo cliente-
servidor, donde el cliente es un navegador web o una aplicación móvil. El servidor es pues su propio
sistema distribuido. Los servidores web modernos siguen un patrón de sistema por capas. Se utiliza
un equilibrador de carga para delegar las solicitudes a muchos nodos lógicos de servidor que se
comunican a través de sistemas de cola de mensajes.
Kubernetes es una herramienta muy utilizada en los sistemas distribuidos porque puede crear un
sistema distribuido a partir de una colección de contenedores. Los contenedores crean nodos del
sistema distribuido y Kubernetes orquesta la comunicación de red entre esos nodos, además de
gestionar el escalado dinámico horizontal y vertical de los nodos en el sistema.
Otro buen ejemplo de sistema distribuido son las criptomonedas, como Bitcoin y Ethereum, que son
sistemas distribuidos punto a punto. Cada nodo de una red de criptomoneda es una réplica
independiente de todo el historial del libro mayor de la moneda. Cuando un nodo de moneda se lleva
online, se pone en funcionamiento conectándose a otros nodos y descargando su copia completa del
libro mayor. Además, las criptomonedas tienen clientes o "carteras" que se conectan a los nodos del
libro mayor a través del protocolo JSON RPC.
Computación en la nube: On-premises, IaaS, PaaS, SaaS. Entrega a demanda de servicios
informáticos, a través de Internet ("la nube") para ofrecer una velocidad, flexibilidad y escalabilidad.
• Master slave: Modelo de arquitectura distribuida centralizado, en el que contamos con una
organización jerárquica entre las máquinas, diferenciando dos clases de nodos en la red.
• Bases de datos no relacionales
• MAD
04/05/2023
Parcial 1 Analítica
A la hora de hacer la extracción de datos. ¿Qué tipos de datos existen? * Estructurados,
Semiestructurados, No estructurados.
Verdadero o falso (justificar). Data Analytics es la práctica de extraer ciertos datos para
potenciar las ventas de la compañía. Falso, no necesariamente, la práctica se centra en analizar
datos para ayudar a los negocios sea con diferentes aplicaciones como: Transportation, Risk
Detection, Risk Management, Customer interaction, Planning, Healthcare, Travelling, Internet
searching, Digital advertisement y así hacer más eficiente a la compañía.
¿Desde que instancia para almacenar datos podemos conectar reportes y tableros visuales, con
la intención exponer conclusiones e insights? (No la sé)
¿Qué tipo de perfilados de datos existen? El perfilado es el conjunto de acciones que permiten
conocer el contenido de los datos, evaluar su calidad y validar si se obtienen resultados correctos al
aplicar transformaciones. Existe Perfilado individual (valores literales o interpretados de un campo),
perfilado en conjunto (estadísticas, distribuciones de datos, representación en mapas).
¿Cuales de estas opciones son correctas? Podemos afirmar con total certeza que los beneficios
de trabajar con Data Analytics son los siguientes:
• Se transforman los procesos y se reducen los esfuerzos: al utilizar técnicas de análisis de datos,
es posible identificar áreas de mejora y optimizar procesos, lo que puede reducir los esfuerzos
necesarios para llevar a cabo una tarea determinada.
• Se fortalecen las habilidades técnicas y funcionales de los equipos: trabajar con Data Analytics
puede requerir habilidades técnicas y funcionales específicas, y al involucrarse en este tipo de
proyectos, los equipos pueden adquirir nuevas habilidades y conocimientos.
• Se capturan y procesan grandes volúmenes de información interna y externa: el análisis de
grandes volúmenes de datos (Big Data) puede proporcionar información valiosa para la toma
de decisiones, ya que puede identificar patrones, tendencias y relaciones que de otra manera
serían difíciles de detectar.
DAX nos permite crear Medidas y Columnas dinámicas en Power BI. ¿Cuál es la diferencia
principal entre estos 2 elementos?
Las medidas se utilizan directamente para visualizar según el filtro aplicado y las columnas se utilizan
para guardar los valores que se calcularon y mostrarlos en una tabla especifica.
Verdadero o falso (justificar). El rol del Data Scientist es gestionar los proyectos de datos de
forma integral y emitir alertas cuando existe algún desvío significativo.
Verdadero o falso (justificar). PowerQuery es la herramienta de ETL que nos ofrece PowerBI
para tratar datos; esta herramienta usa Lenguaje DAX para generar scripts de modificaciones
sobre los datos originales. la afirmación es falsa. Power Query es la herramienta de ETL que nos
ofrece Power BI para tratar datos, pero no utiliza el lenguaje DAX para generar scripts de
modificaciones sobre los datos originales. En su lugar, Power Query utiliza su propio lenguaje de
fórmulas llamado M para realizar transformaciones en los datos de origen antes de cargarlos en Power
BI.