Cómo usar la configuración de zona horaria

Looker puede hacer que los datos basados en el tiempo sean más fáciles de comprender convirtiéndolos 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 los datos creados en California no tiene que quitar 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; los resultados de las consultas se convierten mediante la configuración de zona horaria de Looker. Esto también significa que las consultas que se ejecutan con un ejecutor de SQL no convierten los datos basados en el tiempo.

Varios parámetros de configuración de Looker especifican cómo convertir los 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 las exploraciones de i__looker y 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 en una exploración de actividad del sistema, Looker te recomienda usar cálculos en 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 horaria que no sea la de tu base de datos puede generar resultados inesperados.

Zonas horarias elegidas por los usuarios

El parámetro de configuración más significativo para la conversión de datos basada 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 Zonas horarias específicas del usuario:

  • Cuando se habilita, se asigna una zona horaria a cada usuario de Looker, que especifica el aspecto de los resultados de las consultas.
  • Cuando se inhabilita, los usuarios no tienen zonas horarias individuales asignadas a sus cuentas. En cambio, todas las consultas se ejecutan con el valor Zona horaria de la consulta.

Con las zonas horarias específicas del usuario habilitadas, un usuario puede establecer su zona horaria en la página de su Cuenta, o bien 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 la cuenta de Looker es la Zona horaria de la aplicación.

Cuando un usuario crea una consulta, esta se crea en su zona horaria. 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 del usuario. Cuando un usuario usa valores de filtro relacionados con el tiempo en una consulta, Looker convierte los valores del filtro a la zona horaria de la base de datos.

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

Las opciones de este menú desplegable son las siguientes:

  • Zona horaria de cada tarjeta (solo paneles): Todas las consultas se ejecutan en la zona horaria con la que se guardaron.
  • Zona horaria del usuario: Todas las consultas se ejecutan según la configuración de zona horaria actual del usuario.
  • Es una lista de todas las zonas horarias individuales, que los usuarios pueden elegir manualmente si lo desean.

De forma predeterminada, todas las consultas usan la zona horaria con la que se creó la consulta. 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 en "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.

Cuando los usuarios visualizan una consulta, pueden usar el menú desplegable para anular la zona horaria. Para ello, pueden elegir la Zona horaria del usuario (Viewer Time Zone) o cualquier otra zona horaria para la consulta o el conjunto de consultas del panel.

Aspectos que debes tener en cuenta para las zonas horarias específicas de los usuarios

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 diferirían entre las zonas horarias, por lo que los usuarios podrían ver valores de datos diferentes si se encuentran en zonas horarias distintas, pero ambos filtran según 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 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 que devuelve 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 zona horaria predeterminada para los usuarios que no tengan configurado un valor de zona horaria para sus cuentas.

Zona horaria de la consulta

Solo se muestra la opción Zona horaria de la consulta si inhabilitaste las Zonas horarias específicas del usuario. En ese caso, configura el valor Zona horaria de la consulta cuando agregues una conexión a una base de datos en la página Configuración de la conexión.

Si inhabilitas 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 basados en el tiempo 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 zona horaria de forma predeterminada. Para inhabilitar la conversión de zona horaria en un campo individual, puedes usar el parámetro de LookML convert_tz. 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 zona horaria con las funciones de dialecto de la base de datos dentro del parámetro sql en una dimensión de LookML. Por ejemplo, para definir manualmente la conversión de zona horaria en MySQL, podrías usar el siguiente LookML:

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

Notas de dialecto de MySQL

MySQL requiere una tabla de zona horaria para que su función de conversión de zona horaria funcione. Un administrador puede realizar esta acción. Puedes obtener más información en la documentación de MySQL.

Notas de dialecto de Postgres

Looker usa el parámetro de configuración del controlador para seleccionar la zona horaria objetivo. Esto puede afectar la forma en que se procesan las consultas en SQL Runner en comparación con pgAdmin, ya que Looker usará la fecha y hora actuales 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 zona horaria. 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 Druid 0.18 y versiones posteriores
Apache Hive 2.3 y versiones posteriores
Apache Hive 3.1.2 y versiones posteriores
Apache Spark 3 y versiones posteriores
ClickHouse
No
Cloudera Impala 3.1 y versiones posteriores
Cloudera Impala 3.1+ con controlador nativo
Cloudera Impala con controlador nativo
DataVirtuality
No
Databricks
Denodo 7
No
Denodo 8
No
Dremio
Dremio 11 y versiones posteriores
Exasol
No
Bola de fuego
No
SQL heredado de Google BigQuery
No
SQL estándar de Google BigQuery
PostgreSQL en Google Cloud
Google Cloud SQL
Google Spanner
Greenplum
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 y versiones posteriores
Oracle
Oracle ADWC
PostgreSQL 9.5 y versiones posteriores
PostgreSQL anterior a 9.5
PrestoDB
PrestoSQL
SAP HANA 2 y versiones posteriores
No
SingleStore
SingleStore 7 y versiones posteriores
Snowflake
Teradata
No
Trino
Vector
No
Vertica