Pode criar um cubo a partir de dados tabulares ao extrair tabelas de factos de uma base de dados relacional num ficheiro de Excel e, em seguida, ao implementar o cubo.
Os padrões nas relações entre cabeçalhos das colunas e dados das colunas são detetados para implementar um cubo multidimensional. O processo para transformar dados tabulares numa estrutura que pode ser utilizada num cubo multidimensional inclui estes conceitos:
Correlações entre colunas
Correlações entre tipos de coluna (como data, número e texto)
Análise do texto do cabeçalho para prefixos comuns e termos relacionados com BI (como custo, preço, conta)
Estrutura do relatório (como células fundidas e células vazias)
(Opcional) Cabeçalhos de designação imposta que são utilizados para definir de forma explícita a forma de um cubo e podem incluir fórmulas para criar dimensões de medidas.
Hierarquias de medidas (que também podem ser geradas na caixa de diálogo Transformar Dados no Cube Designer).
São fornecidos ficheiros Excel de dados tabulares de exemplo para demonstrar os conceitos de cabeçalhos intrínsecos e de designação imposta.
Quando estiver a trabalhar com dados tabulares, deve analisar os dados antes de criar um cubo a partir dos mesmos. Em seguida, após a criação do cubo, deve determinar se a estrutura do cubo é o que pretende.
Pode criar um cubo a partir de dados tabulares na instância do Essbase ou no Cube Designer. Consulte Criar e Atualizar um Cubo a partir de Dados Tabulares.
Os cabeçalhos intrínsecos utilizam o formato tabela.coluna, que é demonstrado no ficheiro Sample_Table.xlsx
. Neste ficheiro de exemplo, os cabeçalhos das colunas têm nomes como Unidades, Descontos, Tempo.Mês, Regiões.Região e Produto.Marca.
O processo de transformação cria esta hierarquia:
Units Discounts Fixed Costs Variable Costs Revenue Time Month Quarter Years Regions Region Area Country Channel Product Brand ...
Os cabeçalhos de designação imposta (sugestões) permitem-lhe especificar o modo de processamento dos dados tabulares durante o processo de transformação.
Por exemplo, pode impor que uma coluna seja tratada como uma dimensão de medidas ou de atributos. A maior parte dos cabeçalhos de designação imposta requerem uma palavra-chave entre parênteses retos [ ]. Os cabeçalhos de designação imposta são demonstrados nos modelos Unstr_Hints.xlsx
e Sample_Table.xlsx
(disponíveis na galeria).
Formatos suportados de cabeçalho de designação imposta:
Tabela 6-1 Formatos de Cabeçalho de Designação Imposta
Designação | Formato de Cabeçalho | Exemplo |
---|---|---|
Dimension generation |
ParentGeneration.CurrentGeneration |
Category.Product |
Alias |
ReferenceGeneration.Generation[alias] |
Year.ShortYearForm[alias] |
Attribute |
ReferenceGeneration.AttributeDimName[attr] |
Product.Discounted[attr] |
Measures |
MeasureName[measure] |
Price[measure] |
Measure generation |
Parent.child[measure] O pai superior, se for exclusivo, é o nome da dimensão da conta. Se não for exclusivo, este membro é gerado automaticamente na dimensão da conta. |
Measures.profit[measure] profit.cost[measure] cost.price[measure] |
Measures formula |
MeasureName[=sintaxe_da_fórmula;] |
profit[="price"-"cost";] profit[="D1"-"E1";] price[=IF ("S1" == #MISSING) "R1"; ELSE "S1"; ENDIF;] |
Measures consolidation |
MeasureName[+] : adicionar ao pai MeasureName[-] : subtrair do pai MeasureName[~] : sem consolidação (equivalente a [measure]) O valor por omissão é sem consolidação. |
price.shipment[+] A consolidação pode ser definida apenas para a medida dim |
Formula consolidation |
FormulaName[+=<fórmula>] : adicionar ao pai FormulaName[-=<fórmula>] : subtrair do pai |
profit[+=price-cost] cost.external[+=ExternalWork+ExternalParts] |
UDA |
ReferenceGeneration[uda] |
Product[uda] |
Skip A coluna não é lida. |
ColumnName[skip] |
column[skip] |
Recur O valor da célula da última coluna é utilizado para células vazias A ação Repetir pode ser combinada com outras designações impostas; inclua uma lista separada por vírgulas de designações impostas dentro de parênteses retos, ColumnName[designationA,recur]. |
ColumnName[recur] |
Product[recur] Product[uda,recur] |
Pode especificar colunas para serem dimensões de medidas e pode utilizar fórmulas para criar dimensões de medidas com dados calculados durante o processo de transformação. Os cabeçalhos de designação imposta do tipo medidas e fórmula de medidas são especificados com o nome da dimensão de medidas, seguido por uma palavra-chave ou fórmula incluída entre parênteses retos e anexada ao nome da dimensão de medidas.
Pode também consolidar as medidas e fórmulas para as adicionar ou subtrair do pai.
Para especificar uma coluna para ser uma dimensão de medidas, no cabeçalho da coluna, deve introduzir o nome da dimensão de medidas e, em seguida, anexar a palavra-chave [measure]. Por exemplo, pode especificar as colunas Unidades e Custos Fixos como dimensões de medidas através desta sintaxe: Units[measure] e Fixed Costs[measure].
O processo de transformação cria esta hierarquia, com Unidades, Descontos, Custos Fixos, Custos Variáveis e Proveitos como medidas:
Time Year Quarter Month Regions Region Area Country ... Product Brand ... Units Discounts Fixed Costs Variable Costs Revenue
Pode criar uma hierarquia de gerações de medidas (hierarquia parent.child[measure]), de modo semelhante ao utilizado para criar gerações de dimensões normais.
Por exemplo, para criar uma hierarquia de medidas, deve introduzir Measures.profit[measure], profit.cost[measure] e cost.price[measure], que produz a seguinte hierarquia:
Measures profit cost price
Para criar dimensões de medidas a partir de fórmulas, no cabeçalho da coluna, deve introduzir o nome da dimensão de medidas e, em seguida, anexar a sintaxe da fórmula entre parênteses retos [ ]. Entre parênteses, inicie a fórmula com um sinal de igual (=) e termine a fórmula com um ponto e vírgula (;). Os argumentos na fórmula correspondem aos nomes das colunas ou às coordenadas das células, que podem aparecer entre aspas. Pode utilizar funções e comandos de cálculo do Essbase na fórmula.
Suponha que tem um ficheiro Excel denominado Spend_Formulas.xlsx com dados tabulares na folha de cálculo SpendHistory, que tem bastantes colunas. Por exemplo, existem dimensões denominadas Year (coluna A) e Quarter (coluna B), e dimensões de medidas denominadas Spend (coluna J) e Addressable Spend (coluna K). Estas colunas têm dados. Em seguida, existem cabeçalhos das colunas que utilizam fórmulas para criar uma dimensão de medidas. Estas colunas não têm dados. Por exemplo, para criar a dimensão Total Spend, o cabeçalho da coluna O utiliza esta fórmula do Essbase: Measure.Total Spend[="Addressable Spend" + "Non-Addressable Spend";]. Para criar a dimensão AddSpendPercent, o cabeçalho da coluna P utiliza esta fórmula do Essbase: Measure.AddSpendPercent[="Addressable Spend"/"Total Spend";].
O processo de transformação cria esta hierarquia:
O processo de transformação também pode identificar dimensões de medidas quando o nome de uma dimensão é duplicado. Suponha que tem um cabeçalho da coluna que utiliza esta fórmula, Meas.profit[="a1"-"b1";], que cria a dimensão Meas. Se, noutro cabeçalho da coluna, utilizar o nome da dimensão Meas como o valor principal superior, como Meas.Sales, a dimensão Sales também é considerada uma dimensão de medidas.