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.
No GoodData, os termos espaço de trabalho e projeto denotam a mesma entidade. Por exemplo, a ID do projeto é exatamente igual à ID do espaço de trabalho. ConsulteLocalizar ID do espaço de trabalho.
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.
O calendário personalizado que você deseja enviar e o calendário atual devem ser consistentes em termos de intervalos de tempo. Caso contrário, o carregamento de um calendário inconsistente poderá causar erros de interpretação com os dados carregados anteriormente e os filtros de data usados.
Por exemplo, após o carregamento de um calendário diferente, a seguinte métrica:
SELECT Amount where Quarter=Q1/2017
pode se tornar esta métrica:
SELECT Amount where Quarter=Q4/FY2016
Para evitar essa situação, use intervalos flutuantes nos filtros de data (por exemplo, SELECT Amount where Quarter=THIS
).
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 dataurn:custom_v2:date
e oferece todos os recursos queurn: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.
A inclusão da dimensão de data personalizada em um espaço de trabalho não afeta nem atualiza nenhuma outra dimensão de data que já exista no espaço de trabalho.
Passos:
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.
Clique em Modelar dados na parte superior. O modelo de dados lógicos é exibido.
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”.Antes de publicar o LDM, você pode alterar a dimensão de data no conjunto de dados de Data recém-criado clicando em Editar e reescrevendo a dimensão de data. Entretanto, não recomendamos essa ação. Incentivamos o uso da dimensão de data padrão, que é
urn:custom_v2:date
.Após a publicação do LDM, não é possível alterar a dimensão de data.
Digite o nome do conjunto de dados.
Crie uma relação entre o conjunto de dados de Data e outro conjunto de dados que queira analisar por data.
- Selecione o conjunto de dados de Data.
- 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.
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.
- Para usar o calendário padrão, comece a usá-lo imediatamente no seu espaço de trabalho. Nenhuma outra ação é necessária.
- Para carregar um calendário diferente, acesse Atualizar urn:custom_v2:date com um calendário personalizado.
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:
- Prepare um arquivo CSV com os requisitos do calendário.
- Transfira o arquivo CSV para o armazenamento específico do usuário.
- Execute uma tarefa de carregamento.
Se você precisar atualizar vários conjuntos de dados de data em vários espaços de trabalho, use o Carregador de Dimensão de Data para automatizar o processo e torná-lo mais rápido.
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.
Você só pode carregar uma dimensão completa. Não é possível carregar apenas uma parte dela.
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ês | Arquivo CSV |
---|---|
Janeiro | urn_fcjan1_v2_date.csv.zip |
Fevereiro | urn_fcfeb1_v2_date.csv.zip |
Março | urn_fcmar1_v2_date.csv.zip |
Abril | urn_fcapr1_v2_date.csv.zip |
Maio | urn_fcmay1_v2_date.csv.zip |
Junho | urn_fcjun1_v2_date.csv.zip |
Julho | urn_fcjul1_v2_date.csv.zip |
Agosto | urn_fcaug1_v2_date.csv.zip |
Setembro | urn_fcsep1_v2_date.csv.zip |
Outubro | urn_fcoct1_v2_date.csv.zip |
Novembro | urn_fcnov1_v2_date.csv.zip |
Dezembro | urn_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
displayForm
s (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
eb
, 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
eb
, devem cumprir uma das seguintes condições.b=a
b=a+1
O carregamento da dimensão fiscal adiciona registros padrão que representam valores vazios. Você não pode modificar esses valores.
Identificador de rótulo | Valor padrão | Exemplo | Restrição |
---|---|---|---|
date.day.yyyy_mm_dd | yyyy-MM-dd | 1900-12-31 | Sequê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] | 1 | Sequência recorrente |
day.in.euweek.long | Segunda-feira | ||
day.in.year.default | [a-zA-Z_ ]*[0-9] | D1 | Sequência recorrente |
quarter.in.year.default | [a-zA-Z_ ]*[0-9] | Q1 | Sequência recorrente |
month.in.quarter.number | [a-zA-Z_ ]*[0-9] | M1 | Sequência recorrente |
month.in.year.short | Jan | ||
month.in.year.m_q | M1/Q1 | ||
month.in.year.number | [a-zA-Z_ ]*[0-9] | M1 | Sequê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/1900 | Sequê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/1900 | Sequência não decrescente | |
euweek.wk_qtr_year_cont | W1/Q1/1900 | ||
week.in.year.number_us | [a-zA-Z_ ]*[0-9] | W1 | Sequência recorrente |
day.in.week.short | Seg | ||
day.in.week.number | [a-zA-Z_ ]*[0-9] | 2 | Sequência recorrente |
day.in.week.long | Segunda-feira | ||
week.in.quarter.number_us | [a-zA-Z_ ]*[0-9] | W1 | Sequência recorrente |
euweek.in.quarter.number_eu | [a-zA-Z_ ]*[0-9] | W1 | Sequência recorrente |
day.in.quarter.default | [a-zA-Z_ ]*[0-9] | D1 | Sequência recorrente |
month.short | Jan 1900 | ||
month.number | 1/1900 | Sequência não decrescente | |
month.long | January 1900 | ||
day.in.month.default | [a-zA-Z_ ]*[0-9] | D1 | Sequência recorrente |
year.default | 1900 | Sequência não decrescente | |
euweek.in.year.number_eu | [a-zA-Z_ ]*[0-9] | W1 | Sequência recorrente |
quarter.short_us | Q1/1900 | Sequência não decrescente | |
year.for.week.number | 1900 | Sequência não decrescente | |
year.for.euweek.number | 1900 | Sequência não decrescente | |
quarter.for.week.number | Q1/1900 | Sequência não decrescente | |
quarter.for.euweek.number | Q1/1900 | Sequê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:
- 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
. - Coloque o arquivo compactado no seu armazenamento de dados (consulte Armazenamento de dados específicos do usuário).
Executar uma tarefa de carregamento
O procedimento a seguir pressupõe que você acesse seus espaços de trabalho em https://secure.gooddata.com/. Se você é um cliente personalizado (white-labeled) ou com marca própria, substitua secure.gooddata.com
pelo seu domínio personalizado nas etapas do procedimento.
No GoodData, os termos espaço de trabalho e projeto denotam a mesma entidade. Por exemplo, a ID do projeto é exatamente igual à ID do espaço de trabalho. ConsulteLocalizar ID do espaço de trabalho.
Passos:
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 nomeurn_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
.
- Não inclua a seção
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.
Pesquise o status até que o status da tarefa OK seja retornado. A dimensão de data personalizada é atualizada com o calendário selecionado.
Os arquivos CSV carregados não são armazenados e não podem ser recuperados na plataforma GoodData.
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
No GoodData, os termos espaço de trabalho e projeto denotam a mesma entidade. Por exemplo, a ID do projeto é exatamente igual à ID do espaço de trabalho. ConsulteLocalizar ID do espaço de trabalho.
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.
A migração para a dimensão de data urn:custom_v2:date
só permite que a plataforma GoodData processe corretamente os relatórios de comparação de dados com o mesmo período do ano anterior para semanas nos filtros de data. Para usar totalmente a filtragem por semanas, você também precisa realizar outras etapas. Para obter mais informações, consulte Ativar semanas nos filtros de data.
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
equarter.for.week.number
: A semana pertence ao ano em que se encontra o sábado dessa semana.year.for.euweek.number
equarter.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 aeuweek.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 aweek.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
Aplica-se apenas se você mudar da dimensão de data urn:gooddata:date
.
Em comparação com a dimensão de data urn:gooddata:date
, urn: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
Aplica-se apenas se você mudar da dimensão de data urn:gooddata:date
.
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
Aplica-se apenas se você mudar da dimensão de data urn:gooddata:date
.
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:
- 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. - 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.
Ao migrar os conjuntos de dados, não realize outras tarefas (especialmente carregamento de dados) ao mesmo tempo, pois isso pode causar inconsistência de dados.
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ê.