Maneiras de Usar o Cálculo Inteligente
Por padrão, o Cálculo Inteligente é ativado para cubos de armazenamento de blocos. Quando você executa o primeiro cálculo completo, o Essbase calcula cada bloco. Quando você recalcula o cubo inteiro, o Essbase verifica cada bloco para ver se ele está marcado como limpo ou sujo. Evite recálculos desnecessários durante cálculos parciais de cubo.
Esta seção fornece informações sobre como ativar e desativar o Cálculo Inteligente e usá-lo com diferentes tipos de cálculos.
Ativar ou Desativar o Cálculo Inteligente
Por padrão, o Cálculo Inteligente é ativado para um cubo de armazenamento em bloco do Essbase. Também é possível ativá-lo ou desativá-lo usando a configuração UPDATECALC ou o comando SET UPDATECALC em um script de cálculo.
Por padrão, o Cálculo Inteligente é ativado. Para alterar o padrão, use a definição de configuração UPDATECALC.
Para ativar e desativar o Cálculo Inteligente durante um script de cálculo, use o comando SET UPDATECALC em um script de cálculo.
Cálculo Inteligente para um Cálculo Padrão e Completo
O Cálculo Inteligente oferece benefícios significativos de desempenho quando você faz um cálculo completo (CALC ALL) de um cubo de armazenamento em bloco do Essbase. Se você fizer um cálculo completo, deixe o Cálculo Inteligente ativado (o padrão) para aproveitar seus benefícios de desempenho.
Atenção:
Ao usar o Cálculo Inteligente, observe as informações em Limitações do Cálculo Inteligente.
Calculando pela Primeira Vez
Quando você faz o primeiro cálculo completo do cubo, o Essbase calcula cada bloco. O desempenho é o mesmo, quer o Cálculo Inteligente esteja ativado ou desativado.
Recalculando
Quando você faz um recálculo completo de um cubo com o Cálculo Inteligente ativado, o Essbase verifica cada bloco para ver se ele está marcado como limpo ou sujo. Consulte Status do Cálculo Inteligente e do Bloco de Dados.
A verificação de blocos de dados tem uma sobrecarga de desempenho de 5% a 10%, o que é insignificante quando comparado ao desempenho obtido ao habilitar o Cálculo Inteligente.
No entanto, se você recalcular um banco de dados no qual mais de 80% dos valores foram alterados, a sobrecarga do Cálculo Inteligente poderá superar os benefícios. Nesse caso, desative o Cálculo Inteligente.
Cálculo Inteligente para um Script de Cálculo, Cálculo Parcial
Se o script de cálculo calcular apenas parcialmente um cubo de armazenamento em blocos, o Essbase não marcará os blocos calculados como limpos, a menos que você use o comando SET CLEARUPDATESTATUS.
Use SET CLEARUPDATESTATUS para evitar recálculos desnecessários.
O Essbase marca um bloco de dados como limpo quando ele calcula o bloco de dados em um cálculo completo (CALC ALL) ou quando calcula todas as dimensões em um comando CALC DIM. Consulte Status do Cálculo Inteligente e do Bloco de Dados.
Em qualquer outro cálculo, o Essbase não marca blocos de dados calculados como limpos, a menos que você use o comando SET CLEARUPDATESTATUS em um script de cálculo. Por exemplo, se você calcular um subconjunto de um banco de dados ou calcular um banco de dados em duas passagens de cálculo, o Essbase não marcará os blocos calculados como limpos, a menos que você chame SET CLEARUPDATESTATUS.
Os seguintes scripts de cálculo não fazem com que o Essbase marque os blocos de dados calculados como limpos:
FIX("New York")
CALC DIM(Product, Measures);
ENDFIXCALC DIM(Measures, Product);
CALC DIM(Market, Year, Scenario);