sql_analytic_model_name (para Explorar)

En esta página, se hace referencia al parámetro sql_analytic_model_name que forma parte de una Exploración.

sql_analytic_model_name también se puede usar como parte de una vista, como se describe en la página de documentación del parámetro sql_analytic_model_name (para vistas).

Uso

explore: explore_name {
  sql_analytic_model_name: analytic_model_name ;;
}
Jerarquía
sql_analytic_model_name
Valor predeterminado
Ninguno

Acepta
Nombre de un modelo analítico integrado en la base de datos

Reglas especiales
  • Los modelos analíticos solo son compatibles con las conexiones de BigQuery y Snowflake.
  • sql_analytic_model_name para Exploraciones solo se debe usar cuando la misma vista puede describir varios modelos analíticos en tu base de datos.
  • El modelo analítico al que hace referencia sql_analytic_model_name debe ser accesible dentro de la conexión de base de datos de su modelo.
  • Si el modelo analítico se encuentra en una base de datos, un esquema, un proyecto o un conjunto de datos diferentes del que definiste en la conexión de la base de datos, debes delimitar el nombre del modelo analítico.

Definición

En el caso de las conexiones de BigQuery y Snowflake, el parámetro sql_analytic_model_name especifica el nombre de un modelo analítico integrado en la base de datos existente (un gráfico de BigQuery o una vista semántica en Snowflake) para usar como base de un Explorar de LookML.

En la mayoría de los casos, usas el parámetro sql_analytic_model_name (para las vistas) para especificar un modelo analítico en tu archivo de vista. Luego, en ese archivo de vista, defines las dimensiones y medidas de LookML que se basan en el modelo analítico de tu base de datos. Sin embargo, en los casos en que tu base de datos tenga varios modelos analíticos que se puedan definir con los mismos campos de LookML, puedes usar el parámetro sql_analytic_model_name en un parámetro explore.

Cuando especificas un sql_analytic_model_name en un parámetro explore, la exploración anulará el modelo analítico especificado en el archivo de vista y, en su lugar, consultará el modelo analítico que especificaste en el sql_analytic_model_name del parámetro explore. En este caso, la exploración usará las dimensiones y las medidas de LookML que se definen en el archivo de vista, pero las aplicará al modelo analítico que se especifica en el parámetro sql_analytic_model_name del parámetro explore.

Cómo definir el alcance de los nombres de los modelos analíticos

Cuando haces referencia a un modelo analítico solo con su nombre, Looker usa la ruta de búsqueda predeterminada (la base de datos y el esquema) que tu administrador de Looker configuró en los parámetros de configuración de la conexión de la base de datos.

Si necesitas hacer referencia a un modelo analítico en una base de datos y un esquema diferentes que no se encuentran en la ruta de búsqueda predeterminada del usuario de la base de datos, puedes definir el alcance del nombre del modelo analítico con el formato <database_name>.<schema_name>.<analytic_model_name> para apuntar a otra base de datos o esquema:

  • Para hacer referencia a un modelo analítico de otro esquema, usa <schema_name>.<analytic_model_name>.
  • Para hacer referencia a un modelo analítico de otra base de datos, usa el <database_name>.<schema_name>.<analytic_model_name> completo.

En el caso de una conexión de Google BigQuery, puedes hacer referencia a un modelo analítico en un proyecto y un conjunto de datos diferentes si defines el alcance del nombre del modelo analítico con el formato <project_name>.<dataset_name>.<analytic_model_name>. Consulta la página de documentación sobre la conexión de Google BigQuery para obtener más información.

Ejemplo

A continuación, se muestra un ejemplo de una vista de LookML llamada MyStoreGraphView que se basa en un gráfico de StoreGraph BigQuery en una base de datos de BigQuery, incluidas las dimensiones y las medidas que se asignan al gráfico:

view: MyStoreGraphView {
  sql_analytic_model_name: StoreGraph ;;

  dimension: location_id {
    type: number
    sql: Stores_location_id ;;
  }

  dimension: population {
    type: number
    sql: Locations_population ;;
  }

  dimension: location_name {
    type: string
    sql: Locations_name ;;
  }

  measure: locations_total_population {
    type: number
    sql: Locations_total_population ;;
  }
}

Suponiendo que la base de datos tiene otro gráfico llamado ShopDetailsGraph con los mismos elementos que el StoreGraph, aquí se muestra una exploración que anula el valor sql_analytic_model_name en el archivo de vista MyStoreGraphView. La exploración tendrá las mismas dimensiones y medidas de LookML que se definen en MyStoreGraphView, pero consultará el modelo analítico ShopDetailsGraph:

explore: MyStoreGraphView {
  sql_analytic_model_name: ShopDetailsGraph ;;
}

Aspectos para tener en cuenta

Consideraciones para los modelos analíticos en Looker

Cuando uses modelos analíticos integrados en la base de datos, ten en cuenta las siguientes consideraciones y limitaciones:

  • Tipos de datos: Los modelos analíticos solo admiten los siguientes tipos de datos para las dimensiones y las métricas:

    • Se admiten las siguientes dimensiones y medidas:
      • string
      • number
      • date
      • yesno
    • Solo se admite para dimensiones:
      • time
      • date_time
  • Mediciones:

    • Las medidas básicas deben estar predefinidas: Las medidas básicas deben estar predefinidas en el modelo analítico de la base de datos subyacente. Looker no puede definir una nueva medida base realizando una agregación (como type: sum o type: count) en una dimensión de un modelo analítico.
    • Se admiten las medidas basadas en otras medidas: Puedes usar el parámetro sql de una medida de LookML para realizar cálculos no agregados que usen medidas básicas predefinidas del modelo analítico. Cuando creas una medida basada en otras medidas, no puedes definir la nueva medida como un tipo de medida agregada, como sum o count. Debes definir la nueva métrica como un tipo de métrica no agregada, como string, number, date o yesno. Consulta el siguiente ejemplo:

      measure: average_order_amount {
        type: number
        sql: ROUND(${total_order_amount} / NULLIF(${count_orders}, 0), 2) ;;
      }
      
  • Uniones: Una exploración cuya vista base se basa en un modelo analítico no puede incluir ninguna unión. Del mismo modo, una vista basada en un modelo analítico no se puede unir a una exploración que tenga una vista base estándar de LookML.

  • Combinaciones implícitas: Las funciones que dependen de combinaciones implícitas no son compatibles con los modelos analíticos. Algunos ejemplos de funciones que se basan en uniones implícitas son los calendarios personalizados y los campos que se definen con type: location, type: distance o type: zipcode.

  • Las siguientes funciones no son compatibles con los modelos analíticos:

Se debe poder acceder al modelo analítico desde la conexión actual.

Cuando el parámetro sql_analytic_model_name se usa dentro de un objeto explore, ese objeto explore se incluye, a su vez, en un objeto model. (La jerarquía de esta página muestra esta cadena de relaciones). El objeto del modelo tiene un connection de base de datos definido en él. Cuando haces referencia a un modelo analítico en el parámetro sql_analytic_model_name, el modelo analítico debe ser accesible dentro de la conexión asociada especificada en el archivo del modelo.

El administrador de Looker define la base de datos y el esquema predeterminados (o, en el caso de Google BigQuery, el proyecto de facturación y el conjunto de datos) cuando crea la conexión de Looker a tu base de datos.