Usar la configuración de zona horaria

Looker puede hacer que los datos basados en el tiempo sean más fáciles de comprender, ya que los convierte a diferentes zonas horarias. Los usuarios pueden ver los resultados de las consultas y crear filtros con datos basados en el tiempo que se convierten a sus zonas horarias locales. Por ejemplo, un usuario de Nueva York que ve datos creados en California no tiene que restar manualmente tres horas para filtrar o interpretar sus consultas.

Looker convierte datos basados en el tiempo cuando genera SQL durante una consulta de una vista, una exploración o un panel. Los datos subyacentes no se ven afectados, sino que los resultados de la consulta se convierten mediante la configuración de zona horaria de Looker. Esto también significa que las consultas que se ejecutan con el Ejecutor de SQL no convierten los datos basados en el tiempo.

Varios parámetros de configuración de Looker especifican cómo convertir datos basados en el tiempo:

Zona horaria del sistema

La zona horaria del sistema es la zona horaria para la que está configurado el servidor que ejecuta Looker. La base de datos interna de Looker, que almacena la información disponible en i__looker y en las exploraciones de actividad del sistema, almacena datos basados en el tiempo en la zona horaria del sistema.

La zona horaria del sistema no se puede configurar a través de la aplicación de Looker. Para las instancias alojadas en Looker, la zona horaria del sistema siempre está configurada como UTC. Las instancias alojadas por el cliente pueden estar en una zona horaria del sistema diferente. Cambiar la zona horaria del sistema no es trivial y no se recomienda. Si necesitas ajustar las marcas de tiempo en una i__looker o una exploración de la actividad del sistema, Looker recomienda usar cálculos de tablas para crear columnas con ajuste de tiempo. Por ejemplo, para convertir de UTC a EST, puedes crear una columna con el cálculo basado en tablas add_hours(-5, ${time}).

Zona horaria de la base de datos

Cuando agregas una conexión a una base de datos, debes establecer el valor de la zona horaria de la base de datos en la página Configuración de la conexión.

Este parámetro de configuración representa la zona horaria en la que se encuentra tu base de datos, que suele ser la hora universal coordinada (UTC). Establecer este valor en cualquier otra zona que no sea la zona horaria en la que se encuentra tu base de datos puede generar resultados inesperados.

Zonas horarias elegidas por los usuarios

El parámetro de configuración más importante para la conversión de datos basados en el tiempo es la opción Zonas horarias específicas del usuario, que se encuentra en la página Configuración general de la sección Administrador de Looker.

Puedes habilitar o inhabilitar las Zonas horarias específicas del usuario:

  • Cuando se habilita, a cada usuario de Looker se le asigna una zona horaria, que especifica el aspecto de los resultados de sus consultas.
  • Cuando se inhabilita, los usuarios no tienen zonas horarias individuales asignadas a sus cuentas. En su lugar, todas las consultas se ejecutan con el valor Query Time Zone.

Cuando las zonas horarias específicas del usuario están habilitadas, un usuario puede configurar su zona horaria en la página de su Cuenta, o los administradores de Looker pueden asignar zonas horarias a los usuarios en la página Usuarios. Si no se establece una zona horaria para un usuario, la configuración predeterminada de su cuenta será la Zona horaria de la aplicación de Looker.

Cuando un usuario crea una consulta, esta se hace en la zona horaria del usuario. Como resultado, cuando una consulta muestra datos basados en el tiempo, Looker convierte los datos de la zona horaria de la base de datos a la zona horaria del usuario. Cuando un usuario utiliza valores de filtro relacionados con el tiempo en una consulta, Looker convierte los valores de filtro a la zona horaria de la base de datos.

Además, cuando habilitas esta opción, Looker muestra un menú desplegable Zona horaria en Exploraciones y Aspecto.

Las opciones de este menú desplegable son las siguientes:

  • Zona horaria de cada mosaico (solo paneles): Todas las consultas se ejecutan en la zona horaria en la que se guardaron.
  • Zona horaria del visualizador: Todas las consultas se ejecutan en la configuración de la zona horaria actual del usuario.
  • Una lista de cada zona horaria individual, que los usuarios pueden elegir manualmente si lo desean.

De forma predeterminada, todas las consultas usan la zona horaria con la que se creó. En otras palabras, si Alicia crea una consulta con la zona horaria “América/Los Ángeles” y se la envía a Roberto, Roberto verá la consulta con la zona horaria “América/Los Ángeles”, incluso si la zona horaria de Roberto está configurada como “América/Nueva York”. Del mismo modo, el desglose siempre se establece de forma predeterminada en la zona horaria con la que se creó la consulta.

Cada vez que consulten una consulta, los usuarios podrán utilizar el menú desplegable para anular la zona horaria. Para ello, deberán elegir la Zona horaria del visualizador o cualquier otra zona horaria para esa consulta o el conjunto de consultas de ese panel.

Aspectos que debes tener en cuenta con las zonas horarias específicas del usuario

Cuando habilitas las zonas horarias específicas del usuario, es posible que los usuarios de diferentes zonas horarias vean los datos de manera diferente.

Por ejemplo, las horas exactas que componen el período last month podrían diferir entre zonas horarias, por lo que los usuarios pueden ver diferentes valores de datos si se encuentran en zonas horarias diferentes, pero ambos filtran por last month.

Zona horaria de la aplicación

El parámetro de configuración Zona horaria de la aplicación se puede establecer en la página Configuración general de la sección Administrador de Looker.

La zona horaria de la aplicación es la zona horaria predeterminada para las entregas de contenido. La zona horaria que se usa para las entregas de contenido no afecta los datos basados en el tiempo devueltos por una consulta; solo afecta el momento en que se envía una entrega de datos.

Si habilitas la opción Zonas horarias específicas del usuario, la Zona horaria de la aplicación será la predeterminada para los usuarios que no tengan configurado un valor de zona horaria para sus cuentas.

Zona horaria de la consulta

La opción Zona horaria de la consulta se muestra únicamente si inhabilitaste las Zonas horarias específicas del usuario. En ese caso, establecerás el valor de Query Time Zone cuando agregues una conexión a una base de datos en la página Configuración de conexión.

Si inhabilitas las zonas horarias específicas del usuario, todas las consultas de datos basados en el tiempo usarán la zona horaria de la consulta, y Looker convertirá todos los datos temporales de la zona horaria de la base de datos a la zona horaria de la consulta.

Parámetro de LookML convert_tz

Looker realiza la conversión de la zona horaria de forma predeterminada. Si quieres inhabilitar la conversión de la zona horaria para un campo individual, puedes usar el parámetro convert_tz de LookML. Por ejemplo:

dimension_group: created {
  type: time
  timeframes: [time, date]
  convert_tz: no
}

Para obtener más información, consulta la página de documentación del parámetro convert_tz.

Parámetro de LookML sql

También puedes definir manualmente la conversión de la zona horaria mediante las funciones del dialecto de tu base de datos dentro del parámetro sql en una dimensión de LookML. Por ejemplo, para definir de forma manual la conversión de zona horaria en MySQL, puedes usar el siguiente LookML:

dimension_group: created {
 type: time
 timeframes: [time, date]
 sql: CONVERT_TZ(${TABLE}.created_at,'UTC','PST') ;;
}

Notas del dialecto MySQL

MySQL requiere una tabla de zonas horarias para que su función de conversión de zona horaria funcione. Esto lo puede ejecutar un administrador. Obtén más información en la documentación de MySQL.

Notas del dialecto Postgres

Looker usa el parámetro de configuración del controlador para seleccionar la zona horaria de destino. Esto puede afectar la forma en que se procesan las consultas en el Ejecutor de SQL en comparación con pgAdmin, ya que Looker usará la fecha y hora actual en la zona horaria seleccionada.

Compatibilidad con el dialecto de la base de datos para la conversión de zona horaria

Para que Looker convierta zonas horarias en tu proyecto de Looker, el dialecto de la base de datos debe admitir la conversión de zonas horarias. En la siguiente tabla, se muestra qué dialectos admiten la conversión de zona horaria en la versión más reciente de Looker:

Dialecto ¿Es compatible?
Avalancha de Actian
No
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Apache Druid
No
Apache Druid 0.13 y versiones posteriores
Apache Drued 0.18 y versiones posteriores
Apache Hive 2.3 o versiones posteriores
Apache Hive 3.1.2 o versiones posteriores
Apache Spark 3 y versiones posteriores
ClickHouse
No
Cloudera Impala 3.1 y versiones posteriores
Cloudera Impala 3.1+ con Native Drive
Cloudera Impala con Native Driver
DataVirtuality
No
Databricks
Denodo 7
No
Denodo 8
No
Dremio
Dremio 11 y versiones posteriores
Exasol
No
Rayo de fuego
No
SQL heredado de Google BigQuery
No
SQL estándar de Google BigQuery
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Ciruela verde
HyperSQL
No
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Base de datos de Microsoft Azure SQL
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008 y versiones posteriores
No
Microsoft SQL Server 2012 y versiones posteriores
No
Microsoft SQL Server 2016
Microsoft SQL Server 2017 y versiones posteriores
MongoBI
No
MySQL
MySQL 8.0.12 o versiones posteriores
Oracle
ADWC de Oracle
PostgreSQL 9.5 y versiones posteriores
PostgreSQL anterior a la 9.5
PrestoDB
PrestoSQL
SAP HANA 2 y versiones posteriores
No
SingleStore
SingleStore 7+
Snowflake
Teradata
No
Trino
Vector
No
Vertica