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 convertiti nei loro 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 vengono modificati, ma i risultati della query vengono convertiti utilizzando le impostazioni del fuso orario di Looker. Ciò 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
- Database Time Zone (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 di sistema è il fuso orario per cui è configurato il server che esegue Looker. Il database interno di Looker, che memorizza le informazioni disponibili nelle esplorazioni 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 di sistema diverso. La modifica del fuso orario del sistema non è semplice e non è consigliata. Se devi modificare i timestamp in un'esplorazione dell'attività di sistema, utilizza i calcoli tabellari per creare colonne con l'ora modificata. 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, imposti il valore per il fuso orario del database nella pagina Impostazioni di connessione.
Questa impostazione rappresenta il fuso orario in cui si trova il database, che in genere è Coordinated Universal Time (UTC). Se imposti questo valore su un fuso orario diverso da quello del database, potresti ottenere risultati imprevisti.
Fusi orari specifici degli utenti
L'impostazione più importante per la conversione dei dati basati sul tempo è l'opzione Fusi orari specifici degli utenti, che si trova nella pagina Impostazioni generali della sezione Amministrazione di Looker.
Puoi attivare o disattivare l'opzione Fusi orari specifici degli utenti:
- Se questa opzione è abilitata, a ogni utente Looker viene assegnato un fuso orario, che specifica l'aspetto dei risultati delle query.
- Se disabilitata, agli account degli utenti non vengono assegnati fusi orari individuali. Tutte le query vengono eseguite utilizzando il valore Fuso orario query.
Se l'opzione Fusi orari specifici degli utenti è attivata, 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 non è impostato un fuso orario per un utente, il suo account utilizza per impostazione predefinita l'impostazione Fuso orario applicazione di Looker.
Ogni volta che un utente crea una query, questa viene creata nel fuso orario dell'utente. Di conseguenza, quando una query restituisce dati basati sul tempo, Looker converte i dati dal fuso orario del database al fuso orario dell'utente. Quando un utente utilizza valori di filtro correlati al tempo in una query, Looker converte i valori di filtro nel fuso orario del database.
Inoltre, quando attivi questa opzione, Looker mostra un menu a discesa Fuso orario in Esplorazioni e Look.
Le opzioni in 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 corrente dell'utente.
- Un elenco di tutti i singoli fusi orari, che gli utenti possono scegliere manualmente se vogliono.
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". Allo stesso modo, il livello di analisi predefinito è sempre il fuso orario con cui è stata creata la query.
Quando visualizzano una query, gli utenti possono utilizzare il menu a discesa per ignorare il fuso orario e scegliere il fuso orario del visualizzatore o un fuso orario diverso per quella query o per l'insieme di query della dashboard.
Aspetti da considerare con i fusi orari specifici degli utenti
Quando attivi 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 a seconda dei fusi orari, quindi gli utenti potrebbero visualizzare valori di dati diversi se si trovano in fusi orari diversi, ma entrambi filtrano in base a last month
.
Fuso orario applicazione
L'impostazione Fuso orario dell'applicazione può essere configurata nella pagina Impostazioni generali della sezione Amministrazione di Looker.
Il fuso orario applicazione è il fuso orario predefinito per le distribuzioni di contenuti. Il fuso orario utilizzato per le distribuzioni dei contenuti non influisce sui dati basati sul tempo restituiti da una query, ma solo sull'ora in cui viene inviata una distribuzione dei dati.
Se attivi l'opzione Fusi orari specifici degli utenti, il fuso orario applicazione è il fuso orario predefinito per gli utenti che non hanno impostato un valore di fuso orario per i propri account.
Fuso orario query
L'opzione Fuso orario query viene visualizzata solo se hai disattivato Fusi orari specifici degli utenti. In questo caso, imposta il valore Query Time Zone quando aggiungi una connessione a un database nella pagina Impostazioni connessione.
Se disattivi Fusi orari specifici degli utenti,tutte le query sui 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 LookML convert_tz
. Ad esempio:
dimension_group: created {
type: time
timeframes: [time, date]
convert_tz: no
}
Per saperne di più, consulta la pagina della documentazione del 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 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 prima che la sua funzione di conversione del fuso orario funzioni. Può essere eseguito 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 sul modo in cui le query vengono elaborate in SQL Runner rispetto a pgAdmin, perché Looker utilizzerà la data e l'ora correnti nel fuso orario selezionato.
Supporto dei dialetti del database per la conversione del fuso orario
Affinché Looker converta i fusi orari nel tuo progetto Looker, il dialetto del database deve supportare la conversione del fuso orario. La tabella seguente mostra quali dialetti supportano la conversione del fuso orario nell'ultima release di Looker:
Dialetto | Supportato? |
---|---|
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ì |