Los bloques de Looker son modelos de datos prediseñados para patrones analíticos y fuentes de datos comunes. Reutiliza el trabajo que ya hicieron otras personas en lugar de comenzar desde cero y, luego, personaliza los bloques según tus especificaciones exactas. Desde patrones de SQL optimizados hasta modelos de datos completamente compilados, los bloques de Looker se pueden usar como punto de partida para el modelado de datos rápido y flexible en Looker.
Puedes obtener bloques para personalizar y agregar a tu instancia de Looker desde diversas fuentes, incluidas las siguientes:
- El Looker Marketplace independiente, en el que puedes buscar bloques y acceder a su código fuente
- Looker Marketplace al que se puede acceder desde tu instancia de Looker En este Marketplace, puedes explorar e instalar bloques de Looker (llamados "modelos") directamente en tu instancia de Looker. Consulta la página de documentación Usa Looker Marketplace para obtener más información sobre la instalación de herramientas desde Looker Marketplace.
Tipos de bloques de Looker
Los Looker Blocks ofrecen una variedad de capacidades, como las siguientes:
Los bloques de datos, que incluyen tanto conjuntos de datos públicos como modelos de LookML completos, requieren que se copie el modelo de LookML de un repositorio de GitHub para acceder a las tablas modeladas. Estos bloques no se pueden personalizar. Consulta Cómo usar bloques de datos en esta página para obtener instrucciones detalladas.
Las aplicaciones de recopilación de datos, como Segment y Snowplow, hacen un seguimiento de los eventos en un formato relativamente estandarizado. Esto permite crear patrones de diseño basados en plantillas, capaces de limpiar, transformar y analizar datos, que pueden usar todos los clientes que utilizan estas aplicaciones.
Otras aplicaciones web, como Salesforce, te permiten agregar campos personalizados para tus usuarios internos. Naturalmente, esto genera datos en un formato menos estandarizado. Como resultado, podemos crear plantillas para parte del modelo de datos y poner en funcionamiento Analytics, pero deberás personalizar la parte no estandarizada.
También hay bloques para las estadísticas generales de la empresa. Estos bloques son patrones de diseño de SQL o LookML optimizados que son independientes de la fuente de datos. Por ejemplo, muchas empresas querrán analizar el valor del ciclo de vida de un cliente a lo largo del tiempo. Estos patrones incluyen algunas suposiciones, pero se pueden personalizar para que se adapten a las necesidades específicas de tu empresa. Estos patrones reflejan el punto de vista de Looker sobre la mejor manera de realizar ciertos tipos de análisis.
Puedes explorar los bloques de Looker en el directorio de la instancia pública de Looker Marketplace en marketplace.looker.com
.
Cómo instalar un bloque de Looker
Para instalar un bloque de Looker de Marketplace asociado a tu instancia de Looker, sigue las instrucciones para instalar una herramienta de Marketplace.
Para instalar un bloque de Looker desde marketplace.looker.com
, sigue las instrucciones del código fuente del bloque.
Cada Looker Block tiene instrucciones de uso específicas.
Estandarización y personalización
El grado en que necesites personalizar tu bloque puede depender de qué tan estandarizado esté tu esquema de base de datos. La mayoría de los bloques de Looker requieren cierta personalización para adaptarse a tu esquema de datos.
Algunos bloques muestran tanto las exploraciones como las vistas en el mismo archivo. Esto es para facilitar la visualización, pero, en general, te recomendamos que copies las secciones correspondientes de LookML en los lugares adecuados de tu modelo de datos. Consulta la página de documentación Tipos de archivos en un proyecto de LookML para obtener más información.
En algunos casos, es posible que debas crear archivos LookML nuevos en tu modelo de datos para alojar los ejemplos.
Usa bloques de datos
Los bloques de datos son un tipo especial de Looker Block que proporciona el conjunto de datos y el modelo de datos. Los bloques de datos incluyen fuentes de datos públicas, como las siguientes:
- Datos demográficos: Métricas demográficas comunes de la Encuesta sobre la Comunidad Estadounidense a nivel estatal, del condado, del área de tabulación de códigos postales y hasta del grupo de manzanas del censo.
- Datos del clima: Informes del clima en Estados Unidos a nivel de código postal desde 1920 hasta el día anterior. Este bloqueo se actualiza todas las noches.
El procedimiento para acceder al conjunto de datos de un bloque de datos varía según el esquema de la base de datos. En las siguientes secciones, se incluyen instrucciones para acceder a los conjuntos de datos en estas bases de datos:
Cómo acceder a conjuntos de datos en Google BigQuery
Si tienes una cuenta existente de Google BigQuery, puedes acceder a los conjuntos de datos alojados en BigQuery de Looker. Avanza a la sección Cómo agregar bloques de datos a proyectos en esta página.
Si aún no tienes una cuenta de Google BigQuery, puedes configurar una prueba gratuita y, luego, acceder a los conjuntos de datos públicos de Looker en BigQuery.
Cómo acceder a conjuntos de datos en otras bases de datos
Los datos transformados para los conjuntos de datos de Amazon Redshift, MySQL, PostgreSQL o Oracle están disponibles públicamente en Google Cloud Service y S3 para que puedas importarlos directamente a la base de datos que elijas.
También pusimos a disposición el lenguaje de definición de datos (DDL) para cada uno de los conjuntos de datos en el repositorio de GitHub. Es posible que debas modificar las instrucciones DDL para los tipos de datos de la base de datos seleccionada, pero deberían proporcionar una idea de los tipos de columnas para cada tabla.
Descarga datos directamente desde una de estas ubicaciones:
- Google Cloud Service:
_gs://looker-datablocks/_
- S3:
_s3://looker-datablocks/_
- Vínculo web del bucket de S3: http://looker-datablocks.s3-website-us-east-1.amazonaws.com/
Cómo acceder al modelo de LookML
Bifurca uno de nuestros repositorios de GitHub en un repositorio nuevo de GitHub (alojado por Looker o por tu empresa) que luego puedes extender o refinar dentro de tu instancia:
- Datos demográficos (American Community Survey): https://github.com/llooker/datablocks-acs
- Clima (GSOD): https://github.com/llooker/datablocks-gsod
Cómo agregar bloques de datos a proyectos
Además del método que se describe en esta sección, también puedes usar refinamientos de LookML para compilar el LookML de las vistas y las Exploraciones en tus proyectos.
Para agregar un bloque de datos a tu proyecto, sigue estos pasos:
Agrega un proyecto nuevo a tu instancia de Looker.
Bifurca o copia los repositorios de GitHub mencionados anteriormente para acceder al LookML prediseñado. Asegúrate de crear un repositorio de GitHub nuevo.
Quita otros archivos de dialecto de la base de datos del repo. Por lo general, los Looker Blocks contienen archivos para Google BigQuery, Amazon Redshift y Snowflake. Por ejemplo, si configuras bloques de datos en Google BigQuery, solo necesitarás los archivos de vista de Google BigQuery, el archivo de Explorar de Google BigQuery y el archivo de modelo de Google BigQuery.
Reemplaza el nombre de la conexión en tu archivo de modelo por la conexión de la base de datos en la que se encuentran los datos de los bloques de datos. Si usas Google BigQuery o Snowflake, usa la conexión de base de datos desde la que extenderás o refinarás.
Toda la lógica de unión existe en un archivo
.explore
en cada uno de los repositorios. Este es el archivo que incluirás en los siguientes pasos, después de configurar el manifiesto del proyecto.En tu proyecto principal de Looker, en el que extenderás o refinarás los bloques de datos, crea un archivo de manifiesto del proyecto.
Agrega el siguiente código LookML al archivo de manifiesto del proyecto para hacer referencia a los bloques de datos en tu proyecto principal de Looker:
project_name: "<your_project_name\>"
local_dependency: {
project: "<project_name_of_datablock\>"
}
Consideraciones y opciones de configuración
Google BigQuery: Asegúrate de usar el conjunto correcto de archivos modelados. Si usas Google BigQuery, es posible que desees hacer referencia a todos los archivos con _bq_
en el nombre del archivo. Es posible que debas adaptar nuestros dialectos del modelo de Google BigQuery a tu propio dialecto de base de datos.
Extensiones: Todos nuestros proyectos se configuraron para permitir extensiones de archivos de Explorar, ya que las extensiones de modelos podrían causar problemas con varias conexiones.
Unión de tablas derivadas: Es posible que desees consultar nuestra documentación sobre las tablas derivadas nativas. Puedes permitir que Looker escriba SQL por ti en diferentes niveles de agregación en nuestros conjuntos de datos disponibles públicamente y unirlos a tu modelo.
Combinación de conjuntos de resultados: También puedes optar por combinar conjuntos de resultados de nuestros conjuntos de datos con tus datos combinando conjuntos de resultados de consultas.
Ejemplo de configuración del conjunto de datos demográficos
Para acceder a los datos, puedes descargarlos sin procesar desde nuestros buckets de S3 o Google Cloud Service, o bien conectarte a una base de datos de Looker.
Importa el modelo del bloque de datos demográficos de LookML como un proyecto independiente en tu instancia de Looker.
Usa el parámetro
include
para incorporar el archivo de vista.Luego, extiende o refina el archivo de vista, o bien usa tablas derivadas nativas para obtener datos en el nivel de agregación necesario para Explorar.
En nuestro ejemplo, dado que los datos demográficos se encuentran en un nivel de agregación diferente al de nuestro conjunto de datos de comercio electrónico (grupo de manzanas en comparación con código postal), usamos tablas derivadas integradas para agregar estadísticas hasta el nivel del código postal. Esto elimina las uniones complejas de muchos a muchos:
include: "/american_community_survey/bq.explore" view: zipcode_income_facts { derived_table: { persist_for: "10000 hours" explore_source: fast_facts { column: ZCTA5 { field: tract_zcta_map.ZCTA5 } column: income_household { field: bg_facts.avg_income_house } column: total_population { field: bg_facts.total_population } } } dimension: ZCTA5 {} dimension: income_household { hidden: yes }
Une los archivos de vista en el modelo:
include: "acs*.view" explore: order_items { join: users { sql_on: ${users.id} = ${order_items.user_id} ;; type: left_outer relationship: many_to_one } join: zipcode_income_facts { sql_on: ${users.zip} = ${zipcode_income_facts.ZCTA5} ;; type: left_outer relationship: many_to_one } }