Personalizar bloques de Looker Marketplace

Looker BlocksTM son modelos de datos prediseñados 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 los métodos de personalización de bloques alternativos, consulta la página de documentación de Bloqueos de Looker.

Requisitos para instalar y administrar Looker Blocks desde Looker Marketplace

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

  • Si instalas el bloqueo mediante 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 Labs Import 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 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 de Looker Marketplace.

Cómo acceder a LookML para un bloque de Marketplace

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

Una vez que un bloque se instala desde Marketplace, puede acceder a su proyecto desde el menú Desarrollar. Para ello, haga clic en el nombre del proyecto en la lista de proyectos. El nombre de un bloque de refinamientos de Marketplace suele estar precedido por marketplace_ seguido del ID de la ficha.

Si bien no puedes modificar directamente un proyecto de CORE de solo lectura de un bloque, es posible que desees utilizar el LookML que se define en los archivos de CORE de solo lectura como referencia cuando personalizas los archivos CONFIG del bloque. Para ver los archivos de CORE del bloque, navega hasta los archivos del proyecto del bloque en el IDE y expande el directorio imported_projects en el navegador de archivos IDE:

Bloquear estructura de archivos

Cuando instalas un bloque creado para refinamientos, estos archivos se crean automáticamente como parte de CONFIG del proyecto de bloque:

Nombre del archivo Acceso Function
<model_name>.model.lkml Solo lectura para todos los usuarios Archivo de modelo virtual que está vinculado a la instalación del bloque; se encarga de la importación de cualquier modelo desde el proyecto CORE del bloque. Cuando se desinstala o actualiza un bloque, se borran los archivos de modelo asociados y se evitan conflictos de modelo entre varias instalaciones de bloques.
manifest.lkml Editable para usuarios con permisos de develop Describe el proyecto y sus dependencias externas. Contiene el ID de la ficha de Marketplace correspondiente a la instalación del bloque y facilita la importación remota de los archivos del proyecto de CORE del bloque a través de 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 lista, la versión y la información del modelo específicos que están 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 Editable para usuarios con permisos de develop Permite a los desarrolladores definir mejor las vistas y las exploraciones definidas en los archivos de proyecto de CORE importados.

Cómo personalizar un bloque de Marketplace

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

Si tienes permisos develop, puedes personalizar el 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 de CORE del bloque o incluso agregar nuevas vistas y exploraciones que aún no están definidas en el proyecto de CORE. Todo lo que se puede hacer con los refinamientos de LookML en otros proyectos de LookML se puede realizar en el archivo refinements.lkml del bloque. La combinación del perfeccionamiento y el LookML original se comporta como si fuera el LookML original para el objeto.

También puedes realizar cambios en el archivo manifest.lkml del proyecto CONFIG a fin de especificar las dependencias que deben capturarse para ese bloque.

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

Cómo personalizar el archivo de mejoras

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 las exploraciones existentes, definir campos nuevos o redefinir los campos existentes, o aplicar etiquetas según sea necesario a fin de crear un modelo para el análisis que desees 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:

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

En el ejemplo anterior, listing_id es el valor del parámetro listing del archivo manifest.lkml.

Puedes usar mejoras para agregar una nueva dimensión 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 ;;
  }
}

O bien, puedes aplicar una etiqueta a una exploración llamada aircraft para que aparezca en la IU como Aeronave simplificada:

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 archivo de modelo virtual en bloque, que básicamente importa los modelos del proyecto de CORE.

Consulta la documentación sobre los refinamientos de LookML para obtener más información sobre este tema avanzado.

Cómo personalizar el archivo de manifiesto editable

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

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

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

Actualiza valores para constantes

Las constantes del bloque se definen en el archivo de manifiesto del proyecto de CORE importado. Si se permite anular un valor de constante, se debe realizar en la IU de Marketplace durante la configuración o mediante la actualización del bloque. Para actualizar un bloqueo, los usuarios deben tener los permisos develop, manage_models y deploy.

Para anular el valor de una constante al actualizar un bloque:

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

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

Preservar las personalizaciones de un bloque de Marketplace que usa extensiones

Algunos de los bloques disponibles en Looker Marketplace estaban compuestos por proyectos que usan ampliaciones de LookML. Looker convertirá todos los bloques de Marketplace en instancias de Looker 21.8 o una versión posterior a una estructura de proyecto que utilice perfeccionamientos de LookML y quitará la compatibilidad con bloques basados en extensiones.

Looker recomienda que instale la versión basada en mejoras de cualquier bloque de Marketplace que tenga en su instancia a medida que estos bloques estén disponibles y reemplace los bloques creados con extensiones. Si bien este proceso de reemplazo es simple: puedes instalar el nuevo bloque (perfeccionamientos) de la ficha de bloqueo de Looker Marketplace y desinstalar el bloque original (ampliados) en la página Administrar en Looker Marketplace, no se conservará ninguna de las personalizaciones que se hayan realizado en el bloque que se compiló con extensiones. Además, Looker no 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 para un bloque compilado con proyectos que utilizan extensiones que, de otro modo, serían difíciles o llevarían mucho tiempo replicarse desde cero.

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

  1. Actualiza el proyecto CONFIG del bloque original a fin de prepararte para la migración
  2. Instale la nueva versión del bloque de Looker Marketplace
  3. Transfiera las personalizaciones al nuevo bloque de Marketplace
  4. Recrea el contenido de Looker basado en el bloque original
  5. Desinstala la versión del bloque que se creó con extensiones

Actualiza un bloque personalizado a fin de prepararte para la migración

Esta sección describe cómo actualizar archivos de proyectos clave en un bloque que se creó con extensiones, de modo que puedas copiar las personalizaciones del bloque en una nueva versión de bloque basada en mejoras. Un bloque basado en un proyecto que usa extensiones se instala desde Marketplace como un proyecto de CORE de solo lectura y un proyecto CONFIG editable.

  1. Navega hasta el proyecto CONFIG del bloque desde la sección Desarrollar 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 CONFIG del bloque en la lista de proyectos.

    Los nombres de proyecto de CONFIG generalmente finalizan en _config, mientras que el nombre del proyecto de CORE generalmente no tiene un sufijo.

  2. Abre el archivo de modelo del proyecto, que puede verse así:


    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 explore.
    3. Antepón + a los nombres explore.

    El ejemplo de archivo de modelo anterior se vería de la siguiente manera:


    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 futuro.

Instalación del nuevo bloque de Marketplace

Consulta los aspectos destacados de la versión Looker 21 para obtener más información sobre los bloqueos que ya se han convertido en conversiones, desde los más extendidos hasta los más precisos. Para diferenciar la lista de extensiones de bloqueo de la lista de restricciones, puedes consultar los números de versión. El bloque de extensiones será una versión principal detrás del bloque de mejoras. Por ejemplo, el bloque de extensiones puede ser la versión 1.0.4 y el bloque de mejoras puede ser la versión 2.0.0.

Un bloque que se basa en un proyecto que usa mejoras se instala desde Marketplace como un proyecto único de LookML que se puede editar y que importa de forma remota el proyecto que contiene todo el LookML y la parametrización constante.

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

Transfiere personalizaciones al nuevo bloque de Marketplace

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

  1. Desde la sección Develop, abre el proyecto del nuevo bloque 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.

    El nombre de un bloque de refinamientos de Marketplace suele estar precedido por marketplace_ seguido del ID de la ficha.

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

Vuelve a crear contenido de Looker basado en el bloque original

El último paso para adoptar la versión basada en mejoras de un bloque de Marketplace es desinstalar la versión original basada en extensiones del bloque. Algunos bloques basados en extensiones contienen paneles prediseñados de LookML y Exploraciones. Si los usuarios crearon alertas o entregas programadas basadas en paneles de LookML definidos en el bloque original (ampliados), esas alertas o programaciones se inhabilitarán o fallarán, una vez que se desinstale ese bloque de Looker Marketplace.

Debes volver a crear estas alertas o entregas programadas en los nuevos paneles (de perfeccionamiento) de LookML. Los administradores y usuarios de Looker con los permisos correspondientes para los programas y las alertas pueden usar las páginas Alertas y programas de la sección Administrador para buscar los nombres del panel (amplíe) y, luego, crear nuevas alertas o entregas programadas según sea necesario en los paneles (perfeccionamientos) correspondientes.

También debes modificar cualquier otro contenido de Looker que haga referencia al panel original de Exploraciones (se extiende) o a los paneles de LookML para apuntar 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 compra en la barra de menú de Looker para navegar a Looker Marketplace.

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

  3. En la página Administrar, haz clic en el ícono de la papelera para desinstalar el bloque original (se extiende). Para diferenciar la lista de extensiones de bloqueo de la lista de restricciones, puedes consultar los números de versión. El bloque de extensiones será una versión principal detrás del bloque de mejoras. Por ejemplo, el bloque de extensiones puede ser la versión 1.0.4 y el bloque de mejoras puede ser la versión 2.0.0.

Una vez que se desinstala el bloque, la ficha de bloque original (se extiende) desaparecerá de la navegación izquierda en 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 se inhabilitarán o fallarán, respectivamente, los paneles de LookML.

Solución de problemas de un bloque

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

Es posible que también desees verificar 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 compra en la barra de menú de Looker para navegar a Looker Marketplace.

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

  3. En la página Administrar, haz clic en el ícono de ajustes para ver los parámetros de configuración.

  4. En la ventana Actualizar configuraciones, confirma que el bloque esté configurado correctamente. Una vez que hayas realizado los cambios, haz clic en Actualizar y cierra la ventana de configuración de bloques.