Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Examen

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 14

Test de Data (DevSkiller)

1. Escenario 1: Está trabajando en una empresa que tiene muchos puntos de venta y la
información distribuida en estos puntos de venta en bases de datos relacionales. Se
requiere consolidar la información cada hora, procesarla para que el comité de dirección
pueda visualizarla en un dashboards y tomar decisiones respecto a las diferentes
campañas. Diseñe una solución para la necesidad planteada. ¿Qué herramientas usaría?
Justifique los motivos que lo llevaron a definirse por esa solución y las herramientas.

2. La empresa XYZ tiene tres aplicaciones y cada una tiene su propia base de datos
transaccional (Oracle, SQL, SERVER, MySQL). Cada aplicación tiene su propia base de
datos de clientes. Diseñe una solución para crear y centralizar la información de los
clientes y proporcionar una única fuente de información de los clientes. No se olvide de
la calidad. ¿Qué herramientas usaría? Justifique los motivos que los llevaron a definirse
por esa solución y las herramientas.

Para resolver el problema planteado utilizando AWS (Amazon Web Services) y GCP
(Google Cloud Platform), seguiremos un enfoque detallado paso a paso. El objetivo es
centralizar la información de los clientes que provienen de múltiples bases de datos
transaccionales (Oracle, SQL Server, MySQL) y proporcionar una única fuente de verdad
que garantice la calidad de los datos.

Paso 1: Definición del problema y desafíos

• Tres aplicaciones con bases de datos transaccionales separadas: Oracle, SQL


Server y MySQL.
• Centralización de los datos para generar una única fuente de información precisa
y fiable de los clientes.
• Garantizar la calidad de los datos en el proceso de integración y centralización.

Para abordar esto, utilizaremos servicios de integración de datos y almacenamiento


centralizado en la nube, asegurando la calidad mediante herramientas de gobernanza.

Opción 1: Solución utilizando AWS

1. Extracción de los datos (ETL)

• AWS Glue:
• Servicio de ETL (Extract, Transform, Load) totalmente administrado.
• Permite conectarse a diversas bases de datos (Oracle, SQL Server, MySQL)
mediante conectores JDBC.
• Realiza la extracción de los datos de cada base de datos transaccional.

2. Almacenamiento centralizado
• Amazon Redshift:
• Un almacén de datos (Data Warehouse) que centraliza toda la información en un
formato analítico.
• Los datos de cada base de datos transaccional se cargan en tablas específicas en
Redshift.

3. Gobernanza y calidad de datos

• AWS Glue DataBrew:


• Permite realizar perfilado de datos y detectar inconsistencias.
• Asegura la calidad de los datos mediante transformaciones y validaciones
automáticas.

4. Visualización de los datos

• Amazon QuickSight:
• Plataforma de inteligencia de negocios (BI) para visualizar la información
consolidada de los clientes.
• Facilita la generación de reportes en tiempo real.

Opción 2: Solución utilizando GCP

1. Extracción de los datos (ETL)

• Cloud Dataflow:
• Plataforma de procesamiento de datos basada en Apache Beam.
• Realiza las tareas de extracción, transformación y carga desde las bases de datos
Oracle, SQL Server y MySQL hacia un almacenamiento centralizado.

2. Almacenamiento centralizado

• BigQuery:
• Un almacén de datos de GCP que centraliza y almacena los datos integrados de
todas las fuentes.
• Permite consultas rápidas en grandes volúmenes de datos.

3. Gobernanza y calidad de datos

• Dataplex:
• Herramienta para gobernanza de datos en GCP.
• Facilita la aplicación de políticas de calidad, seguridad y catalogación de datos de
forma centralizada.
4. Visualización de los datos

• Looker:
• Herramienta de BI en GCP que permite la creación de dashboards e informes.
• Conecta directamente con BigQuery para generar reportes en tiempo real.

Justificación de la Solución

1. AWS Glue y Cloud Dataflow facilitan la integración de diversas fuentes de datos


de manera eficiente mediante procesos ETL.
2. Amazon Redshift y BigQuery permiten tener un almacén centralizado con alta
escalabilidad para análisis rápidos.
3. AWS Glue DataBrew y Dataplex aseguran la calidad y gobernanza de los datos
mediante validaciones automáticas.
4. Amazon QuickSight y Looker ofrecen plataformas de BI para generar reportes y
visualizar la información consolidada en tiempo real.

Conclusión

Ambas soluciones, tanto con AWS como con GCP, resuelven el problema al:

• Centralizar los datos de los clientes provenientes de diferentes bases de datos.


• Asegurar la calidad y gobernanza de los datos.
• Proveer herramientas de visualización para una toma de decisiones más rápida y
eficaz.

La elección entre AWS y GCP dependerá del ecosistema tecnológico de la empresa,


costos y preferencias en cuanto a herramientas de BI.

3. Se requiere crear un data warehouse para consolidar la información necesaria para


proveer inteligencia de negocios por periodos, productos, regiones, zonas, canales y
puntos de venta. Suponga que la información proviene de varias fuentes, mínimo con
estas tablas: clientes, productos, puntos de venta, canales, facturas y geografía. ¿Cómo
diseñaría el data warehouse? ¿Qué herramientas usaría? Incluya más tablas si así lo
considera, justifique los motivos que los llevaron a definirse por esa solución y las
herramientas.

Para resolver el problema de diseño de un data warehouse utilizando AWS y GCP, te daré un
paso a paso sobre cómo implementarlo en ambos entornos. Esto permitirá integrar y consolidar
datos provenientes de diversas fuentes (clientes, productos, puntos de venta, canales, facturas,
geografía) para obtener inteligencia de negocios.
Paso 1: Definición del Modelo de Datos
Primero, identificamos las tablas necesarias y sus relaciones:

 Clientes: Información de los clientes (ID, nombre, segmento).


 Productos: Detalles de productos (ID, categoría, descripción).
 Puntos de venta: Ubicación de las ventas.
 Canales: Tipos de canales (físico, en línea).
 Facturas: Registro de ventas con relación a cliente, producto y punto de venta.
 Geografía: Zonas o regiones donde se operan los puntos de venta.

Diseñaremos un modelo estrella o snowflake para la base de datos del data warehouse, con
una tabla hecho (fact)principal que registra las transacciones, y varias dimensiones (clientes,
productos, canales, etc.).

Paso 2: Uso de Servicios en AWS


Herramientas de AWS:

1. Amazon S3: Para almacenar datos en bruto y datos históricos.


2. AWS Glue: Para realizar procesos de extracción, transformación y carga (ETL).
3. Amazon Redshift: Data warehouse donde se consolidarán los datos para análisis.
4. Amazon QuickSight: Para la generación de reportes y dashboards de inteligencia de
negocios.

Flujo en AWS:

1. Almacenamiento en S3: Se suben las fuentes de datos crudas a diferentes buckets de


Amazon S3.
2. ETL con Glue: AWS Glue se utiliza para transformar los datos y cargarlos en Amazon
Redshift.
3. Carga en Redshift: Se diseñan tablas en Redshift siguiendo un modelo estrella. Redshift
optimiza consultas rápidas sobre grandes volúmenes de datos.
4. Visualización en QuickSight: Se conectan los datos en Redshift a QuickSight para crear
dashboards interactivos.
Paso 3: Uso de Servicios en GCP
Herramientas de GCP:

1. Google Cloud Storage: Almacenamiento en la nube de datos sin procesar.


2. Dataflow o Dataproc: Para tareas de ETL (Dataflow para ETL en streaming, Dataproc
para cargas por lotes).
3. BigQuery: Data warehouse de GCP, ideal para análisis rápido sobre grandes volúmenes
de datos.
4. Looker Studio (antiguo Data Studio): Para reportes y visualización de datos.

Flujo en GCP:

1. Almacenamiento en Cloud Storage: Se suben los archivos originales desde diferentes


sistemas.
2. ETL con Dataflow/Dataproc: Los datos se transforman y cargan en BigQuery.
3. Carga en BigQuery: Se diseñan las tablas de fact y dimensiones en BigQuery.
4. Visualización en Looker Studio: Se conectan los datos en BigQuery para generar
reportes y dashboards.

Paso 4: Justificación de Herramientas


 AWS: Redshift ofrece una arquitectura optimizada para consultas SQL sobre grandes
datasets. QuickSight es una herramienta integrada que permite crear reportes
fácilmente.
 GCP: BigQuery permite ejecutar consultas extremadamente rápidas sin necesidad de
manejar infraestructura. Looker Studio permite crear dashboards flexibles conectados
directamente a BigQuery.

Paso 5: Conclusión y Elección Final


Ambos enfoques son potentes, pero la elección depende de los requisitos específicos:

 AWS: Recomendado si ya se tiene infraestructura en AWS o si se prefiere una


integración fuerte con otros servicios de Amazon.
 GCP: Recomendado para análisis de datos a gran escala sin preocupaciones de
infraestructura y cuando se busca escalabilidad horizontal rápida.

4. La empresa XYZ lanzó una campaña de cross selling en su e Commerce. La campaña


consiste en que el usuario compra un producto y antes de pagar el sistema le debe
proveer una lista de artículos relacionados con otros usuarios compraron en el mismo
pedido del artículo inicial. Ej: Cuando alguien compra tenis Adidas el sistema el sugiere
que compre una gorra Adidas porque alguien más compró los artículos juntos. ¿Cómo
diseñaría la solución para proveer el listado de artículos relacionados con el artículo
inicialmente comprado? ¿Qué herramientas usaría? Justifique los motivos que lo
llevaron a definirse por esa solución, así como las herramientas.

El sistema debe sugerir productos complementarios o relacionados. Por ejemplo, si un cliente


compra tenis Adidas, se recomienda una gorra Adidas porque otros usuarios compraron ambos
productos juntos. Esta funcionalidad requiere:

 Recomendación en tiempo real.


 Análisis de patrones de compra.
 Almacenamiento y procesamiento de datos históricos de transacciones.

Solución con AWS


Herramientas:

1. Amazon S3: Almacenar datos históricos de compras.


2. AWS Glue: Procesos ETL para limpiar y transformar datos de transacciones.
3. Amazon Redshift: Almacenar datos agregados y realizar análisis.
4. Amazon Personalize: Generación de recomendaciones personalizadas en tiempo real.
5. Amazon API Gateway + Lambda: Para exponer el servicio de recomendaciones al e-
commerce.

Flujo:

1. Almacenamiento de datos: Se almacenan los datos de transacciones en bruto en


Amazon S3.
2. ETL con AWS Glue: Limpia y transforma los datos para identificar patrones de compra.
3. Carga en Redshift: Los datos transformados se cargan en Redshift para análisis y
consultas agregadas.
4. Modelo de Recomendación en Amazon Personalize:
a. Se entrena un modelo de machine learning con los datos de transacciones.
b. Personalize puede sugerir productos basados en la compra actual y patrones
históricos.
5. API para recomendaciones:
a. Una función Lambda genera recomendaciones en tiempo real desde Amazon
Personalize.
b. API Gateway expone esta funcionalidad al frontend del e-commerce.
Solución con GCP
Herramientas:

1. Google Cloud Storage: Almacenar datos históricos de transacciones.


2. BigQuery: Análisis y almacenamiento de datos agregados.
3. Dataprep/Dataproc: Procesamiento ETL de los datos.
4. Vertex AI o Recommendations AI: Entrenamiento de modelos para recomendaciones.
5. Cloud Functions + API Gateway: Exponer las recomendaciones al sistema de e-
commerce.

Flujo:

1. Almacenamiento en Cloud Storage: Los datos de transacciones se suben a Cloud


Storage.
2. ETL con Dataprep/Dataproc: Los datos se limpian y se transforman.
3. Carga en BigQuery: Se almacenan los datos para análisis y visualización.
4. Entrenamiento del modelo en Recommendations AI:
a. Se entrena un modelo para identificar productos comprados juntos.
b. Recommendations AI genera sugerencias basadas en el comportamiento
histórico.
5. API para recomendaciones:
a. Cloud Functions se conecta con el modelo de recomendaciones.
b. API Gateway expone el servicio al sistema e-commerce en tiempo real.

Paso 4: Comparación de Herramientas


Criterio AWS GCP
Amazon Personalize simplifica Recommendations AI simplifica el
Facilidad de uso
el ML ML
Redshift escala bien con datos
Escalabilidad BigQuery es altamente escalable
grandes
Cloud Functions permite rápida
Tiempo real Lambda ofrece baja latencia
respuesta
Integración con el API Gateway para exposición API Gateway para exposición
Frontend rápida rápida
Conclusión y Elección Final
Ambos enfoques son viables, pero la elección puede depender de:

 AWS: Ideal si ya se utiliza infraestructura de AWS y se requiere integración sencilla con


servicios como Personalize.
 GCP: Recomendado si se busca una solución rápida para análisis con BigQuery o si se
está familiarizado con Vertex AI.

5. La Fintech FFF dispuso un formulario en su App para que clientes actuales o potenciales
hagan una solicitud de crédito. El formato de la solicitud llega en formato JSON y además
el cliente anexa documentación en formatos PDF, gif y jpeg. La información debe ser
almacenada y procesada a través de una API ya desarrollada y luego enviar una
respuesta al cliente de la aprobación o rechazo de la solicitud a través de una
notificación push en un máximo de tres minutos. Diseñe una solución para este caso de
uso. ¿Qué herramientas usaría? Justifique los motivos que lo llevaron a definirse por
esta solución y las herramientas seleccionadas.

Para resolver el caso de procesamiento de solicitudes de crédito con respuesta en menos de


tres minutos mediante AWSy GCP, te mostraré dos soluciones paso a paso utilizando las
herramientas clave de cada plataforma.

Requerimientos del Caso


1. La solicitud llega en formato JSON y puede incluir archivos adjuntos en PDF, GIF, JPEG.
2. La información debe ser procesada mediante una API desarrollada previamente.
3. El sistema debe almacenar los documentos.
4. El resultado de la aprobación o rechazo debe ser notificado por notificación push en
menos de tres minutos.

Solución con AWS


Herramientas a Usar

1. Amazon API Gateway: Exponer la API existente al cliente para recibir solicitudes.
2. AWS Lambda: Procesar la lógica de negocio y realizar validaciones en tiempo real.
3. Amazon S3: Almacenar los documentos adjuntos.
4. Amazon DynamoDB: Almacenar datos temporales o resultados de las solicitudes.
5. Amazon SNS (Simple Notification Service): Enviar notificaciones push al cliente.
6. Amazon CloudWatch: Monitorear tiempos de procesamiento y fallos.

Flujo en AWS

1. Recepción de la Solicitud:
a. El cliente envía la solicitud en JSON y los archivos adjuntos mediante la API
expuesta con API Gateway.
2. Almacenamiento de Archivos:
a. La API carga los archivos en un bucket de S3.
3. Procesamiento con Lambda:
a. Una función AWS Lambda valida la solicitud y los documentos, además de
consultar otros sistemas si es necesario para aprobar o rechazar el crédito.
4. Almacenamiento del Resultado:
a. Se guarda temporalmente el resultado en DynamoDB para trazabilidad.
5. Notificación al Cliente:
a. SNS envía una notificación push al cliente con el resultado de su solicitud.
6. Monitoreo del Sistema:
a. CloudWatch verifica que todas las solicitudes se procesen en menos de tres
minutos.

Solución con GCP


Herramientas a Usar

1. Google API Gateway: Exponer la API para recibir las solicitudes.


2. Cloud Functions: Procesar la solicitud y ejecutar la lógica de negocio.
3. Google Cloud Storage: Almacenar los archivos adjuntos.
4. Firestore o Cloud SQL: Almacenar los datos y resultados de las solicitudes.
5. Firebase Cloud Messaging (FCM): Enviar notificaciones push al cliente.
6. Cloud Monitoring: Monitorear los tiempos de respuesta.

Flujo en GCP

1. Recepción de la Solicitud:
a. La API expuesta mediante Google API Gateway recibe la solicitud en formato
JSON con archivos adjuntos.
2. Almacenamiento de Archivos:
a. Los archivos se guardan en Cloud Storage para asegurar su disponibilidad.
3. Procesamiento con Cloud Functions:
a. Una Cloud Function valida la solicitud y consulta bases de datos para determinar
si el crédito es aprobado o rechazado.
4. Almacenamiento del Resultado:
a. El resultado se guarda en Firestore o Cloud SQL para futuras referencias.
5. Notificación Push:
a. Firebase Cloud Messaging (FCM) envía una notificación push con el resultado al
cliente.
6. Monitoreo del Sistema:
a. Cloud Monitoring verifica que cada solicitud se procese en menos de tres
minutos.

Comparación de Herramientas
Criterio AWS GCP
Lambda simplifica la ejecución de Cloud Functions es ágil para
Facilidad de Uso
lógica lógica
Almacenamiento S3 para archivos Cloud Storage para archivos
Notificaciones
SNS Firebase Cloud Messaging
Push
DynamoDB y SNS escalan sin
Escalabilidad Firestore y FCM escalan bien
problemas

Conclusión
Ambas plataformas ofrecen soluciones rápidas y escalables. La elección entre AWS y GCP
dependerá de:

 AWS: Si ya se tiene infraestructura en AWS y se busca integración con servicios


existentes.
 GCP: Si la empresa ya usa Firebase o busca aprovechar las capacidades de Google para
notificaciones push.
6.

Sdf. OrderBy (col =city_col, ascending=True)

7.

Sdf. filtler( sdf . age > 50 ) . Collect ( )

d_output = [ row.asDict ( ). for row in d_output


8.

df . fillna ( value=-1, inplace =True )

9.

SELECT COUNT ( DISTINCT s. id) AS ‘ Number of subjects ‘


FROM subjects s
INNER JOIN professors p ON p. id = s . professors_id
INNER JOIN departments d ON d. id = p. departments_id
WHERE d. name = ‘ Business ‘ ;
10.

SELECT s. name , p . name


FROM subjects s
INNER JOIN professors p ON p. id = s. professors_id
INNER JOIN departments d ON d. id = p. departments_id
WHERE d. name = ‘Business’
Multiple Choice

11. Marque las opciones que considere correctas:


a. Una de las diferencias entre Spark y Hadoop es que Spark realiza operaciones in-
memory.
b. Spark no puede utilizarse para procesamiento de datos en tiempo real.
c. Spark puede almacenar información en formato HDFS.
d. MapReduce es utilizado en Spark.

12. Identifique la afirmación correcta


a. El teorema CAP establece que: Consistencia, disponibilidad y tolerancia a las
particiones son características de los sistemas de almacenamiento distribuidos.
b. El teorema CAP sólo es aplicable para bases de datos relacionales.
c. En un sistema de almacenamiento distribuido no pueden darse las tres
características al mismo tiempo.

13. Identifique las afirmaciones que considere falsas


a. Data Fabric consiste en un enfoque de arquitectura de datos donde hay una capa
de datos unificada y centralizada.
b. Un Data Fabric difiere de una Data Warehouse en la medida que integra:
pipelines acceso a los datos, políticas de datos y visualización de datos entre
otros.
c. La arquitectura de un Data Mesh favorece la descentralización de los datos y un
dominio de información descentralizado.
d. La implementación de un Data Fabric, a diferencia del data Mesh, requiere un
alto nivel de madurez técnica en la organización.
e. En la arquitectura de tipo Data Mesh la aplicación de las políticas de Data
Governance se hace de manera descentralizada

También podría gustarte