Personaliza los bloqueos de Looker Marketplace

Looker BlocksTM son modelos de datos compilados previamente para patrones analíticos 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 bloqueos de Looker disponibles, incluidos los bloques que actualmente no se encuentran disponibles en Looker Marketplace y los métodos alternativos de personalización de bloques, consulta la página de documentación de Bloqueos de Looker.

Requisitos para instalar y administrar bloques de Looker de Looker Marketplace

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

  • Si instalas el 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 de Importación de proyectos locales Labs. Estos bloques contienen un parámetro local_dependency:

    • Analítica 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 la instalación y administración de bloques de Looker desde Looker Marketplace.

Cómo acceder a LookML de un bloqueo de Marketplace

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

Una vez que se instale un bloque desde Marketplace, podrás acceder al proyecto desde el menú Desarrollo haciendo clic en el nombre del proyecto en la lista de proyectos. Por lo general, el nombre de un bloqueo de definiciones de Marketplace suele estar precedido por marketplace_ seguido del ID de la ficha.

Aunque no puedes modificar directamente el proyecto CORE de solo lectura de un bloque, es posible que quieras usar LookML que está 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 hasta los archivos del proyecto del bloque en el IDE y expande el directorio imported_projects en el navegador de archivos del IDE.

Bloquear estructura de archivos

Cuando instalas un bloque compilado para perfeccionamientos, estos archivos se crean automáticamente como parte de la sección CONFIG del proyecto de bloque:

Nombre del archivo Acceso Función
<model_name>.model.lkml Solo lectura para todos los usuarios Archivo de modelo virtual que está 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 Editable para los usuarios con permisos de develop Describe el proyecto y sus dependencias externas. Contiene el ID de la ficha de Marketplace para la instalación del bloque y facilita la importación remota de los archivos del proyecto CORE 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 ficha específica, la versión y la información del modelo asociada con la instalación. Contiene información sobre las constantes que se configuran durante la instalación (y que se pueden actualizar mediante la opción Administrar en la IU de Marketplace).
refinements.lkml Editable para los usuarios con permisos de develop Permite que los desarrolladores definan mejor las vistas y las exploraciones definidas en los archivos del proyecto CORE importados.

Personalización de un bloqueo de Marketplace

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 principal del bloque o incluso agregar nuevas vistas y exploraciones que aún no están definidas en el proyecto principal. Todo lo que es posible 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 del 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ás limitado a modificar estos archivos para lograr las personalizaciones que deseas. También puedes crear archivos nuevos en el proyecto CONFIG. Solo asegúrate de include los archivos nuevos 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 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 lo siguiente:

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 utilizar mejoras 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 de modo que aparezca en la IU como Aircraft Simplifica:

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” del bloque, que básicamente importa los modelos desde el proyecto CORE.

Consulta la documentación sobre mejoras de Looker para obtener más información sobre este tema avanzado.

Cómo personalizar el archivo de manifiesto editable

En los bloques que usan ajustes, 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 CONFIG manifest.lkml para agregar parámetros del proyecto a los que ya aparecen en el archivo de manifiesto del proyecto CORE. Por ejemplo, puedes agregar un local_dependency para join tu bloque a otro en la misma instancia de Looker.

Antes de que puedas usar un bloque que contenga un parámetro local_dependency o compilar en él, un administrador de Looker debe habilitar la función Importación de proyectos locales Labs.

Actualiza valores para constantes

Las constants del bloque se definen en el archivo de manifiesto del proyecto CORE importado. Si se permite, la anulación del valor de una 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 mediante la actualización de un bloque, haz lo siguiente:

  1. En Looker Marketplace, navega al bloque que deseas actualizar.
  2. Haz clic en el botón Administrar.
  3. Haz clic en el ícono de ajustes que se encuentra junto al nombre del bloque que deseas actualizar. Se abrirá la ventana de configuración de bloques.
  4. Modifica los valores constantes según sea necesario.
  5. Haz clic en Actualizar 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 del proyecto instalado.

Preservar las personalizaciones de un bloque de Marketplace que use extensiones

Algunos de los bloques que están disponibles en Looker Marketplace estaban compuestos por proyectos que usan las extends de LookML. Looker está convirtiendo todos los bloqueos de Marketplace para instancias en Looker 21.8 o versiones posteriores en una estructura de proyecto que utiliza mejoras de Looker y quitará la compatibilidad con los bloqueos basados en extends.

Looker recomienda que instales la versión basada en mejoras de cualquier bloque de Marketplace que tengas en tu instancia a medida que estos bloques estén disponibles y reemplaces los bloques compilados con extensiones. Si bien este proceso de reemplazo es sencillo, puedes instalar el nuevo bloque (perfeccionamiento) de la ficha de bloqueo de Looker Marketplace y desinstalar el bloque original (extiende) en la página Administrar de Looker Marketplace, esta acción no conservará ninguna de las personalizaciones que se hayan realizado en el bloque con el que se creó las extensiones. Looker tampoco transferirá ningún contenido ni funciones de Looker que se basen en ese contenido (paneles, exploraciones, publicaciones de contenido programadas o alertas) del bloque original al nuevo bloque.

En esta sección, se describe cómo conservar las personalizaciones de un bloque compilado con proyectos que usan extensiones que, de otro modo, serían difíciles o lentos de 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. Actualiza el proyecto CONFIG del bloque original para prepararte para la migración
  2. Instala la versión nueva del bloque desde Looker Marketplace
  3. Transfiere las personalizaciones al nuevo bloqueo de Marketplace
  4. Recrea el contenido de Looker a partir del bloque original
  5. Desinstala la versión del bloque con el que se compiló.

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

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

  1. Navega al proyecto CONFIG del bloque desde la sección Develop 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 los proyectos CONFIG suelen terminar en _config, mientras que el nombre del proyecto CORE generalmente no tiene un sufijo.

  2. Abre el archivo del modelo del proyecto, que podría ser similar al siguiente:


    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 todas las líneas extends y extension.
    2. Borra _config de los nombres de explore.
    3. Antepón + a los nombres de 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 posterior.

Cómo instalar el nuevo bloqueo de Marketplace

Un bloque basado en un proyecto en el que se usan ajustes se instala desde Marketplace como un único proyecto editable de LookML que importa de forma remota el proyecto que contiene todo 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 del nuevo bloqueo de Marketplace basado en mejoras. Este bloque tiene el mismo nombre que el bloque existente con el que se compiló.
  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 de Looker Marketplace.

Cómo transferir personalizaciones al nuevo bloqueo de Marketplace

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

  1. En la sección Desarrollar, 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 bloqueo de definiciones 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 del bloque original (extiende). Asegúrate de conservar todas las declaraciones include que ya estén en el archivo de mejoras.

Volver a crear contenido de Looker basado en el bloque original

El último paso para adoptar la versión basada en ajustes de un bloqueo de Marketplace es desinstalar la versión original extendida del bloqueo. Algunos bloques basados en extensiones contienen paneles y exploraciones de LookML compilados previamente. Si los usuarios crearon alertas o entregas 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, cuando se desinstale el bloqueo de Looker Marketplace.

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

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

Cómo desinstalar el bloque original

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

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

  2. En Looker Marketplace, selecciona Administrar en el panel de navegación del lado 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 (extender). Para diferenciar la lista de entidades bloqueadas extendida de la lista de bloques de mejoras, observa los números de versión. El bloque extension será una versión principal detrás del bloque de refinamientos. 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 desinstale el bloque, la lista de bloques original (extendida) desaparecerá del panel de navegación izquierdo 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 cualquier alerta o entrega programada que se base en los paneles de LookML del bloque se inhabilitará o fallará, respectivamente.

Solución de problemas de un bloque

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

También puedes verificar que las constants 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 Looker Marketplace, selecciona Administrar en el panel de navegación del lado izquierdo para abrir la página Administrar.

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

  4. En la ventana Actualizar configuraciones, confirma que el bloque esté configurado correctamente. Haz clic en Actualizar después de realizar cualquier cambio para guardar las actualizaciones y cerrar la ventana de configuración de bloques.