Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUCCION
En las últimas décadas, la cantidad de datos que los sistemas, aplicaciones y dispositivos
han generado ha aumentado significativamente. Los datos están en todas partes. Los
datos están disponibles en diferentes estructuras y formatos. Comprender los datos y
explorarlos revela hechos interesantes y lo ayuda a obtener información significativa.
En este módulo, aprenderá cómo puede organizar y procesar datos. Aprenderá sobre
bases de datos relacionales y no relacionales, y cómo se manejan los datos a través del
procesamiento transaccional y a través del procesamiento de datos por lotes y de
transmisión.
Imagine que es un analista de datos para una gran organización de consumidores. La
organización quiere comprender los patrones de compra de los clientes en los
supermercados. La organización tiene una serie de conjuntos de datos de diferentes
fuentes, como información de caja (punto de venta), datos meteorológicos y datos de
vacaciones. A la organización le gustaría usar las tecnologías de Azure para comprender y
analizar estos conjuntos de datos.
OBJETIVOS DE APRENDIZAJE
En este módulo podrás:
El acceso de solo lectura significa que los usuarios pueden leer datos, pero no
pueden modificar ningún dato existente o crear nuevos datos.
El acceso de lectura / escritura brinda a los usuarios la capacidad de ver y modificar
datos existentes.
El privilegio de propietario brinda acceso completo a los datos, incluida la
administración de la seguridad, como agregar nuevos usuarios y eliminar el acceso
a los usuarios existentes.
También puede definir qué usuarios deberían poder acceder a los datos en primer lugar. Si
los datos son confidenciales (o secretos), es posible que desee restringir el acceso a
algunos usuarios seleccionados.
DESCRIBIR LAS SOLUCIONES DE PROCESAMIENTO DE DATOS.
Las soluciones de procesamiento de datos a menudo se dividen en una de dos grandes
categorías: sistemas analíticos y sistemas de procesamiento de transacciones.
Atomicity garantiza que cada transacción se trate como una sola unidad, que tiene
éxito por completo o falla por completo. Si alguna de las declaraciones que
constituyen una transacción no se completa, la transacción completa falla y la base
de datos no se modifica. Un sistema atómico debe garantizar la atomicidad en
todas y cada una de las situaciones, incluyendo fallas de energía, errores y fallas.
La coherencia garantiza que una transacción solo pueda llevar los datos de la base
de datos de un estado válido a otro. Una base de datos consistente nunca debe
perder o crear datos de una manera que no se pueda tener en cuenta. En el
ejemplo de transferencia bancaria descrito anteriormente, si agrega fondos a una
cuenta, debe haber una deducción de fondos correspondiente en algún lugar, o un
registro que describa de dónde provienen los fondos si se han recibido
externamente. No puedes crear (o perder) dinero de repente.
La durabilidad garantiza que una vez que se haya comprometido una transacción,
seguirá siéndolo incluso si hay una falla del sistema, como un corte de energía o un
bloqueo.
Los sistemas de bases de datos que procesan cargas de trabajo transaccionales son
intrínsecamente complejos. Necesitan administrar usuarios concurrentes que
posiblemente intenten acceder y modificar los mismos datos al mismo tiempo,
procesando las transacciones de forma aislada mientras mantienen la base de
datos consistente y recuperable. Muchos sistemas implementan consistencia
relacional y aislamiento mediante la aplicación de bloqueos a los datos cuando se
actualizan. El bloqueo evita que otro proceso lea los datos hasta que se libere el
bloqueo. El bloqueo solo se libera cuando la transacción se confirma o revierte. El
bloqueo extenso puede conducir a un bajo rendimiento, mientras que las
aplicaciones esperan a que se liberen los bloqueos.
Las bases de datos distribuidas son ampliamente utilizadas en muchas
organizaciones. Una base de datos distribuida es una base de datos en la que los
datos se almacenan en diferentes ubicaciones físicas. Se puede guardar en varias
computadoras ubicadas en la misma ubicación física (por ejemplo, un centro de
datos), o se puede dispersar en una red de computadoras interconectadas. En
comparación con los sistemas de bases de datos no distribuidas, cualquier
actualización de datos a una base de datos distribuida tomará tiempo en aplicarse
en múltiples ubicaciones. Si necesita consistencia transaccional en este escenario,
los bloqueos pueden conservarse durante mucho tiempo, especialmente si hay una
falla de red entre las bases de datos en un momento crítico. Para contrarrestar este
problema, muchos sistemas de administración de bases de datos distribuidas
relajan los estrictos requisitos de aislamiento de las transacciones e
implementan "consistencia eventual”. En esta forma de coherencia, a medida que
una aplicación escribe datos, cada cambio es registrado por un servidor y luego
propagado a los otros servidores en el sistema de base de datos distribuido de
forma asincrónica. Si bien esta estrategia ayuda a minimizar la latencia, puede
generar inconsistencias temporales en los datos. La consistencia eventual es ideal
cuando la aplicación no requiere ninguna garantía de pedido. Los ejemplos
incluyen recuentos de acciones, me gusta o comentarios sin hilos en un sistema de
redes sociales.
Las cargas de trabajo analíticas suelen ser sistemas de solo lectura que almacenan
grandes volúmenes de datos históricos o métricas comerciales, como el
rendimiento de ventas y los niveles de inventario. Las cargas de trabajo analíticas
se utilizan para el análisis de datos y la toma de decisiones. Los análisis se generan
al agregar los hechos presentados por los datos sin procesar en resúmenes,
tendencias y otros tipos de "información comercial".
Los análisis pueden basarse en una instantánea de los datos en un momento dado
o en una serie de instantáneas. Las personas que están más arriba en la jerarquía
de la empresa generalmente no requieren todos los detalles de cada transacción.
Quieren la imagen más grande.
Alcance de los datos: los datos por lotes pueden procesar todos los datos del
conjunto de datos. El procesamiento de flujo generalmente solo tiene acceso a los
datos recibidos más recientes, o dentro de una ventana de tiempo variable (los
últimos 30 segundos, por ejemplo).
Tamaño de datos: los datos por lotes son adecuados para manejar grandes
conjuntos de datos de manera eficiente. El procesamiento de flujo está destinado
a registros individuales o micro lotes que consisten en pocos registros.
Rendimiento: la latencia para el procesamiento por lotes suele ser de unas pocas
horas. El procesamiento de flujo generalmente ocurre de inmediato, con una
latencia del orden de segundos o milisegundos. La latencia es el tiempo que se
tarda en recibir y procesar los datos.
Análisis: por lo general, utiliza el procesamiento por lotes para realizar análisis
complejos. El procesamiento de flujo se utiliza para funciones de respuesta
simples, agregados o cálculos, como promedios móviles.
COMPRUEBA TU CONOCIMIENTO
EXPLORE LOS ROLES LABORALES EN EL MUNDO DE LOS DATOS
INTRODUCCIÓN
Durante la última década, la cantidad de datos que generan los sistemas y
dispositivos ha aumentado significativamente. Debido a este aumento, las
nuevas tecnologías, roles y enfoques para trabajar con datos están afectando
a los profesionales de datos. Los profesionales de datos generalmente
cumplen diferentes roles cuando administran, usan y controlan datos. En
este módulo, aprenderá sobre los diversos roles que las organizaciones a
menudo aplican a los profesionales de datos, y las tareas y responsabilidades
asociadas con estos roles.
OBJETIVOS DE APRENDIZAJE
En este módulo podrás:
Explore los roles de trabajo de datos
Explore tareas y herramientas comunes para roles de trabajo de datos
Puede combinar los datos de varias tablas en una consulta mediante una
operación de combinación. Una operación de unión abarca las relaciones
entre tablas, lo que le permite recuperar los datos de más de una tabla a la
vez. La siguiente consulta recupera el nombre de cada cliente, junto con el
nombre del producto y la cantidad de cada pedido que han realizado.
Observe que cada columna está calificada con la tabla a la que pertenece:
Puede encontrar todos los detalles sobre SQL en el sitio web de Microsoft, en
la página del Lenguaje de consulta estructurado (SQL).
EXPLORE CASOS DE USO DE BASES DE DATOS RELACIONALES
Puede usar una base de datos relacional siempre que pueda modelar
fácilmente sus datos como una colección de tablas con un conjunto fijo de
columnas. En teoría, podría modelar casi cualquier conjunto de datos de esta
manera, pero algunos escenarios se prestan al modelo relacional mejor que
otros.
Por ejemplo, si tiene una colección de música, video u otros archivos
multimedia, intentar forzar estos datos en el modelo relacional podría ser
difícil. Puede que sea mejor usar almacenamiento no estructurado, como el
disponible en Azure Blob Storage. Del mismo modo, los sitios de redes
sociales utilizan bases de datos para almacenar datos sobre millones de
usuarios, junto con fotografías y otra información sobre esos usuarios y
otros. Este tipo de datos se presta más a una estructura de base de datos
gráfica que a una colección de tablas relacionales.
Las bases de datos relacionales se usan comúnmente en los sistemas de
comercio electrónico, pero uno de los principales casos de uso para usar
bases de datos relacionales es el procesamiento de transacciones en línea
(OLTP). Las aplicaciones OLTP se centran en tareas orientadas a transacciones
que procesan una gran cantidad de transacciones por minuto. Las bases de
datos relacionales son muy adecuadas para aplicaciones OLTP porque,
naturalmente, admiten operaciones de inserción, actualización y eliminación.
Una base de datos relacional a menudo se puede ajustar para agilizar estas
operaciones. Además, la naturaleza de SQL facilita a los usuarios realizar
consultas ad-hoc sobre datos.
Ejemplos de aplicaciones OLTP que usan bases de datos relacionales son
soluciones bancarias, aplicaciones minoristas en línea, sistemas de reserva de
vuelos y muchas aplicaciones de compras en línea.
EXPLORE ESTRUCTURAS DE DATOS RELACIONALES
Una base de datos relacional comprende un conjunto de tablas. Una tabla
puede tener cero (si la tabla está vacía) o más filas. Cada tabla tiene un
conjunto fijo de columnas. Puede definir relaciones entre tablas usando
claves primarias y externas, y puede acceder a los datos en tablas usando
SQL.
Además de las tablas, una base de datos relacional típica contiene otras
estructuras que ayudan a optimizar la organización de los datos y a mejorar
la velocidad de acceso. En esta unidad, verás dos de estas estructuras con
más detalle: índices y vistas.
¿QUÉ ES UN ÍNDICE?
Un índice lo ayuda a buscar datos en una tabla. Piense en un índice sobre una
mesa como un índice al final de un libro. Un índice de libro contiene un
conjunto ordenado de referencias, con las páginas en las que se produce
cada referencia. Cuando desee encontrar una referencia a un elemento en el
libro, búsquela a través del índice. Puede usar los números de página en el
índice para ir directamente a las páginas correctas del libro. Sin un índice, es
posible que tenga que leer todo el libro para encontrar las referencias que
está buscando.
Puede crear muchos índices en una tabla. Por lo tanto, si también desea
encontrar todos los pedidos de un producto específico, sería útil crear otro
índice en la columna ID del producto en la tabla Pedidos. Sin embargo, los
índices no son gratuitos. Un índice puede consumir espacio de
almacenamiento adicional, y cada vez que inserte, actualice o elimine datos
en una tabla, los índices para esa tabla deben mantenerse. Este trabajo
adicional puede ralentizar las operaciones de inserción, actualización y
eliminación e incurrir en cargos de procesamiento adicionales. Por lo tanto, al
decidir qué índices crear, debe lograr un equilibrio entre tener índices que
aceleren sus consultas versus el costo de realizar otras operaciones. En una
tabla que es de solo lectura, o que contiene datos que se modifican con poca
frecuencia, más índices mejorarán el rendimiento de la consulta. Si una tabla
se consulta con poca frecuencia,
Algunos sistemas de gestión de bases de datos relacionales también admiten
índices agrupados. Un índice agrupado reorganiza físicamente una tabla por
la clave de índice. Esta disposición puede mejorar aún más el rendimiento de
las consultas, ya que el sistema de gestión de bases de datos relacionales no
tiene que seguir las referencias del índice para encontrar los datos
correspondientes en la tabla subyacente. La siguiente imagen muestra la
tabla de pedidos con un índice agrupado en la columna de ID de cliente.
Puede consultar la vista y filtrar los datos de la misma manera que una tabla.
La siguiente consulta encuentra los pedidos para el cliente C1 utilizando la
vista. Esta consulta solo devolverá pedidos para el producto P1 realizados por
el cliente:
Una vista también puede unir tablas. Si regularmente necesita encontrar los
detalles de los clientes y los productos que han pedido, puede crear una vista
basada en la consulta de combinación que se muestra en la unidad anterior:
En este ejemplo, los campos tienen como prefijo un nombre. Los campos
también pueden tener múltiples subcampos, también con nombres. En el
ejemplo, varios subcampos se denotan encerrándolos entre corchetes.
Agregar un nuevo cliente es cuestión de insertar una entidad con sus campos
etiquetados de manera significativa. Una aplicación que consulta estos datos
debe estar preparada para analizar la información en la entidad que
recupera.
Las capacidades de recuperación de datos de una base de datos no relacional
pueden variar. Cada entidad debe tener un valor clave único. Las entidades
en una colección generalmente se almacenan en orden clave-valor. En el
ejemplo anterior, la clave única es el campo ID. El tipo más simple de base de
datos no relacional permite que una aplicación especifique la clave única o
un rango de claves como criterios de consulta. En el ejemplo de los clientes,
la base de datos habilitaría una aplicación para consultar a los clientes solo
por ID. Filtrar datos en otros campos requeriría escanear toda la colección de
entidades, analizar cada entidad a su vez y luego aplicar cualquier criterio de
consulta a cada entidad para encontrar coincidencias. En el ejemplo a
continuación, una consulta que obtiene los detalles de un cliente por ID
puede identificar rápidamente qué entidad recuperar. Una consulta que
intente encontrar a todos los clientes con una dirección en el Reino Unido
tendría que recorrer en iteración cada entidad y, para cada entidad, examinar
cada campo por turno. Si la base de datos contiene muchos millones de
entidades, esta consulta podría tardar un tiempo considerable en ejecutarse.
Una consulta especifica las claves para identificar los elementos que se
recuperarán. No puedes buscar valores. Una aplicación que recupera datos
de un almacén de valores clave es responsable de analizar el contenido de los
valores devueltos.
Las operaciones de escritura están restringidas a inserciones y eliminaciones.
Si necesita actualizar un elemento, debe recuperarlo, modificarlo en la
memoria (en la aplicación) y luego volver a escribirlo en la base de datos,
sobrescribiendo el original (efectivamente, una eliminación y una inserción).
El objetivo de un almacén de valores clave es la capacidad de leer y escribir
datos muy rápidamente. Las capacidades de búsqueda son secundarias. Un
almacén de valores clave es una excelente opción para la ingestión de datos,
cuando un gran volumen de datos llega como un flujo continuo y debe
almacenarse de inmediato.
El almacenamiento de Azure Table es un ejemplo de un almacén de valores
clave. Cosmos DB también implementa un almacén de valores clave
utilizando la API de tabla.
El propósito de una base de datos de gráficos es permitir que una aplicación realice
consultas de manera eficiente que atraviesen la red de nodos y bordes, y para
analizar las relaciones entre entidades. La siguiente imagen muestra la base de
datos de personal de una organización estructurada como un gráfico. Las
entidades son los empleados y los departamentos de la organización, y los bordes
indican líneas de informes y el departamento en el que trabajan los empleados. En
este gráfico, las flechas en los bordes muestran la dirección de las relaciones.
Una estructura como esta hace que sea sencillo realizar consultas como "Buscar
todos los empleados que trabajan directa o indirectamente para Sarah" o "¿Quién
trabaja en el mismo departamento que John?" Para gráficos grandes con muchas
entidades y relaciones, puede realizar análisis muy complejos muy rápidamente, y
muchas bases de datos de gráficos proporcionan un lenguaje de consulta que
puede usar para atravesar una red de relaciones de manera eficiente. A menudo
puede almacenar la misma información en una base de datos relacional, pero el
SQL requerido para consultar esta información puede requerir muchas operaciones
de unión recursivas costosas y subconsultas anidadas.
Mapa lleno. Si tiene datos geográficos, puede usar un mapa lleno para
mostrar cómo un valor difiere en proporción en una geografía o región.
Puede ver diferencias relativas con el sombreado que varía de claro
(menos frecuente / más bajo) a oscuro (más frecuente / más).
EXPLORE EL ANÁLISIS DE DATOS
El análisis de datos se ocupa de examinar, transformar y organizar los datos
para que pueda estudiarlos y extraer información útil. El análisis de datos es
una disciplina que cubre todo el rango de tareas de administración de datos.
Estas tareas no solo incluyen análisis, sino también recopilación de datos,
organización, almacenamiento y todas las herramientas y técnicas utilizadas.
El término análisis de datos es un conjunto que cubre una variedad de
actividades, cada una con su propio enfoque y objetivos. Puede clasificar
estas actividades como analíticas descriptivas, diagnósticas, predictivas,
prescriptivas y cognitivas.
En esta unidad, aprenderá sobre estas categorías de análisis de datos.
ANALÍTICA DESCRIPTIVA
La analítica descriptiva ayuda a responder preguntas sobre lo sucedido, en
base a datos históricos. Las técnicas analíticas descriptivas resumen grandes
conjuntos de datos para describir los resultados a las partes interesadas.
Al desarrollar KPI (Indicadores clave de rendimiento), estas estrategias
pueden ayudar a rastrear el éxito o el fracaso de los objetivos clave. Las
métricas como el retorno de la inversión (ROI) se utilizan en muchas
industrias. Se desarrollan métricas especializadas para rastrear el desempeño
en industrias específicas.
Los ejemplos de análisis descriptivos incluyen la generación de informes para
proporcionar una vista de las ventas y los datos financieros de una
organización.
ANALÍTICA DIAGNÓSTICA
El análisis de diagnóstico ayuda a responder preguntas sobre por qué
sucedieron las cosas. Las técnicas de análisis de diagnóstico complementan el
análisis descriptivo más básico. Toman los hallazgos de análisis descriptivos y
profundizan para encontrar la causa. Los indicadores de rendimiento se
investigan más a fondo para descubrir por qué mejoraron o empeoraron.
Esto generalmente ocurre en tres pasos:
1. Identificar anomalías en los datos. Estos pueden ser cambios
inesperados en una métrica o en un mercado en particular.
2. Recopile datos relacionados con estas anomalías.
3. Use técnicas estadísticas para descubrir relaciones y tendencias que
explican estas anomalías.
ANALÍTICA PREDICTIVA
El análisis predictivo ayuda a responder preguntas sobre lo que sucederá en
el futuro. Las técnicas de análisis predictivo utilizan datos históricos para
identificar tendencias y determinar si es probable que se repitan. Las
herramientas analíticas predictivas proporcionan información valiosa sobre lo
que puede suceder en el futuro. Las técnicas incluyen una variedad de
técnicas estadísticas y de aprendizaje automático, como redes neuronales,
árboles de decisión y regresión.
ANALÍTICA PRESCRIPTIVA
La analítica prescriptiva ayuda a responder preguntas sobre qué acciones
deben tomarse para lograr un objetivo u objetivo. Mediante el uso de
información de análisis predictivo, se pueden tomar decisiones basadas en
datos. Esta técnica permite a las empresas tomar decisiones informadas ante
la incertidumbre. Las técnicas de análisis prescriptivo se basan en estrategias
de aprendizaje automático para encontrar patrones en grandes conjuntos de
datos. Al analizar decisiones y eventos pasados, se puede estimar la
probabilidad de diferentes resultados.
ANALÍTICA COGNITIVA
El análisis cognitivo intenta extraer inferencias de datos y patrones
existentes, derivar conclusiones basadas en bases de conocimiento
existentes y luego agregar estos hallazgos nuevamente a la base de
conocimiento para futuras inferencias: un ciclo de retroalimentación de
autoaprendizaje. La analítica cognitiva lo ayuda a aprender lo que podría
suceder si las circunstancias cambian y cómo podría manejar estas
situaciones.
Las inferencias no son consultas estructuradas basadas en una base de datos
de reglas, sino que son hipótesis no estructuradas recopiladas de varias
fuentes y expresadas con diversos grados de confianza. La analítica cognitiva
efectiva depende de los algoritmos de aprendizaje automático. Utiliza varios
conceptos de PNL (procesamiento del lenguaje natural) para dar sentido a las
fuentes de datos previamente sin explotar, como los registros de
conversación del centro de llamadas y las revisiones de productos.
Teóricamente, al aprovechar los beneficios de la computación masiva
paralela / distribuida y los costos decrecientes del almacenamiento de datos
y la potencia informática, no hay límite para el desarrollo cognitivo que estos
sistemas pueden lograr.
COMPRUEBA TU CONOCIMIENTO