Looker può semplificare la comprensione dei dati basati sul tempo convertendoli in fusi orari diversi. Gli utenti possono visualizzare i risultati delle query e creare filtri con dati basati sul tempo che vengono convertiti nei fusi orari locali. Ad esempio, un utente di New York che visualizza i dati creati in California non deve sottrarre manualmente tre ore per filtrare o interpretare le query.
Looker converte i dati basati sul tempo quando genera SQL durante una query per un look, un'esplorazione o una dashboard. I dati sottostanti non sono interessati; i risultati della query vengono convertiti utilizzando le impostazioni del fuso orario di Looker. Questo significa anche che le query eseguite utilizzando SQL Runner non convertono i dati basati sul tempo.
Diverse impostazioni in Looker specificano come convertire i dati basati sul tempo:
- Fuso orario del sistema
- Fuso orario database
- Fusi orari specifici degli utenti
- Fuso orario applicazione
- Query Time Zone (Fuso orario query)
convert_tz
parametro LookMLsql
Parametro LookML
Fuso orario del sistema
Il fuso orario del sistema è il fuso orario in cui è configurato il server che esegue Looker. Il database interno di Looker, che memorizza le informazioni disponibili nelle esplorazioni i__looker
e Attività di sistema, memorizza i dati basati sul tempo nel fuso orario del sistema.
Il fuso orario di sistema non è configurabile tramite l'applicazione Looker. Per le istanze ospitate su Looker, il fuso orario di sistema è sempre impostato su UTC. Le istanze ospitate dal cliente potrebbero trovarsi in un fuso orario diverso. La modifica del fuso orario di sistema non è banale e non è consigliata. Se devi modificare i timestamp in un'esplorazione i__looker
o di attività di sistema, Looker consiglia di utilizzare i calcoli tabulari per creare colonne con aggiustamento del tempo. Ad esempio, per convertire da UTC a EST, puoi creare una colonna con il calcolo tabulare add_hours(-5, ${time})
.
Fuso orario database
Quando aggiungi una connessione a un database, imposta il valore per il Fuso orario del database nella pagina Impostazioni di connessione.
Questa impostazione rappresenta il fuso orario del database, che in genere è UTC (Coordinated Universal Time). L'impostazione di questo valore su un valore diverso dal fuso orario del database potrebbe comportare risultati imprevisti.
Fusi orari specifici degli utenti
L'impostazione più significativa per la conversione dei dati in base al tempo è l'opzione Fuso orario specifico dell'utente, che si trova nella pagina Impostazioni generali nella sezione Amministrazione di Looker.
Puoi attivare o disattivare i Fusi orari specifici dell'utente:
- Se questa opzione è attivata, a ogni utente di Looker viene assegnato un fuso orario che specifica l'aspetto dei risultati delle query.
- Quando questa opzione è disattivata, agli utenti non vengono assegnati fusi orari individuali ai loro account. ma vengono eseguite utilizzando il valore Fuso orario query.
Se l'impostazione Fusi orari specifici degli utenti è attiva, un utente può impostare il proprio fuso orario nella pagina Account oppure gli amministratori di Looker possono assegnare i fusi orari agli utenti nella pagina Utenti. Se per un utente non è impostato un fuso orario, per il suo account viene utilizzato per impostazione predefinita il fuso orario dell'applicazione di Looker.
Ogni volta che un utente crea una query, questa viene creata nel relativo fuso orario. Di conseguenza, quando una query restituisce dati basati sul tempo, Looker li converte dal fuso orario del database al fuso orario dell'utente. Quando un utente utilizza valori di filtro relativi al tempo in una query, Looker converte i valori del filtro in Database Time Zone.
Inoltre, quando attivi questa opzione, Looker mostra un menu a discesa Fuso orario in Esplorazioni e Look.
Le opzioni di questo menu a discesa sono:
- Fuso orario di ogni riquadro (solo dashboard): tutte le query vengono eseguite nel fuso orario in cui sono state salvate.
- Fuso orario del visualizzatore: tutte le query vengono eseguite nell'impostazione del fuso orario attuale dell'utente.
- Un elenco di ogni singolo fuso orario, che gli utenti possono scegliere manualmente in base alle proprie esigenze.
Per impostazione predefinita, tutte le query utilizzano il fuso orario con cui sono state create. In altre parole, se Alice crea una query con il fuso orario "America/Los Angeles" e la invia a Bob, Bob vedrà la query con il fuso orario "America/Los Angeles", anche se il suo fuso orario è impostato su "America/New York". Analogamente, per impostazione predefinita, l'analisi dettagliata utilizza sempre il fuso orario con cui è stata creata la query.
Ogni volta che visualizzano una query, gli utenti possono utilizzare il menu a discesa per sostituire il fuso orario scegliendo il proprio Fuso orario dell'utente o qualsiasi altro fuso orario per la query o per l'insieme di query della dashboard.
Aspetti da considerare per i fusi orari specifici degli utenti
Quando attivi i Fusi orari specifici degli utenti, gli utenti in fusi orari diversi potrebbero visualizzare i dati in modo diverso.
Ad esempio, le ore esatte che compongono il periodo di tempo last month
variano in base al fuso orario, pertanto gli utenti potrebbero visualizzare valori di dati diversi se si trovano in fusi orari diversi, ma entrambi applicano il filtro last month
.
Fuso orario applicazione
L'impostazione Fuso orario dell'applicazione può essere configurata nella pagina Impostazioni generali della sezione Amministrazione di Looker.
Fuso orario applicazione è il fuso orario predefinito per i caricamenti di contenuti. Il fuso orario utilizzato per i caricamenti dei contenuti non influisce sui dati basati sul tempo restituiti da una query, ma solo sull'ora in cui viene inviato un caricamento dei dati.
Se attivi l'opzione Fusi orari specifici degli utenti, Fuso orario applicazione è il fuso orario predefinito per gli utenti che non hanno impostato un valore per il fuso orario per i propri account.
Fuso orario query
L'opzione Fuso orario query viene visualizzata solo se hai disabilitato Fuso orario specifico dell'utente. In questo caso, imposti il valore Fuso orario query quando aggiungi una connessione a un database nella pagina Impostazioni connessione.
Se disattivi i Fusi orari specifici degli utenti, tutte le query relative ai dati basati sul tempo utilizzano il Fuso orario query e Looker converte tutti i dati basati sul tempo dal Fuso orario del database al Fuso orario query.
convert_tz
parametro LookML
Looker esegue la conversione del fuso orario per impostazione predefinita. Per disattivare la conversione del fuso orario per un singolo campo, puoi utilizzare il parametro convert_tz
LookML. Ad esempio:
dimension_group: created {
type: time
timeframes: [time, date]
convert_tz: no
}
Per saperne di più, consulta la pagina della documentazione relativa al parametro convert_tz
.
sql
parametro LookML
Puoi anche definire manualmente la conversione del fuso orario utilizzando le funzioni del dialetto del database all'interno del parametro sql
in una dimensione LookML. Ad esempio, per definire manualmente la conversione del fuso orario in MySQL, puoi utilizzare il seguente codice LookML:
dimension_group: created {
type: time
timeframes: [time, date]
sql: CONVERT_TZ(${TABLE}.created_at,'UTC','PST') ;;
}
Note sul dialetto MySQL
MySQL richiede una tabella del fuso orario affinché la relativa funzione di conversione del fuso orario funzioni. Questa operazione può essere eseguita da un amministratore. Per saperne di più, consulta la documentazione di MySQL.
Note sul dialetto Postgres
Looker utilizza l'impostazione del driver per selezionare il fuso orario di destinazione. Ciò potrebbe influire sulla modalità di elaborazione delle query in SQL Runner rispetto a pgAdmin, perché Looker utilizzerà la data/ora corrente nel fuso orario selezionato.
Supporto dei dialetti del database per la conversione del fuso orario
Affinché Looker possa convertire i fusi orari nel tuo progetto Looker, il dialetto del tuo database deve supportare la conversione del fuso orario. La tabella seguente mostra i dialetti che supportano la conversione del fuso orario nell'ultima release di Looker:
Dialetto | Supportata? |
---|---|
Actian Avalanche | No |
Amazon Athena | Sì |
Amazon Aurora MySQL | Sì |
Amazon Redshift | Sì |
Apache Druid | No |
Apache Druid 0.13 o versioni successive | Sì |
Apache Druid 0.18 o versioni successive | Sì |
Apache Hive 2.3 o versioni successive | Sì |
Apache Hive 3.1.2 e versioni successive | Sì |
Apache Spark 3 e versioni successive | Sì |
ClickHouse | No |
Cloudera Impala 3.1 e versioni successive | Sì |
Cloudera Impala 3.1 o versioni successive con driver nativo | Sì |
Cloudera Impala con driver nativo | Sì |
DataVirtuality | No |
Databricks | Sì |
Denodo 7 | No |
Denodo 8 | No |
Dremio | Sì |
Dremio 11+ | Sì |
Exasol | No |
Firebolt | No |
SQL precedente di Google BigQuery | No |
SQL standard di Google BigQuery | Sì |
PostgreSQL di Google Cloud | Sì |
Google Cloud SQL | Sì |
Google Spanner | Sì |
Greenplum | Sì |
HyperSQL | No |
Netezza di IBM | Sì |
MariaDB | Sì |
PostgreSQL Microsoft Azure | Sì |
Database SQL di Microsoft Azure | Sì |
Microsoft Azure Synapse Analytics | Sì |
Microsoft SQL Server 2008 e versioni successive | No |
Microsoft SQL Server 2012 e versioni successive | No |
Microsoft SQL Server 2016 | Sì |
Microsoft SQL Server 2017 e versioni successive | Sì |
MongoBI | No |
MySQL | Sì |
MySQL 8.0.12 o versioni successive | Sì |
Oracle | Sì |
Oracle ADWC | Sì |
PostgreSQL 9.5 e versioni successive | Sì |
PostgreSQL precedente alla versione 9.5 | Sì |
PrestoDB | Sì |
PrestoSQL | Sì |
SAP HANA 2 o versioni successive | No |
SingleStore | Sì |
SingleStore 7 e versioni successive | Sì |
Snowflake | Sì |
Teradata | No |
Trino | Sì |
Vettoriale | No |
Vertica | Sì |