Gerenciar dimensões de data personalizadas

A dimensão de data personalizada permite carregar e atualizar dados com suas próprias dimensões fiscais em espaços de trabalho do GoodData. Por exemplo, se o ano fiscal do seu espaço de trabalho começasse em 1º de abril, você usaria a dimensão de data personalizada do mês de abril.

Sobre as dimensões de data personalizadas

A dimensão de data personalizada é representada no modelo de dados lógicos (LDM) do seu espaço de trabalho por um conjunto de dados de Data (consulte Datas no modelo de dados lógicos baseado no modelo de dimensão de data urn:custom_v2:date . Por padrão, esse modelo contém dados do calendário gregoriano, de 01/01/1900 a 31/12/2050.

Dependendo da necessidade de uma ou várias dimensões de data em seu espaço de trabalho (por exemplo, para diferenciar a data da compra da data de entrega), você pode ter um ou vários conjuntos de dados de Data com uma dimensão de data personalizada. Você pode adicionar outra dimensão de data personalizada ao seu espaço de trabalho a qualquer momento e começar a usá-la imediatamente.

Na dimensão de data personalizada, você tem as seguintes opções:

  • Usar a dimensão de data personalizada como está (que é o calendário gregoriano padrão de 01/01/1900 a 31/12/2050)
  • Personalizar a dimensão de data personalizada:
    • Carregar um calendário de um ano fiscal começando com um mês arbitrário (por exemplo, para um ano fiscal iniciando em abril).
    • Carregue seu próprio calendário.

Sempre que necessário, você pode adaptar uma dimensão de data personalizada de seu espaço de trabalho, carregando um calendário diferente. Se alguma métrica ou algum relatório usar essa dimensão de data, ele será atualizado automaticamente.

Dimensões de data estendidas

Por padrão, o modelo de dimensão de data urn:custom_v2:date contém dados do calendário gregoriano de 01/01/1900 a 12/31/2050. Você pode estender além do padrão as dimensões de data de calendários personalizados para incluir datas de 01/01/1900 a 12/31/2100. Entretanto, uma definição de intervalos maiores poderá resultar em um desempenho mais lento. Para melhorar o desempenho ao usar dimensões de data personalizadas, não use intervalos desnecessários fora de seus casos de uso de dados e analíticos. Por exemplo, se você precisar analisar apenas de 2010 a 2030, mantenha a dimensão personalizada entre essas datas.

Se você precisar incluir datas até 12/31/2100 mas quiser evitar possíveis problemas de desempenho, baixe urn_custom_v2_date_2100.csv.zip. Esse modelo de dimensão de data contém datas de 01/01/1950 a 12/31/2100.

Importar dimensões de data herdadas

As dimensões de data a seguir estão em uso, mas não são recomendadas para novas implementações:

  • urn:custom:date: Essa dimensão de data é semelhante à dimensão de data urn:custom_v2:date e oferece todos os recursos que urn:custom_v2:date oferece, com exceção da incompatibilidade com a opção de comparação de dados com o mesmo período do ano anterior para semanas nos filtros de data do Analytical Designer e dos Dashboards de KPI.

  • urn:gooddata:date: Essa dimensão de data contém o calendário gregoriano padrão, de 01/01/1900 a 31/12/2050, e não pode ser personalizado como um calendário fiscal personalizado.

Se você estiver usando dimensões de data herdadas e quiser migrar para a dimensão de data urn:custom_v2:date, consulte Migrar de uma dimensão de data herdada para urn:custom_v2:date.

Adicionar a dimensão de data personalizada ao seu espaço de trabalho

Para adicionar a dimensão de data personalizada ao seu espaço de trabalho, adicione um conjunto de dados de Data ao modelo de dados lógicos (LDM) do seu espaço de trabalho.

Passos:

  1. No Console de Integração de Dados (consulte Acesso ao console de integração de dados), clique em Espaços de trabalho e clique no nome do espaço de trabalho no qual deseja adicionar a dimensão de data personalizada.

  2. Clique em Modelar dados na parte superior. O modelo de dados lógicos é exibido.

  3. Arraste Data do painel esquerdo e solte-a na área da tela. Um conjunto de dados de Data da dimensão de data urn:custom_v2:date será adicionado. Por padrão, ele recebe o nome de “Data”. 

  4. Digite o nome do conjunto de dados.

  5. Crie uma relação entre o conjunto de dados de Data e outro conjunto de dados que queira analisar por data.

    1. Selecione o conjunto de dados de Data.
    2. Clique no ponto azul no canto direito do conjunto de dados de Data e arraste a seta exibida para conectar o conjunto de dados de Data a outro conjunto de dados. A relação é criada.
  6. Publique o modelo de dados lógicos (para obter instruções, consulte Publicar um modelo de dados lógicos). Ao publicar, use Preservar dados para garantir que os dados carregados no espaço de trabalho não sejam excluídos.

A dimensão de data urn:custom_v2:date com os dados do calendário gregoriano (calendário padrão do GoodData) é adicionada ao seu espaço de trabalho.

Usando um script DDL do MAQL para incluir a dimensão de data personalizada

Você pode usar a API para adicionar a dimensão de data personalizada ao seu espaço de trabalho.

Para isso, use a API para execução de um script DDL MAQL com o seguinte texto de solicitação:

{ "manage": { "maql": "INCLUDE TEMPLATE \"urn:custom_v2:date\"" } }

Essa API adiciona a dimensão de data urn:custom_v2:date com os dados do calendário padrão gregoriano ao seu espaço de trabalho.

Atualizar urn:custom_v2:date com um calendário personalizado

Por padrão, urn:custom_v2:date contém o calendário padrão (o calendário gregoriano de 01/01/1900 a 31/12/2050). Se você não quiser usar o calendário padrão, atualize a dimensão da data personalizada com um calendário personalizado:

  1. Prepare um arquivo CSV com os requisitos do calendário.
  2. Transfira o arquivo CSV para o armazenamento específico do usuário.
  3. Execute uma tarefa de carregamento.

Preparar um arquivo CSV com os requisitos do calendário

Você pode optar por usar um calendário de exercícios fiscais começando com um mês arbitrário ou criar seu próprio calendário.

Você também pode voltar a usar o calendário padrão (calendário gregoriano de 01/01/1900 a 31/12/2050) utilizando qualquer calendário carregado anteriormente.

Usar um calendário de exercícios fiscais iniciando com um mês arbitrário

Baixe o arquivo CSV com a dimensão de data, dependendo do mês em que um exercício fiscal começa:

MêsArquivo CSV
Janeirourn_fcjan1_v2_date.csv.zip
Fevereirourn_fcfeb1_v2_date.csv.zip
Marçourn_fcmar1_v2_date.csv.zip
Abrilurn_fcapr1_v2_date.csv.zip
Maiourn_fcmay1_v2_date.csv.zip
Junhourn_fcjun1_v2_date.csv.zip
Julhourn_fcjul1_v2_date.csv.zip
Agostourn_fcaug1_v2_date.csv.zip
Setembrourn_fcsep1_v2_date.csv.zip
Outubrourn_fcoct1_v2_date.csv.zip
Novembrourn_fcnov1_v2_date.csv.zip
Dezembrourn_fcdec1_v2_date.csv.zip

Usar seu próprio calendário

Crie um arquivo CSV com seus requisitos personalizados de calendário de exercícios fiscais. Você pode baixar o arquivo CSV com o calendário padrão (urn_custom_v2_date.csv.zip) e atualizá-lo conforme suas necessidades.

Seu arquivo CSV deve atender aos seguintes requisitos:

  • O arquivo deve conter colunas na ordem predefinida (exatamente como listado na tabela abaixo) e exemplos de valores.
  • Uma coluna deve conter no máximo 50 caracteres.
  • Os cabeçalhos das colunas devem representar os identificadores do atributo displayForms (rótulos de atributo).
  • As linhas devem ser classificadas por date.day.yyyy_mm_dd.
  • As seguintes restrições devem ser atendidas por determinadas colunas (consulte a tabela abaixo): 
    • Sequência incremental (colunas de data): A diferença entre dois registros estritamente seguidos deve ser exatamente um.
    • Sequência recorrente não decrescente (dia do mês, dia da semana etc.): Cada dois registros em estrita sequência, a e b, devem cumprir as seguintes condições.
      • b=a
      • b=a+1
      • b deve ser igual ao valor mínimo na sequência (por exemplo, a sequência (5,5,6,6,7,7,1,2,3,3,3,3,1,2,3,4,5) é válida).
    • Sequência não decrescente (semana, ano etc.): Cada dois registros em estrita sequência, a e b, devem cumprir uma das seguintes condições.
      • b=a
      • b=a+1
Identificador de rótuloValor padrãoExemploRestrição
date.day.yyyy_mm_ddyyyy-MM-dd1900-12-31Sequência incremental
date.day.uk.dd_mm_yyyy 31/12/1900 
date.day.us.mm_dd_yyyy 12/31/1900 
date.day.eu.dd_mm_yyyy 01-01-1900 
date.day.us.long Seg, 1 de janeiro de 1900 
date.day.us.m_d_yy 1/1/00 
day.in.euweek.short Seg 
day.in.euweek.number[a-zA-Z_ ]*[0-9]1Sequência recorrente
day.in.euweek.long Segunda-feira 
day.in.year.default[a-zA-Z_ ]*[0-9]D1Sequência recorrente
quarter.in.year.default[a-zA-Z_ ]*[0-9]Q1Sequência recorrente
month.in.quarter.number[a-zA-Z_ ]*[0-9]M1Sequência recorrente
month.in.year.short Jan 
month.in.year.m_q M1/Q1 
month.in.year.number[a-zA-Z_ ]*[0-9]M1Sequência recorrente
month.in.year.long Janeiro 
week.wk_qtr_year W1/Q1/1900 
week.from_to Dec 31, 1899 - Jan 6, 1900 
week.starting Wk. of Sun 12/31/1899 
week.wk_year_cont W53/1899 - W1/1900 
week.wk_year W1/1900Sequência não decrescente
week.wk_qtr_year_cont W14/Q4/1899 - W1/Q1/1900 
euweek.wk_qtr_year W1/Q1/1900 
euweek.from_to Jan 1, 1900 - Jan 7, 1900 
euweek.starting Wk. of Mon 01/01/1900 
euweek.wk_year_cont W1/1900 
euweek.wk_year W1/1900Sequência não decrescente
euweek.wk_qtr_year_cont W1/Q1/1900 
week.in.year.number_us[a-zA-Z_ ]*[0-9]W1Sequência recorrente
day.in.week.short Seg 
day.in.week.number[a-zA-Z_ ]*[0-9]2Sequência recorrente
day.in.week.long Segunda-feira 
week.in.quarter.number_us[a-zA-Z_ ]*[0-9]W1Sequência recorrente
euweek.in.quarter.number_eu[a-zA-Z_ ]*[0-9]W1Sequência recorrente
day.in.quarter.default[a-zA-Z_ ]*[0-9]D1Sequência recorrente
month.short Jan 1900 
month.number 1/1900Sequência não decrescente
month.long January 1900 
day.in.month.default[a-zA-Z_ ]*[0-9]D1Sequência recorrente
year.default 1900Sequência não decrescente
euweek.in.year.number_eu[a-zA-Z_ ]*[0-9]W1Sequência recorrente
quarter.short_us Q1/1900Sequência não decrescente
year.for.week.number 1900Sequência não decrescente
year.for.euweek.number 1900Sequência não decrescente
quarter.for.week.number Q1/1900Sequência não decrescente
quarter.for.euweek.number Q1/1900Sequência não decrescente

Usar o calendário padrão

Para restabelecer o calendário padrão, baixe urn_custom_v2_date.csv.zip. Essa dimensão de data corresponde ao calendário padrão na dimensão de data urn:custom_v2:date (calendário Gregoriano de 01/01/1900 a 31/12/2050).

Transferir o arquivo CSV para o armazenamento específico do usuário

Passos:

  1. Compacte o arquivo CSV. O arquivo compactado deve conter um arquivo com o mesmo nome, sem a extensão .zip. Por exemplo, o arquivo compactado urn_fcnov1_v2_date.csv.zip conterá urn_fcnov1_v2_date.csv.
  2. Coloque o arquivo compactado no seu armazenamento de dados (consulte Armazenamento de dados específicos do usuário).

Executar uma tarefa de carregamento

Passos:

  1. Use a API de carregamento de dimensões de data:

    • Recurso de API:https://secure.gooddata.com/gdc/md/{workspace_id}/datedimension/pull

    • Método:POST

    • Texto da solicitação:

      { "dateIntegration": { "file": "/path/to/archive/file.zip", "datasets": [ "{date_dataset_identifier}" ] } }
      
      • Não inclua a seção /uploads no caminho do arquivo. Por exemplo, se o arquivo tiver o nome urn_fcapr1_v2_date.csv.zip e estiver armazenado em /uploads/, insira o caminho como /urn_fcapr1_v2_date.csv.zip.
      • {date_dataset_identifier} especifica o conjunto de dados de data em que você deseja carregar o arquivo CSV. Por exemplo, date1.dataset.dt.
    • Cabeçalhos da solicitação:

      Content-Type:application/json Accept:application/json
      

    A tarefa é executada e o link para pesquisa do status da tarefa é retornado.

  2. Pesquise o status até que o status da tarefa OK seja retornado. A dimensão de data personalizada é atualizada com o calendário selecionado.

 

Em vez de usar a API, você pode usar a página cinza para atualizar a dimensão de data personalizada:

https://secure.gooddata.com/gdc/md/{workspace_id}/datedimension/pull

Gerenciamento de ciclo de vida (LCM) e a dimensão de data personalizada

O Gerenciamento de ciclo de vida (consulte Gerenciamento de espaços de trabalho via LCM) é compatível com a dimensão de data personalizada.

  • Se o espaço de trabalho principal incluir a dimensão de data personalizada, os espaços de trabalho do cliente criados utilizando esse espaço de trabalho principal herdarão essa dimensão personalizada, mas com o calendário gregoriano padrão incluído, independentemente do calendário da dimensão de data do espaço de trabalho principal. Você pode carregar um calendário diferente na dimensão de data personalizada de um espaço de trabalho do cliente, se necessário. Esse calendário não será substituído na sincronização.
  • Você pode ter calendários diferentes na dimensão de data personalizada em diferentes espaços de trabalho do cliente no mesmo segmento. Se você precisar unificar o calendário da dimensão de data personalizada no espaço mestre e o espaço de trabalho do cliente, deverá carregar o calendário de destino na dimensão personalizada de cada espaço de trabalho separadamente.

Migrar de uma dimensão de data herdada para urn:custom_v2:date

Por que migrar para urn:custom_v2:date

Se você estiver usando o Analytical Designer e Dashboards de KPI, recomendamos mudar para a dimensão de data urn:custom_v2:date. Com a dimensão de data urn:custom_v2:date, você pode usar a opção de comparação de dados com o mesmo período do ano anterior para semanas nos filtros de data (por exemplo, comparar dados da Semana 25 de 2018 com a Semana 25 de 2017). Quando você compara seus dados com o mesmo período do ano anterior, as semanas podem não ter as mesmas datas. Se uma semana estiver dividida entre dois anos/trimestres (começa no ano/trimestre anterior e termina o ano/trimestre atual), os critérios que definem a qual ano/trimestre essa semana pertence deverão ser estabelecidos. A dimensão de data urn:custom_v2:date aborda esses casos de uso.

Para obter mais informações sobre filtro de data no Analytical Designer e nos Dashboards de KPI, consulte Filtros no Analytical Designer e Filtros de data nos dashboards de KPI.

Como a migração para urn:custom_v2:date afeta seus dados

Colunas adicionais em urn:custom_v2:date

Em comparação com as dimensões de data herdadas, urn:custom_v2:date contém quatro colunas adicionais:

  • year.for.week.number
  • year.for.euweek.number
  • quarter.for.week.number
  • quarter.for.euweek.number

Com essas colunas é possível comparar os dados com o mesmo período do ano anterior para semanas nos filtro de data. Essas colunas não são vistas na interface de usuário do Analytical Designer nem dos Dashboards de KPI e são usadas pelo Mecanismo de Análise Extensível (XAE) para processamento de relatórios.

Se uma semana estiver dividida entre dois anos/trimestres (começa no ano/trimestre anterior e termina o ano/trimestre atual), é assim que será estabelecido a qual ano/trimestre essa semana pertence:

  • year.for.week.number e quarter.for.week.number: A semana pertence ao ano em que se encontra o sábado dessa semana.
  • year.for.euweek.number e quarter.for.euweek.number: A semana pertence ao ano/trimestre em que se encontra a quinta-feira dessa semana.

Após a mudança para urn:custom_v2:date, você pode esperar o seguinte:

  • euweek.in.year.number_eu é calculado de acordo com a ISO 8601 (ou seja, a semana pertence ao ano em que se encontra a quinta-feira dessa semana); um ano tem 52 (ou 53 em um “ano bissexto baseado em semanas”) semanas.
  • week.in.year.number_us começa em um domingo e pertence ao ano ao qual seu último dia pertence.
  • euweek.in.quarter.number_eu está alinhado a euweek.in.year.number_eu:
    • A primeira semana em um ano é a primeira semana em um trimestre.
    • Cada trimestre tem 13 semanas (ou 14 semanas no último trimestre de um “ano bissexto baseado em semanas”).
  • week.in.quarter.number_us está alinhado a week.in.year.number_us, seguindo as mesmas regras que as da semana europeia, mas usando dados dos EUA.

Identificadores diferentes de rótulos de atributo

Em comparação com a dimensão de data urn:gooddata:dateurn:custom_v2:date contém identificadores diferentes dos rótulos de atributo (displayForm).

  • Se você carregar dados para a plataforma GoodData usando a API (consulte Carregando dados via API REST), atualize o manifesto SLI com os novos identificadores.
  • Se você carregar dados para a plataforma GoodData via gráficos do CloudConnect, verifique o mapeamento de campos nos componentes do GD Dataset Writer nos seus gráficos.

Primeira semana de 1900 removida

Em comparação com a dimensão de data urn:gooddata:date, a dimensão de data urn:custom_v2:date não contém mais a primeira semana de 1900 (01/01/1900 a 07/01/1900).

Método diferente de calcular agregações de data

Em comparação com a dimensão de data urn:gooddata:date, a dimensão de data urn:custom_v2:date usa um método diferente para calcular agregações de data.

Por exemplo, uma métrica que retorne o último ano (como SELECT MAX(Year)), retornaria a ID do valor do atributo correspondente ao ano e não o ano real (ex.: 121 em vez de 2020).

Se você precisar exibir o ano real, atualize a métrica:

  1. Subtraia um valor numérico equivalente à ID do valor do atributo para o ano. Para isso, selecione o ano correspondente em Valores de atributo, no menu do lado direito. Para obter mais informações sobre como editar uma métrica no Editor de Métricas Personalizadas, consulte Introdução ao uso da MAQL para criar métricas.
  2. Adicione um valor numérico equivalente ao ano.

Por exemplo, para o ano de 2020, a métrica atualizada seria assim:

Migrar da dimensão de data herdada para urn:custom_v2:date

Para migrar os conjuntos de dados de Data do seu espaço de trabalho da dimensão de data urn:gooddata:date ou urn:custom:date para urn:custom_v2:date, use a API para migração de conjuntos de dados de data para a dimensão de data personalizada. Você pode migrar todos os conjuntos de dados de Data de uma só vez ou apenas alguns deles.

Se você usar LCM e migrar os conjuntos de dados de Data do espaço de trabalho principal para urn:custom_v2:date, os espaços de trabalho clientes criados a partir desse espaço de trabalho principal herdarão essa dimensão personalizada na próxima sincronização.

Calendários dos anos fiscais que começam com um mês arbitrário para urn:custom:date

Se você usa a dimensão de data urn:custom:date e precisa atualizá-la para um calendário personalizado, escolha o arquivo CSV dependendo do mês a partir do qual o ano fiscal começa para você.