Você pode criar um cubo com base em dados tabulares extraindo tabelas de fatos de um banco de dados relacional para um arquivo do Excel e, em seguida, implementando o cubo.
Os padrões nas relações entre títulos de coluna e dados são detectados para implantar um cubo multidimensional. O processo para transformar dados tabulares em uma estrutura que pode ser usada em um cubo multidimensional inclui estes conceitos:
Correlações entre colunas
Correlações entre tipos de coluna (como data, número e texto)
Análise de prefixos comuns e termos relacionados à business intelligence (como custo, preço, conta) no texto do cabeçalho
Estrutura do relatório (como células mescladas e células vazias)
(Opcional) Cabeçalhos de designação forçada que são usados para definir explicitamente 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 com a opção Transformar Dados no Cube Designer).
São fornecidos exemplos de arquivos do Excel de dados tabulares para demonstrar os conceitos de cabeçalhos de designação intrínseca e forçada.
Ao trabalhar com dados tabulares, você deve analisar os dados antes de criar um cubo baseado neles. Então, depois que o cubo for criado, você deverá determinar se o outline do cubo está da maneira que você deseja.
Você pode criar um cubo a partir de dados tabulares na instância do Essbase ou no Cube Designer. Consulte Criar e Atualizar um Cubo com Base em Dados Tabulares.
Os cabeçalhos intrínsecos usam o formato table.column, que é demonstrado no arquivo Sample_Table.xlsx
. Neste exemplo de arquivo, os cabeçalhos das colunas possuem nomes como Unidades, Descontos, Time.Month, Regions.Region e Product.Brand.
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 ...
Com cabeçalhos de designação forçada (dicas), você pode especificar como os dados tabulares devem ser tratados durante o processo de transformação.
Por exemplo, você pode forçar uma coluna a ser tratada como uma dimensão de medidas ou de atributos. A maioria dos cabeçalhos de designação forçada requer uma palavra-chave entre colchetes [ ]. Os cabeçalhos de designação forçada são demonstrador nos modelos Unstr_Hints.xlsx
e Sample_Table.xlsx
(disponíveis na galeria).
Formatos suportados de cabeçalho de designação forçada:
Tabela 6-1 Formatos de Cabeçalho de Designação Forçada
Designação | Formato do 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 de nível mais alto, se for exclusivo, é o nome da dimensão da conta. Se não for exclusivo, este membro será gerado automaticamente na dimensão da conta. |
Measures.profit[measure] profit.cost[measure] cost.price[measure] |
Measures formula |
MeasureName[=formula_syntax;] |
profit[="price"-"cost";] profit[="D1"-"E1";] price[=IF ("S1" == #MISSING) "R1"; ELSE "S1"; ENDIF;] |
Measures consolidation |
MeasureName[+]: adicionar à mãe MeasureName[-]: subtrair da mãe MeasureName[~]: sem consolidação (equivalente a [measure]) O padrão é sem consolidação. |
price.shipment[+] A consolidação só pode ser definida para a medida dim |
Formula consolidation |
FormulaName[+=<formula>]: adicionar à mãe FormulaName[-=<formula>]: subtrair da mãe |
profit[+=price-cost] cost.external[+=ExternalWork+ExternalParts] |
UDA |
ReferenceGeneration[uda] |
Product[uda] |
Skip A coluna não é lida. |
ColumnName[skip] |
column[skip] |
Recur O último valor da célula da coluna é usado para células vazias A designação Recorrência pode ser combinada com outras designações forçadas; inclua uma lista separada por vírgulas de designações forçadas entre colchetes, ColumnName [designationA, recur]. |
ColumnName[recur] |
Product[recur] Product[uda,recur] |
Você pode especificar colunas para serem dimensões de medidas e pode usar fórmulas para criar dimensões de medidas com dados calculados durante o processo de transformação. Os cabeçalhos de designação forçada de medidas e fórmula de medidas são especificados com o nome da dimensão de medidas, seguido de uma palavra-chave ou fórmula que está entre colchetes e incluída no nome da dimensão de medidas.
Você também pode consolidar medidas e fórmulas, adicionando-as à mãe ou subtraindo-as dela.
Para especificar uma coluna para ser uma dimensão de medidas, no cabeçalho da coluna, digite o nome da dimensão de medidas e, em seguida, adicione a palavra-chave [medida]. Por exemplo, você pode especificar as colunas Unidades e Custos Fixos como dimensões das medidas usando esta sintaxe: Unidades[medida] e Custos Fixos[medida].
O processo de transformação cria essa hierarquia, com Unidades, Descontos, Custos Fixos, Custos Variáveis e Receita como medidas:
Time Year Quarter Month Regions Region Area Country ... Product Brand ... Units Discounts Fixed Costs Variable Costs Revenue
Você pode criar uma hierarquia de geração de medidas ( parent.child[measure] hierarchy), de modo semelhante àquele em que você cria gerações de dimensão regulares.
Por exemplo, para criar uma hierarquia de medidas, você insere Measures.profit[measure], profit.cost[measure] e cost.price[measure], o que produz a seguinte hierarquia:
Measures profit cost price
Para criar dimensões de medidas com base em fórmulas, no cabeçalho da coluna, digite o nome da dimensão de medidas e, em seguida, adicione a sintaxe da fórmula entre colchetes [ ]. Entre os colchetes, 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 a nomes de colunas ou coordenadas de células, que devem estar entre aspas. Você pode usar funções e comandos de cálculo do Essbase na fórmula.
Suponha que você tenha um arquivo do Excel chamado Spend_Formulas.xlsx com dados tabulares na planilha SpendHistory, que possui muitas colunas. Por exemplo, existem dimensões chamadas Ano (coluna A) e Trimestre (coluna B) e dimensões de medidas chamadas Gasto (coluna J) e Gasto Endereçável (coluna K). Essas colunas possuem dados. Logo, existem cabeçalhos de coluna que usam fórmulas para criar dimensões de medidas. Essas colunas não possuem dados. Por exemplo, para criar a dimensão Gasto Total, o cabeçalho na coluna O usa esta fórmula do Essbase: Measure.Total Spend[="Addressable Spend" + "Non-Addressable Spend";]. Para criar a dimensão AddSpendPercent, o cabeçalho na coluna P usa 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 poderá identificar dimensões de medidas quando um nome de dimensão for duplicado. Suponha que você tenha um cabeçalho de coluna que use esta fórmula, Meas.profit[="a1"-"b1";],que cria a dimensão Meas. Se, em outro cabeçalho de coluna, você usar o nome da dimensão Meas como o pai principal, como Meas.Sales, a dimensão Vendas também será considerada uma dimensão de medidas.