Analizando datos con una vista materializada en BigQuery.

Datapath
Datapath

--

Queremos acelerar el talento en data y analytics en LATAM. Si te gusta el artículo recuerda que todos los meses tenemos inicios de nuestros programas especializados de Data Engineering, Data Analyst, Cloud y Machine Learning Engineer. Puedes conocer más aquí.

Imagen 1. https://cloud.google.com/bigquery/docs/mate rialized-views-create?hl=es-419#sql

Pasos para crear vistas materializadas

Antes de comenzar, se debe otorgar funciones de administración de identidades y accesos (IAM), aquello es para brindar a los usuarios los permisos necesarios bigquery.tables.create de IAM para crear vistas vistas materializadas:

bigquery.dataEditor

bigquery.dataOwner

bigquery.admin

Se puede crear usando sentencias SQL, desde la API o Java. Sin embargo, para este ejemplo práctico, se usará SQL. Inicia con la sentencia CREATE MATERIALIZED VIEW en la consola de Google Cloud desde el editor de consultas, imagen 2. Así se obtendrá el siguiente esquema:

Imagen 2. https://cloud.google.com/bigquery/docs/materialized- views-create?hl=es-419#sql

Definición de “Materialized view”

En BigQuery, las vistas materializadas son vistas procesadas anteriormente. Estos resultados de una consulta son almacenados en caché cada cierto tiempo para aumentar el rendimiento y la eficiencia. Las siguientes son características clave de la materialización:

No requiere mantenimiento. Cualquier cambio en los datos incrementales de las tablas, se agrega automáticamente.

Datos nuevos. Si los cambios en las tabla base pueden invalidar la vista materializada, los datos se leen directamente desde las tablas base.

Ajuste inteligente. BigQuery redirige la consulta para usar la vista materializada, así mejorar el rendimiento y la eficiencia.

Cuando se ha creado de forma correcta, aparece en el panel del Explorador de BigQuery en la consola de Google cloud el siguiente esquema de vista materializada:

Uso de vistas materializadas

Al crear una vista materializada, se debe asegurar de que su definición muestra los patrones de consulta en las tablas base. Además, debe tener en cuenta que hay un límite de 20 vistas materializadas por tabla, por lo que no debes crear una para cada permutación de una consulta

Consulta de vistas materializadas

Puedes consultar tus vistas materializadas de la misma manera que consultas una tabla normal o una vista estándar.

Siempre son coherentes con las consultas de las tablas base de la vista.

La consulta no activa automáticamente una actualización materializada.

Alineación de Participaciones

Si una vista materializada está particionada, BigQuery se asegura de que sus particiones estén alineadas con las particiones de la columna de partición de la tabla base.

El comportamiento descrito en Actualizaciones incrementales se produce para cada partición individual.

Las que tiene uniones internas solo se pueden alinear con una de sus tablas base.

Ajuste Inteligente

BigQuery reescribe automáticamente las consultas, ejemplo imagen 3.

La reescritura mejora el rendimiento y el costo de la consulta.

Pertenece al mismo conjunto de datos de una de sus tablas base.

Usar el mismo conjunto de tablas base que la consulta.

Incluir todas las columnas que se leen. Incluis todas las filas que se leen.

Imagen 3. https://cloud.google.com/bigquery/docs/materialized- views-create?hl=es-419#sql

¿Cuándo debo usar las consultas programadas en comparación con las vistas materializadas?

Las consultas programadas favorable para ejecutar cálculos arbitrarios complejos cada cierto tiempo. No se usan los resultados anteriores y pagas el precio total de la consulta. Por ello, las consultas programadas son excelentes cuando no necesitas los datos más recientes y tienes una alta tolerancia a la inactividad de los datos. Las vistas materializadas, ejemplo imagen 4, son adecuadas para buscar los datos más recientes y, al mismo tiempo, reducir la latencia y el costo mediante la reutilización del resultado calculado anteriormente, un ejemplo de este para definir una inactividad aceptable es el uso de — max_staleness.

https://cloud.google.com/bigquery/docs/materialized- views-create?hl=es-419#sql

Giomar Antaurco Trejo
Coordinador Académico Datapath

Conoce nuestros programas

✔Descubre cómo acelerar tu talento en Data, Analytics y Cloud:

Tenemos inicios todo los meses, conoce más aquí.

En nuestro viaje por el mundo de los datos, las redes sociales son el epicentro de nuestras actividades. ¡Síganos en nuestras redes sociales para acceder a contenido exclusivo, noticias relevantes y ser los primeros en conocer nuestros próximos programas y eventos! ¡Descubran el universo de datos que tenemos preparado para ustedes! ¡No se pierdan ni un dato!

instagram.com/datapathformation/

tiktok.com/@datapath

youtube.com/@datapathformation

facebook.com/datapathformation

--

--