Looker puede facilitar la comprensión de los datos basados en el tiempo 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 consulte datos creados en California no tiene que restar manualmente tres horas para filtrar o interpretar sus consultas.
Looker convierte los datos basados en el tiempo cuando genera SQL durante una consulta de un Look, una Exploración o un panel de control. 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 SQL Runner no convierten los datos basados en el tiempo.
En Looker, hay varios ajustes que especifican cómo convertir los datos basados en el tiempo:
- Zona horaria del sistema
- Zona horaria de la base de datos
- Zonas horarias específicas de usuarios
- Zona horaria de la aplicación
- Zona horaria de consulta
convert_tz
Parámetro de LookMLsql
Parámetro de LookML
Zona horaria del sistema
La zona horaria del sistema es la zona horaria en la que está configurado el servidor que ejecuta Looker. La base de datos interna de Looker, que almacena la información disponible en los Exploraciones 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 Looker. En las instancias alojadas en Looker, la zona horaria del sistema siempre es UTC. Las instancias alojadas por el cliente pueden estar en una zona horaria del sistema diferente. Cambiar la zona horaria del sistema no es una tarea sencilla y no se recomienda. Si necesitas ajustar las marcas de tiempo en una exploración de actividad del sistema, usa cálculos de tabla para crear columnas con el tiempo ajustado. Por ejemplo, para convertir de UTC a EST, puedes crear una columna con el cálculo de tabla add_hours(-5, ${time})
.
Zona horaria de la base de datos
Cuando añades una conexión a una base de datos, defines el valor de Zona horaria de la base de datos en la página Configuración de la conexión.
Este ajuste representa la zona horaria en la que se encuentra tu base de datos, que suele ser el tiempo universal coordinado (UTC). Si asigna a este valor una zona horaria distinta a la de su base de datos, puede que obtenga resultados inesperados.
Zonas horarias específicas de usuarios
El ajuste más importante para la conversión de datos basada en la hora es la opción Zonas horarias específicas de los usuarios, que se encuentra en la página Configuración general de la sección Administrar de Looker.
Puedes habilitar o inhabilitar Zonas horarias específicas de usuarios:
- Cuando está habilitada, a cada usuario de Looker se le asigna una zona horaria, que especifica la apariencia de los resultados de sus consultas.
- Cuando está inhabilitada, los usuarios no tienen zonas horarias individuales asignadas a sus cuentas. En su lugar, todas las consultas se ejecutan con el valor de Zona horaria de la consulta.
Si la opción Zonas horarias específicas de los usuarios está habilitada, los usuarios pueden definir su zona horaria en la página Cuenta, o bien los administradores de Looker pueden asignar zonas horarias a los usuarios en la página Usuarios. Si no se define una zona horaria para un usuario, su cuenta usará de forma predeterminada el ajuste Zona horaria de la aplicación de Looker.
Cada vez que un usuario crea una consulta, esta se crea en la zona horaria del usuario. Por lo tanto, cuando una consulta devuelve 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 usa 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 Looks.
Las opciones de este menú desplegable son las siguientes:
- Zona horaria de cada baldosín (solo en los paneles): todas las consultas se ejecutan en la zona horaria con la que se guardaron.
- Zona horaria del visor: todas las consultas se ejecutan en la zona horaria actual del usuario.
- Una lista de todas las zonas horarias, que los usuarios pueden elegir manualmente si quieren.
De forma predeterminada, todas las consultas se realizan en la zona horaria con la que se crearon. Es decir, si Alicia crea una consulta con la zona horaria "America/Los_Angeles" y se la envía a Borja, Borja verá la consulta con la zona horaria "America/Los_Angeles", aunque su zona horaria sea "America/New_York". Del mismo modo, el desglose siempre se realiza en la zona horaria en la que se creó la consulta.
Cuando consultan una consulta, los usuarios pueden usar el menú desplegable para anular la zona horaria y elegir su zona horaria del visor o cualquier otra zona horaria para esa consulta o para el conjunto de consultas del panel de control.
Aspectos que debes tener en cuenta al usar zonas horarias específicas de usuarios
Si habilita la opción Zonas horarias específicas de los usuarios, los usuarios de diferentes zonas horarias pueden ver los datos de forma distinta.
Por ejemplo, las horas exactas que componen el periodo last month
varían según la zona horaria, por lo que los usuarios pueden ver valores de datos diferentes si se encuentran en zonas horarias distintas, pero ambos filtran por last month
.
Zona horaria de la aplicación
El ajuste Zona horaria de la aplicación se puede configurar 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 de las entregas de contenido. La zona horaria que se usa para las entregas de contenido no afecta a los datos basados en la hora que devuelve una consulta, sino solo a la hora en que se envía una entrega de datos.
Si habilitas la opción Zonas horarias específicas de usuario, la zona horaria de la aplicación será la predeterminada para los usuarios que no tengan ningún valor de zona horaria en sus cuentas.
zona horaria de consulta
La opción Zona horaria de la consulta solo se muestra si has inhabilitado Zonas horarias específicas del usuario. En ese caso, debe definir el valor Zona horaria de la consulta cuando añada una conexión a una base de datos en la página Configuración de la conexión.
Si inhabilitas Zonas horarias específicas de usuario,todas las consultas de datos basados en la hora usarán la Zona horaria de la consulta y Looker convertirá todos los datos basados en la hora de la Zona horaria de la base de datos a la Zona horaria de la consulta.
convert_tz
Parámetro de LookML
Looker convierte las zonas horarias de forma predeterminada. Para inhabilitar la conversión de zona horaria en un campo concreto, puede 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
.
sql
Parámetro de LookML
También puedes definir manualmente la conversión de zona horaria mediante las funciones del dialecto de tu base de datos en el parámetro sql
de una dimensión de LookML. Por ejemplo, para definir manualmente la conversión de zona horaria en MySQL, puede usar el siguiente LookML:
dimension_group: created {
type: time
timeframes: [time, date]
sql: CONVERT_TZ(${TABLE}.created_at,'UTC','PST') ;;
}
Notas sobre el dialecto de MySQL
MySQL requiere una tabla de zonas horarias para que funcione su función de conversión de zonas horarias. Un administrador puede ejecutarlo. Puedes consultar más información en la documentación de MySQL.
Notas sobre el dialecto de Postgres
Looker usa el ajuste del controlador para seleccionar la zona horaria de destino. Esto puede afectar a 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 dialectos de bases de datos para la conversión de zonas horarias
Para que Looker convierta las zonas horarias de tu proyecto de Looker, el dialecto de tu 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? |
---|---|
Actian Avalanche | No |
Amazon Athena | Sí |
Amazon Aurora MySQL | Sí |
Amazon Redshift | Sí |
Amazon Redshift 2.1+ | Sí |
Amazon Redshift Serverless 2.1+ | Sí |
Apache Druid | No |
Apache Druid 0.13+ | Sí |
Apache Druid 0.18+ | Sí |
Apache Hive 2.3+ | Sí |
Apache Hive 3.1.2+ | Sí |
Apache Spark 3+ | Sí |
ClickHouse | No |
Cloudera Impala 3.1+ | Sí |
Cloudera Impala 3.1+ with Native Driver | Sí |
Cloudera Impala with Native Driver | Sí |
DataVirtuality | No |
Databricks | Sí |
Denodo 7 | No |
Denodo 8 & 9 | No |
Dremio | Sí |
Dremio 11+ | Sí |
Exasol | No |
Firebolt | No |
Google BigQuery Legacy SQL | No |
Google BigQuery Standard SQL | Sí |
Google Cloud PostgreSQL | Sí |
Google Cloud SQL | Sí |
Google Spanner | Sí |
Greenplum | Sí |
HyperSQL | No |
IBM Netezza | Sí |
MariaDB | Sí |
Microsoft Azure PostgreSQL | Sí |
Microsoft Azure SQL Database | Sí |
Microsoft Azure Synapse Analytics | Sí |
Microsoft SQL Server 2008+ | No |
Microsoft SQL Server 2012+ | No |
Microsoft SQL Server 2016 | Sí |
Microsoft SQL Server 2017+ | Sí |
MongoBI | No |
MySQL | Sí |
MySQL 8.0.12+ | Sí |
Oracle | Sí |
Oracle ADWC | Sí |
PostgreSQL 9.5+ | Sí |
PostgreSQL pre-9.5 | Sí |
PrestoDB | Sí |
PrestoSQL | Sí |
SAP HANA | No |
SAP HANA 2+ | No |
SingleStore | Sí |
SingleStore 7+ | Sí |
Snowflake | Sí |
Teradata | No |
Trino | Sí |
Vector | No |
Vertica | Sí |