Análisis del AWS re:invent 2020 — Bases de datos y ML 2/3

Carlos E. Cortez Bazan
7 min readMar 15, 2021

Hola a todos, bienvenido a #BreakingtheCloud, yo soy Carlos Cortez @ccortezb

Y veamos un re:cap de lo que fue los mejores anuncios del re:invent 2020

¡Vayamos directo al grano!

Babelfish for Postgresql

¿Qué es Babelfish? Y que tiene que ver con Postgresql?

Es un proyecto Open Source creado por AWS, (Apache 2.0), que ahora hace que Aurora puede entender T-SQL, soportando el mismo protocolo de comunicaciones, de manera que todas tus aplicaciones escritas para SQL Server puedan funcionar con Aurora con mucho menos cambios de código.

Van a hacerlo Open Source pronto, y pueden revisar esta página para estar al tanto:

https://babelfish-for-postgresql.github.io/babelfish-for-postgresql/

Lo más interesante:

Nos va permitir migrar más rápido y refactorizando mucho menos código de SQL Server a Open Source / Aurora Postgresql, con la flexibilidad de soportar ambos drivers.

Amazon Aurora Serverless v2 para MySQL, ahora son “instantly scalable”

Esperen! Ha sido totalmente reinventada!, veamos de qué trata:

La v2:

  • Cada ACU provisiona de 2 GiB RAM
  • Tiene un mínimo y máximo de ACUs
  • Crecimiento y decrecimiento incremental de 0.5 ACUs cada vez

Y la v1:

  • Duplica los ACUs cuando llega al límite

Es decir, el método de Autoscaling de Aurora Serverless se ha rediseñado por completo de manera que puede pegarse más a la demanda de nuestro negocio como en este caso:

Imagen: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-2.how-it-works.html

  1. Aquí vemos las órdenes procesadas de un servicio por segundo
  2. Y este es el aprovisionamiento de ACUs en tiempo real según la demanda de órdenes.

Es impresionante lo que se puede lograr, y lo que se va a ahorrar.

Conclusiones de la v2:

  • Aún en preview
  • No para uso productivo
  • No tiene todas las features de Aurora Serverless aún

AWS Glue Elastic Views

Rápidamente:

  • Glue agrega vistas materializadas que combinan y replican data sin escribir código adicional
  • Las nuevas vistas materializadas son más que nada: Tablas virtuales
  • Podemos usar SQL para crear las tablas virtuales de múltiples sets de datos y fuentes de datos
  • Elastic Views permite tener una copia de los datos de las fuentes en un punto de destino
  • Elastic Views mantendrá actualizada la tabla virtual con los datos ya que continuamente consultará por cambios nuevos. (Esto sí es una locura!)

Revisemos lo más interesante!, los lanzamientos de Machine Learning:

Ahora prepara tus datos con Amazon Sagemaker Data Wrangler

Cómo acceder?

Tienes que tener Sagemaker Studio activado y funcionando para poder probar Data Wrangler.

Allí verás la preciada nueva opción “Import and prepare your data” para crear un nuevo “data flow”

Y luego ya es cuestión de cada uno empezar a jugar con todas las transformaciones, como si tu Júpiter Notebook tuviese plugins especiales para hacer la vida más fácil.

Análisis previo de tus modelos:

Puedes revisar métricas de un posible modelo previamente y corregir esos inbalances en las clases que puedas encontrar.

Y exportación hacia Júpiter Notebook, Pipelines y Feature Store! Calma vamos con calma!

Bienvenido SageMaker Feature Store.

“The feature store is the data warehouse for Data Science”

Pero aún tenemos muchísimas dudas, veamos de qué trata.

Las Feature Store son necesarias para disminuir el tiempo en que los Data Scientists hacen tareas de enriquecimiento de datos y transformaciones. Ellos pasan hasta un 80% del tiempo total de un proyecto de Minería de Datos en esta etapa., y así como los BI Analyst tienen su Data Warehouse para poder encontrar Insights en la data histórica, los data scientist necesitan de un Feature Store para ayudarlos en el proceso de Predicción.

¿Cómo es una Feature Store?

Pues en simples y mortales palabras, tiene 2 componentes principales: Online Store y Offline Store. De manera que según use modelos match o modelos en tiempo real, necesitaré uno u otro.

Fuente: https://medium.com/data-for-ai/feature-store-vs-data-warehouse-306d1567c100

Una herramienta de MLOps en AWS de manera nativa: SageMaker Pipelines

Si bien es cierto, MLOps ya rondaba bastante este año y el anterior, es bueno que tengamos una herramienta nativa bajo SageMaker.

Databricks, con MLFlow y Model Registry, H20, entre otros, tienen ya un flujo automatizado al estilo DevOps.

Ahora podremos crear Pipelines (Flujos), de esta manera para entrenar, evaluar, aplicar reglas de negocio específicas en las métricas y luego registrar el modelo si cumple con los thresholds aplicados.:

Cons:

  • Sigue bajo la jurisdicción de Sagemaker Studio. Sigo pensando que deberían tener un apartado distinto y agnóstico a Studio.

Dato curioso:

AWS CodePipeline es el que orquesta nuestro flujo desde Sagemaker Studio, puedes hacer aprobaciones manuales y despliegues a otros flujos como los de producción-

Quicksight Q, un servicios de inteligencia de negocios que usa NLP para responder preguntas sobre tus datos

Q, es un nuevo sistema interno de Quicksight que resuelve estar actualizando y agregando más y más detalles en un Dashboard interactivo cada vez que el cliente lo requiera.

Entonces los equipos de Business Intelligence Analysts, no sufrirán tanto actualizando y actualizando sino que podrán permitir usar NLP en los propios dashboards de Quicksight.

NLP + Quicksight

Puedo decirle entonces a mi dashboard que me diga “cuanto % de diferencia hubo entre el mes de Marzo del año pasado y hoy en las ventas del producto tal…”

Y Q, analizará en tiempo real, entenderá y absorberá las palabras y enunciados para ir a contrastarlos con la data detrás y darnos un gráfico más preciso.

La magia de Q:

Q, autocompleta.

Q, entiende sinónimos y acrónimos

Q, sugiere términos técnicos y del giro del negocio

Q, te corrige las palabras mal escritas

Q, nos devuelve gráficos y números.

Que les parece? Out of this world!, una excelente aplicación de NLP en tiempo real para resolver un problema muy pesado para los equipos de BI. GENIAL.

Detección automática de problemas en el código basado en un modelo de AI?

Inteligencia artificial para detectar y… mejorar la disponibilidad de las aplicaciones?

Imaginen ahora agregar al pipeline, un proceso que detecte problemas operaciones y recomendaciones de cómo arreglarlo.

Cuando uno tiene una arquitectura compleja, como esta:

Requiere de múltiples herramientas para leer logs, transacciones, métricas, etc, y también de alarmas y otras cosas, de manera que recién allí podremos revisar si algo está fallando.

Cómo funciona?

DevOps Guru, toma todas la información de Amazon CloudWatch, AWS Config, AWS CloudTrail, AWS CloudFormation, y AWS X-Ray !!!!!!!! Increíble.

Por ahora terminamos con esta parte 2 de los mejores lanzamientos, realmente espectacular y esperando probar estos servicios en estas semanas, espero les haya servido y por favor comenten y compartan.

En la siguiente parte de este re:cap veremos:

Amazon HealthLake, Neptune ML, Redshift ML, SageMaker Edge Manager, SageMaker Debugger, SageMaker Clarify, Fast Distributed training for Amazon SageMaker, Amazon Lookout for Metrics

Revisa las ediciones anteriores:

Parte 1: EC2 y microservicios (anterior)
Parte 2: Bases de datos y ML (ahora estás aquí)
Parte 3: Contact Center e Industrial IoT (siguiente)

Síganme y subscríbanse en https://cortez.cloud para recibir noticias y posts de AWS,

Mi web: https://www.cortez.cloud
Mi Podcast: https://imperiocloud
Mi canal de Youtube: https://www.youtube.com/channel/UCfYSuuq7alh7S74BoHplvGA

#aws #reinvent2020 #awsperu #awsugperu #awscloud

--

--

Carlos E. Cortez Bazan

AWS UG Leader Perú / AWS ML Community Builder / Senior Cloud Architect