Personaliza los bloqueos de Looker Marketplace

Looker BlocksTM son modelos de datos previamente compilados para patrones de análisis y fuentes de datos comunes. En esta página, se describe cómo los desarrolladores pueden personalizar los bloques de Looker que se instalan desde Looker Marketplace. Looker Marketplace es una ubicación central para encontrar, implementar y administrar muchos tipos de contenido de Looker, como aplicaciones, visualizaciones y complementos.

Para obtener más información sobre todos los bloques de Looker disponibles, incluidos los que no están disponibles actualmente en Looker Marketplace, así como otros métodos de personalización de bloques, consulta la página de documentación de los bloques de Looker.

Requisitos para instalar y administrar bloques de Looker desde Looker Marketplace

Antes de que puedas instalar y usar algunos bloques de Looker Marketplace, el administrador de Looker debe habilitar estas funciones:

  • Si instalas tu bloque a través de Looker Marketplace, el administrador de Looker debe habilitar la función Marketplace.
  • Si el bloque específico contiene un parámetro local_dependency, el administrador de Looker también debe habilitar la función Importación de proyectos locales Labs. Estos bloques contienen un parámetro local_dependency:

    • Estadísticas de marketing digital
    • Estadísticas de ventas
    • Estadísticas web

Los usuarios deben tener los permisos develop, manage_models y deploy para instalar y administrar paquetes desde Marketplace.

Consulta la página de documentación de Looker Marketplace para obtener información sobre cómo instalar y administrar bloques de Looker desde Looker Marketplace.

Cómo acceder al código LookML de un bloque de Marketplace

Los bloques basados en proyectos que usan mejoras se instalan desde Marketplace como un único proyecto de CONFIG que se puede editar y que importa de forma remota el proyecto CORE, que contiene todo el código de LookML y la parametrización constante.

Una vez que se instala un bloque desde Marketplace, puedes acceder a su proyecto desde el menú Develop haciendo clic en el nombre del proyecto en la lista de proyectos. Por lo general, el nombre de un bloque de perfeccionamiento de mercado se antepone con marketplace_ seguido del ID de la ficha.

Aunque no puedes modificar directamente el proyecto de solo lectura de CORE de un bloque, es posible que quieras usar el LookML definido en los archivos CORE de solo lectura del bloque como referencia cuando personalices los archivos CONFIG del bloque. Para ver los archivos CORE del bloque, navega a los archivos de proyecto del bloque en el IDE y expande el directorio imported_projects en el navegador de archivos IDE.

Estructura de archivos de bloques

Cuando instalas un bloque compilado para su perfeccionamiento, estos archivos se crean automáticamente como parte de la parte CONFIG del proyecto de bloque:

Nombre del archivo Acceso Función
<model_name>.model.lkml Solo lectura para todos los usuarios Es un archivo de modelo virtual vinculado a la instalación del bloque. Controla la importación de cualquier modelo del proyecto CORE del bloque. Cuando se desinstala o actualiza un bloque, se borran los archivos de modelo asociados, lo que evita conflictos de modelos entre varias instalaciones de bloques.
manifest.lkml Los usuarios con permisos develop pueden editarla. Describe el proyecto y sus dependencias externas. Contiene el ID de ficha de Marketplace para la instalación del bloque y facilita la importación remota de los archivos del proyecto PRINCIPAL del bloque mediante la palabra clave marketplace.
marketplace_lock.lkml Solo lectura para todos los usuarios Contiene una referencia a la palabra clave marketplace_ref del archivo de manifiesto que controla la importación remota del proyecto CORE. Proporciona la información específica de la ficha, la versión y el modelo asociados con la instalación. Contiene información sobre las constantes que se configuran durante la instalación (y que se pueden actualizar con la opción Administrar en la IU de Marketplace).
refinements.lkml La pueden editar los usuarios con permisos de develop Permite que los desarrolladores definan mejor las vistas y las exploraciones en los archivos de proyecto de CORE importados.

Cómo personalizar un bloque de mercado

Habilita el Modo de desarrollo para personalizar los archivos editables del bloque.

Si tienes permisos develop, puedes personalizar LookML en el archivo refinements.lkml del proyecto CONFIG del bloque. Puedes definir mejor las vistas y exploraciones que ya están definidas en el proyecto CORE del bloque, o incluso agregar nuevas vistas y exploraciones que aún no están definidas en el proyecto CORE. Todo lo que sea posible con las mejoras de LookML en otros proyectos de LookML se puede hacer en el archivo refinements.lkml del bloque. La combinación de la definición y la versión original de LookML se comporta como si fuera la versión original de LookML para el objeto.

También puedes realizar cambios en el archivo manifest.lkml del proyecto CONFIG para especificar las dependencias que se deben capturar para ese bloque.

No estás limitado a modificar estos archivos para obtener las personalizaciones que deseas. También puedes crear archivos nuevos en el proyecto CONFIG; solo asegúrate de include cualquier archivo nuevo en el archivo refinements.lkml.

Personaliza el archivo de perfeccionamiento

Si tienes permisos develop, puedes agregar LookML personalizado al proyecto CONFIG para combinar datos adicionales o cambiar el modelo analítico principal del bloque. Puedes crear vistas nuevas y unirlas a Exploraciones existentes, definir campos nuevos o redefinir los existentes, o aplicar etiquetas según sea necesario para crear un modelo para el análisis que deseas proporcionar. Si creaste archivos nuevos en el proyecto CONFIG, debes include en el archivo de mejoras.

Por ejemplo, supongamos que instalaste un bloque y su archivo refinements.lkml contiene lo siguiente:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

donde listing_id es el valor del parámetro listing del archivo manifest.lkml.

Puedes usar las definiciones para agregar una dimensión nueva a una vista llamada flights:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

view: +flights {
  dimension: air_carrier {
    type: string
    sql: ${TABLE}.air_carrier ;;
  }
}

También puedes aplicar una etiqueta a una exploración llamada aircraft para que aparezca en la IU como Aeronaves simplificadas:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

explore: +aircraft {
  label: "Aircraft Simplified"
}

El archivo refinements.lkml se incluye automáticamente en el bloque "virtual" , que importa los modelos del proyecto CORE.

Consulta la documentación sobre las mejoras en LookML para obtener más información sobre este tema avanzado.

Personaliza el archivo de manifiesto editable

En los bloques que usan mejoras, los proyectos CORE y CONFIG tienen archivos de manifiesto. sin embargo, solo se puede editar el archivo de manifiesto del proyecto CONFIG.

Puedes editar el archivo manifest.lkml de CONFIG para agregar parámetros de proyecto a los que ya aparecen en el archivo de manifiesto del proyecto CORE. Por ejemplo, puedes agregar un local_dependency para unir tu bloque a otro en la misma instancia de Looker.

Antes de poder usar o crear un bloque que contenga un parámetro local_dependency, un administrador de Looker debe habilitar la función Importación de proyectos locales de Labs.

Cómo actualizar valores de constantes

Las constantes del bloque se definen en el archivo de manifiesto del proyecto CORE importado. La anulación del valor de una constante, si se permite, se debe hacer en la IU de Marketplace durante la configuración o actualizando el bloque. Para actualizar un bloqueo, los usuarios deben tener los permisos develop, manage_models y deploy.

Para anular el valor de una constante actualizando un bloque, haz lo siguiente:

  1. En Looker Marketplace, navega al bloque que quieres actualizar.
  2. Haz clic en el botón Administrar.
  3. Haz clic en el ícono de ajustes junto al nombre del bloque que deseas actualizar. Se abrirá la ventana de configuración del bloque.
  4. Realiza cambios en los valores constantes según sea necesario.
  5. Haz clic en Update para cerrar la ventana de configuración de bloques y actualizar el bloque con tus cambios.

Los cambios se reflejan en el archivo marketplace_lock.lkml de solo lectura de tu proyecto instalado.

Cómo preservar las personalizaciones de un bloque de mercado que usa extensiones

Algunos de los bloques disponibles en Looker Marketplace se componen de proyectos que usan extensión de LookML. Looker convertirá todos los bloques de Marketplace para instancias de Looker 21.8 o versiones posteriores en una estructura de proyecto que utilice definiciones más precisas de LookML y quitará la compatibilidad con los bloques que se basen en extends.

Looker te recomienda instalar la versión basada en perfeccionamientos de cualquier bloque de Marketplace que tengas en tu instancia a medida que estos bloques estén disponibles, y se reemplazarán los creados con extensiones. Aunque este proceso de reemplazo es sencillo: puedes instalar el nuevo bloque (refinamientos) de la lista de bloques de Looker Marketplace y desinstalar el bloque original (extends) en la página Administrar de Looker Marketplace, pero no conservará ninguna de las personalizaciones que se hayan realizado al bloque que se creó con extensiones. Looker tampoco transferirá ningún contenido ni funciones de Looker que se basen en ese contenido (paneles, exploraciones, entregas de contenido programadas, alertas) del bloque original al nuevo.

En esta sección, se describe cómo conservar las personalizaciones en un bloque compilado con proyectos que usan extensiones que, de otro modo, serían difíciles o llevarían mucho tiempo replicar desde cero.

Para conservar las personalizaciones de tu bloque, un usuario con la capacidad de instalar y administrar paquetes desde Marketplace debe hacer lo siguiente:

  1. Actualizar el proyecto CONFIG del bloque original a fin de prepararlo para la migración
  2. Instala la nueva versión del bloque desde Looker Marketplace
  3. Transfiere las personalizaciones al nuevo bloqueo de Marketplace
  4. Recrear contenido de Looker basado en el bloque original
  5. Desinstala la versión del bloque que se compiló con las extensiones.

Actualiza un bloque personalizado para prepararte para la migración

En esta sección, se describe cómo actualizar los archivos de proyecto clave en un bloque que se compiló con extensiones para que puedas copiar las personalizaciones del bloque en una nueva versión del bloque basada en mejoras. Un bloque que se basa en un proyecto que usa extensiones se instala desde el mercado como un proyecto CORE de solo lectura y un proyecto CONFIG editable.

  1. Navega al proyecto CONFIG del bloque desde la sección Desarrollar de una de las siguientes maneras:

    • Haz clic en la opción Projects y, luego, en el nombre del proyecto.
    • Haz clic en el nombre del proyecto CONFIG del bloque en la lista de proyectos.

    Los nombres de los proyectos de CONFIG suelen terminar en _config, mientras que el nombre del proyecto CORE no suele tener un sufijo.

  2. Abre el archivo de modelo del proyecto, que podría verse de la siguiente manera:


    explore: ga_sessions_config {
      extends: [ga_sessions_core]
      extension: required
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: future_input_config {
      extends: [future_input_core]
      extension: required
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. En Modo de desarrollo:

    1. Borra las líneas extends y extension completas.
    2. Borra _config de los nombres de explore.
    3. Antepón + a los nombres explore.

    El ejemplo de archivo de modelo anterior se vería así:


    explore: +ga_sessions {
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: +future_input {
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. Copia y conserva el contenido de este archivo para un paso posterior.

Cómo instalar el nuevo bloque de mercado

Un bloque que se basa en un proyecto que usa refinamiento se instala desde el mercado como un solo proyecto de LookML editable que importa de forma remota el proyecto que contiene todo el código de LookML y la parametrización constante.

  1. Selecciona el ícono de tienda en la barra de menú de Looker para navegar a Looker Marketplace.
  2. Haz clic en la ficha para el nuevo bloqueo de Marketplace basado en mejoras. Este bloque tiene el mismo nombre que el bloque existente que se compiló con extensiones.
  3. Haz clic en Install para instalar el bloque nuevo. Una vez que se instale este bloque, verás dos fichas idénticas en la página Administrar del mercado de Looker.

Transfiriendo las personalizaciones al nuevo bloqueo de Marketplace

En esta sección, se describe cómo transferir las actualizaciones que realizaste en el bloque original (extiende) al bloque nuevo (perfeccionamientos).

  1. Desde la sección Develop, abre el proyecto del bloque nuevo de una de las siguientes maneras:

    • Haz clic en la opción Proyectos y, luego, en el nombre del proyecto.
    • Haz clic en el nombre del proyecto del bloque en la lista de proyectos.

    Por lo general, el nombre de un bloque de perfeccionamiento de mercado se antepone con marketplace_ seguido del ID de la ficha.

  2. En el archivo refinements.lkml, pega el contenido actualizado del archivo de modelo del bloque original (extiende). Asegúrate de conservar las instrucciones include que ya estén en el archivo de perfeccionamiento.

Cómo volver a crear contenido de Looker según el bloque original

El último paso para adoptar la versión basada en mejoras de un bloque de mercado es desinstalar la versión original basada en extensiones del bloque. Algunos bloques basados en extensiones contienen paneles y Explorar de LookML precompilados. Si los usuarios crearon alertas o publicaciones programadas que se basan en cualquier panel de LookML definido en el bloque original (extiende), esas alertas o programaciones se inhabilitarán o fallarán, respectivamente, una vez que se desinstale ese bloque de Looker Marketplace.

Debes volver a crear estas alertas o publicaciones programadas en los paneles de LookML del nuevo bloque (definiciones más precisas). Los administradores y usuarios de Looker con los permisos adecuados para las programaciones y las alertas pueden usar las páginas Alertas y programaciones en la sección de administración para buscar los nombres de los paneles del bloque (extends) y, luego, crear alertas nuevas o publicaciones programadas según sea necesario en los paneles correspondientes del bloque (refinements).

También debes modificar cualquier otro contenido de Looker que haga referencia a las exploraciones o los paneles de LookML del bloque original (extender) para que apunte al nuevo bloque (refinamientos), según sea necesario.

Desinstala el bloque original

Para desinstalar la versión del bloque que se compiló con extensiones, haz lo siguiente:

  1. Selecciona el ícono de tienda en la barra de menú de Looker para navegar al mercado de Looker.

  2. En Looker Marketplace, selecciona Administrar en el menú de navegación del lado izquierdo para abrir la página Administrar.

  3. En la página Administrar, haz clic en el ícono de papelera para desinstalar el bloque original (extiende). Puedes diferenciar la lista de bloqueos de extensiones de la lista de bloqueos de refinamiento si observas los números de versión. El bloque de extensión será una versión principal detrás del bloque de refinamiento. Por ejemplo, el bloque de extensión puede ser la versión 1.0.4 y el bloque de refinamiento puede ser la versión 2.0.0.

Una vez que se desinstale el bloque, la ficha del bloque original (extiende) desaparecerá de la barra de navegación izquierda de la instancia de Looker, sus exploraciones desaparecerán de la sección Explorar, sus paneles de LookML desaparecerán de la carpeta Paneles de LookML, y las alertas o publicaciones programadas que se basen en los paneles de LookML del bloque se inhabilitarán o fallarán, respectivamente.

Solucionar problemas de un bloqueo

Si un bloqueo de Marketplace muestra errores, es posible que tu esquema no coincida con la estructura del bloqueo.

También te recomendamos que verifiques que las constantes que se proporcionaron durante la instalación del bloque, que representan la conexión, la base de datos o el esquema del bloque, se hayan definido correctamente. Para ello, puedes hacer lo siguiente:

  1. Selecciona el ícono de tienda en la barra de menú de Looker para navegar a Looker Marketplace.

  2. En el mercado de Looker, selecciona Administrar en el panel de navegación de la izquierda para abrir la página Administrar.

  3. En la página Administrar, haz clic en el ícono de engranaje del bloque para ver sus ajustes de configuración.

  4. En la ventana Update configurations, confirma que el bloque esté configurado correctamente. Haz clic en Actualizar después de realizar los cambios para guardarlos y cerrar la ventana de configuración del bloque.