Como usar as configurações de fuso horário

O Looker pode tornar os dados baseados em tempo mais fáceis de entender, convertendo-os em fusos horários diferentes. Os usuários podem acessar os resultados da consulta e criar filtros com dados baseados no horário que são convertidos para o fuso horário local. Por exemplo, um usuário em Nova York que visualiza dados criados na Califórnia não precisa subtrair manualmente três horas para filtrar ou interpretar as consultas.

O Looker converte dados baseados em tempo quando gera SQL durante uma consulta para um Look, uma Análise ou um dashboard. Os dados subjacentes não são afetados. em vez disso, os resultados são convertidos usando as configurações de fuso horário do Looker. Isso também significa que as consultas executadas com o SQL Runner não convertem dados baseados em tempo.

Várias configurações no Looker especificam como converter dados baseados em tempo:

Fuso horário do sistema

O fuso horário do sistema é aquele configurado para o servidor que executa o Looker. O banco de dados interno do Looker, que armazena as informações disponíveis nas Análises de i__looker e Atividade do sistema, armazena dados baseados em tempo no fuso horário do sistema.

O fuso horário do sistema não pode ser configurado pelo aplicativo Looker. Para instâncias hospedadas pelo Looker, o fuso horário do sistema é sempre definido como UTC. As instâncias hospedadas pelo cliente podem estar em um fuso horário diferente do sistema. A alteração do fuso horário do sistema não é trivial e não é recomendada. Se você precisar ajustar os carimbos de data/hora em uma i__looker ou em uma Análise de atividades do sistema, o Looker recomenda usar cálculos de tabela para criar colunas ajustadas pelo tempo. Por exemplo, para converter de UTC para EST, você pode criar uma coluna com o cálculo de tabela add_hours(-5, ${time}).

fuso horário do banco de dados

Ao adicionar uma conexão a um banco de dados, você define o valor do Fuso horário do banco de dados na página Configurações de conexão.

Essa configuração representa o fuso horário do seu banco de dados, que geralmente é o Tempo Universal Coordenado (UTC, na sigla em inglês). Definir esse valor para algo diferente do fuso horário em que o banco de dados está pode levar a resultados inesperados.

fusos horários específicos dos usuários

A configuração mais importante para a conversão de dados com base no tempo é a opção Fusos horários específicos do usuário, que está na página Configurações gerais da seção Administrador do Looker.

É possível ativar ou desativar os fusos horários específicos do usuário:

  • Quando ativado, cada usuário do Looker recebe um fuso horário, que especifica a aparência dos resultados da consulta.
  • Quando desativada, os usuários não têm fusos horários individuais atribuídos às contas. Em vez disso, todas as consultas são executadas com o valor Query Time Zone.

Com a opção Fusos horários específicos do usuário ativada, um usuário pode definir o fuso horário na página Conta, ou os administradores do Looker podem atribuir fusos horários aos usuários na página Usuários. Se o fuso horário de um usuário não for definido, o padrão da conta será a configuração Fuso horário do aplicativo do Looker.

Sempre que um usuário cria uma consulta, essa consulta é criada no fuso horário do usuário. Como resultado, quando uma consulta retorna dados baseados em tempo, o Looker converte os dados do fuso horário do banco de dados para o fuso horário do usuário. Quando um usuário usa valores de filtro relacionados ao tempo em uma consulta, o Looker converte esses valores no fuso horário do banco de dados.

Além disso, quando você ativa essa opção, o Looker mostra um menu suspenso de Fuso horário em Análises e Looks.

As opções nesse menu suspenso são:

  • Fuso horário de cada bloco (somente painéis): todas as consultas são executadas no fuso horário em que foram salvas.
  • Fuso horário do leitor: todas as consultas são executadas na configuração de fuso horário atual do usuário.
  • Uma lista de cada fuso horário, que os usuários podem escolher manualmente se quiserem.

Todas as consultas usam como padrão o fuso horário usado para criá-la. Em outras palavras, se Alice criar uma consulta com o fuso horário "América/Los Angeles" e a envia para Bob, ele verá a consulta com o fuso horário "América/Los Angeles", mesmo que o fuso horário de Bob esteja definido como "América/Nova York". Da mesma forma, o detalhamento sempre usa o fuso horário em que a consulta foi criada.

Ao visualizar uma consulta, os usuários podem usar o menu suspenso para modificar o fuso horário, escolhendo o fuso horário do leitor ou outro fuso horário para a consulta ou o conjunto de consultas desse painel.

Considerações sobre fusos horários específicos dos usuários

Quando você ativa os fusos horários específicos do usuário, é possível que usuários em fusos horários diferentes vejam os dados de forma diferente.

Por exemplo, as horas exatas que compõem o período de last month diferem entre os fusos horários. Por isso, os usuários poderão ver valores de dados diferentes se estiverem em fusos horários diferentes, mas estiverem filtrando last month.

fuso horário do aplicativo

A configuração Fuso horário do aplicativo pode ser definida na página Configurações gerais da seção Administrador do Looker.

O fuso horário do aplicativo é o padrão para envios de conteúdo. O fuso horário usado para envio de conteúdo não afeta os dados baseados em tempo retornados por uma consulta. afeta apenas o horário em que a entrega de dados é enviada.

Se você ativar a opção Fusos horários específicos do usuário, o Fuso horário do aplicativo será o fuso horário padrão dos usuários que não têm um valor de fuso horário definido para as contas.

fuso horário de consultas

A opção Fuso horário da consulta só aparece se você desativa Fusos horários específicos do usuário. Nesse caso, defina o valor do fuso horário da consulta ao adicionar uma conexão a um banco de dados na página Configurações de conexão.

Se você desativar os fusos horários específicos do usuário, todas as consultas de dados baseados em tempo vão usar o fuso horário da consulta, e o Looker vai converter todos os dados baseados em tempo do fuso horário do banco de dados para o fuso horário da consulta.

Parâmetro do LookML convert_tz

O Looker faz a conversão de fuso horário por padrão. Para desativar a conversão de fuso horário de um campo individual, use o parâmetro LookML convert_tz. Exemplo:

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

Para mais informações, consulte a página de documentação do parâmetro convert_tz.

Parâmetro do LookML sql

Também é possível definir manualmente a conversão de fuso horário usando as funções do dialeto do seu banco de dados no parâmetro sql em uma dimensão do LookML. Por exemplo, para definir manualmente a conversão de fuso horário no MySQL, use o seguinte LookML:

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

Observações sobre o dialeto do MySQL

O MySQL requer uma tabela de fuso horário para que a função de conversão de fuso horário funcione. Isso pode ser executado por um administrador. Leia mais na documentação do MySQL.

Notas do dialeto do Postgres

O Looker usa a configuração do motorista para selecionar o fuso horário desejado. Isso pode afetar como as consultas são processadas no SQL Runner em comparação com o pgAdmin, porque o Looker vai usar a data e hora atual no fuso horário selecionado.

Suporte a dialetos do banco de dados para conversão de fuso horário

Para que o Looker converta os fusos horários no projeto, o dialeto do banco de dados precisa oferecer suporte à conversão desse fuso horário. A tabela a seguir mostra os dialetos compatíveis com a conversão de fuso horário na versão mais recente do Looker:

Dialeto Compatível?
Avalanche Actian
Não
Amazon Athena
Sim
MySQL do Amazon Aurora
Sim
Amazon Redshift
Sim
Apache Druid
Não
Apache Druid 0.13 ou superior
Sim
Apache Druid 0.18 ou superior
Sim
Apache Hive 2.3 ou superior
Sim
Apache Hive 3.1.2 ou posterior
Sim
Apache Spark 3 ou mais recente
Sim
ClickHouse
Não
Cloudera Impala 3.1 ou superior
Sim
Cloudera Impala 3.1+ com driver nativo
Sim
Cloudera Impala com driver nativo
Sim
DataVirtuality
Não
Databricks
Sim
Denodo 7
Não
Denodo 8
Não
Drêmio
Sim
Dremio 11 ou superior
Sim
Exasol
Não
Bola de fogo
Não
SQL legado do Google BigQuery
Não
SQL padrão do Google BigQuery
Sim
PostgreSQL do Google Cloud
Sim
Google Cloud SQL
Sim
Google Spanner (em inglês)
Sim
Greenplum
Sim
HyperSQL
Não
IBM Netezza
Sim
MariaDB
Sim
PostgreSQL do Microsoft Azure
Sim
Banco de dados SQL do Microsoft Azure
Sim
Análises do Microsoft Azure Synapse
Sim
Microsoft SQL Server 2008 ou superior
Não
Microsoft SQL Server 2012 ou posterior
Não
Microsoft SQL Server 2016
Sim
Microsoft SQL Server 2017 ou posterior
Sim
MongoBI
Não
MySQL
Sim
MySQL 8.0.12 ou mais recente
Sim
Oracle
Sim
ADWC da Oracle
Sim
PostgreSQL 9.5 ou mais recente
Sim
PostgreSQL anterior à 9.5
Sim
PrestoDB
Sim
PrestoSQL
Sim
SAP HANA 2 ou posterior
Não
SingleStore
Sim
SingleStore 7 ou superior
Sim
Snowflake
Sim
Teradata
Não
Trino
Sim
Vetor
Não
Vertica
Sim