Criar Cubos do Modo Híbrido Otimizados
Os utilitários de Otimização do Cubo Linha de Base, Cache de Cálculo, Ordem de Resolução e Distribuição de Dados ajudam você a ajustar seus cubos para um melhor desempenho.
| Utilitário | Dados Retornados |
|---|---|
| Linha de Base | Métricas de desempenho do cubo |
| Ordem de Resolução | Ordem de resolução dos membros do cubo |
| Cache de Cálculo | Dados para ajudar a escolher o melhor valor do cache da calculadora para o cubo |
| Distribuição de Dados | Dados para ajudar a escolher quais dimensões devem ser tornadas esparsas e quais devem ser tornadas densas |
Otimizar Métricas de Linha de Base em um Cubo de Modo Híbrido
As métricas rastreadas pelo utilitário Linha de Base no Cube Designer mostram o desempenho do banco de dados no modo híbrido do Essbase. Use essas métricas para determinar o desempenho da linha de base e depois para mensurar os benefícios das otimizações subsequentes que você fizer.
Antes de usar o utilitário Linha de Base, primeiro crie uma pasta de Trabalho do aplicativo, incluindo o outline, as definições da configuração, os scripts e as consultas de cálculo que você deseja incluir no cubo.
Quando você executa o utilitário da Linha de Base, ele cria o cubo, carrega os arquivos dos dados selecionados, executa os scripts selecionados de cálculo e executa as consultas contidas na pasta de Trabalho do aplicativo. É importante ter uma amostra representativa de consultas de seus usuários.
O utilitário Linha de Base cria um painel do aplicativo e dos processos operacionais, o que pode ajudá-lo a projetar e otimizar o cubo. À medida que você implementa alterações e recria o cubo, a linha de base ajuda a comparar iterações das modificações do cubo. Na guia Essbase.Stats.Baseline da pasta de trabalho do aplicativo, o utilitário de linha de base anexa novas tabelas com os dados mais recentes de cada iteração.
Preparar a execução do Utilitário de Linha de Base Otimizar Cubo em um Cubo de Modo Híbrido
Conclua estas tarefas antes de executar o utilitário Linha de Base:
-
Projete e crie sua pasta de trabalho do aplicativo.
Para criar uma pasta de trabalho do aplicativo, você pode fazer download de uma amostra de pasta de trabalho do aplicativo e depois modificá-la de acordo com suas necessidades. Consulte Explore os Modelos da Galeria.
-
Remova as planilhas de consulta na pasta de trabalho do aplicativo de metadados do Smart View:
- Vá para a faixa de opções do Smart View.
- Escolha Informações da Planilha e clique em Excluir.
Se as planilhas de consulta tiverem metadados de um servidor diferente, o Cube Designer exibirá uma advertência e fará uma pausa no processamento até você responder.
-
Modifique a planilha Cube.Settings com as seguintes configurações de Configuração do Aplicativo:
Definição Valor ASODYNAMICAGGINBSO FULL HYBRIDBSOINCALCSCRIPT NONE INDEXCACHESIZE 100M DATACACHESIZE 100M ASODEFAULTCACHESIZE 100 MAXFORMULACACHESIZE 102400 INPLACEDATAWRITEMARGINPERCENT 20 CALCCACHEDEFAULT 200000 LONGQUERYTIMETHRESHOLD -1
Executar o Utilitário de Linha de Base Otimizar Cubo em um Cubo de Modo Híbrido
O utilitário Linha de Base identifica dimensões densas e esparsas, o tamanho dos dados (tamanhos de arquivo PAG e IND), o tamanho do bloco e os tamanhos dos dados, índice e cache da calculadora. Além disso, ele fornece métricas para carga de dados, cálculo e consulta.
Para executar o utilitário Linha de Base:
-
Na faixa Cube Designer, selecione Tarefas Administrativas > Otimizar Cubo.
-
(Opcional) Clique em Personalizar para escolher quais operações de linha de base serão executadas.
- Criar cubo - Cria o cubo definido na pasta de trabalho do aplicativo e carrega os dados nas folhas de dados.
- Executar scripts de cálculo - Executa os scripts de cálculo definidos em cada uma das planilhas de cálculo na pasta de trabalho do aplicativo.
As planilhas de cálculo são executadas na ordem em que aparecem na pasta de trabalho do aplicativo. A operação Otimizar Cubo ignora a propriedade Executar Cálculo nas planilhas de cálculo.
Apenas scripts de cálculo que podem ser executados pelos Jobs são suportados na operação Otimizar Cubo. Não é possível executar scripts do cálculo que dependam do contexto de grade atual do Smart View (por exemplo, cálculos definidos usando a função @GRIDTUPLES ou aqueles que usam variáveis de substituição de runtime definidas com tags <svLaunch>.
- Executar consultas - Executa as consultas nas planilhas de Consulta.
- Exportar tudo - Exporta todos os dados do cubo para o diretório do cubo. Depois que o tempo de exportação e o tamanho do arquivo forem registrados, o arquivo de exportação será excluído automaticamente.
-
Clique em Criar Linha de Base.
Se você não tiver uma planilha de dados no arquivo de trabalho do aplicativo, será solicitado que você selecione dados e carregue arquivos de regra do catálogo. É uma boa prática armazenar os arquivos de dados e de regras em um diretório compartilhado no catálogo, para que os arquivos não se percam quando você recriar o cubo.
Levará algum tempo para criar o cubo.
O Essbase gera a planilha Essbase.Stats.Baseline e a adiciona à pasta de trabalho.
-
Exiba a planilha Essbase.Stats.Baseline na pasta de trabalho do aplicativo.
- A primeira tabela da folha exibe o tamanho dos arquivos e o número de células de carregamento de dados, o tamanho do bloco e os tamanhos de cache.

- As cores na tabela de linha de base identificam o tipo de armazenamento para cada dimensão:
- Verde - dimensão densa
- Vermelho - dimensão esparsa com pelo menos uma fórmula dinâmica
- Azul - dimensão esparsa com agregações e sem todos os pais e fórmulas dinâmicos
- Dourado - outra dimensão esparsa

- Em Carregar e Calcular, as linhas "Script:" identificam qual script de cálculo leva mais tempo para concluir e, portanto, pode precisar ser otimizado.

- Em Consulta, Blocos de Leitura, ela mostra a quantidade de dados solicitados pela consulta.
Esse valor será reduzido por meio da alteração de uma dimensão dinâmica para uma dimensão armazenada.
- Em Consulta, Fórmulas, ela mostra o número de fórmulas executadas na consulta.
Analise as ordens de resolução dos membros calculados e faça alterações para reduzir o número de execuções da fórmula e melhorar o desempenho. Como alternativa, considere armazenar um membro calculado contendo fórmulas para reduzir o número de execuções da fórmula e melhorar o desempenho.

- A última tabela da folha exibe o tempo de exportação e o tamanho do arquivo.

- A primeira tabela da folha exibe o tamanho dos arquivos e o número de células de carregamento de dados, o tamanho do bloco e os tamanhos de cache.
Otimizar a Ordem de Resolução em um Cubo do Modo Híbrido
O utilitário Resolver Ordem no Cube Designer oferece uma representação visual do fluxo de ordem de resolução usado em um aplicativo do Essbase, que pode ajudá-lo a diagnosticar problemas de desempenho de consulta relacionados a fórmulas.
Para executar o utilitário Otimizar Ordem de Resolução do Cubo:
- Na faixa Cube Designer, selecione Tarefas Administrativas > Otimizar Cubo.
- Clique em Ordem de Resolução.
- Exiba a planilha Essbase.Stats.SolveOrder da pasta de trabalho do aplicativo.
Use as informações da planilha Essbase.Stats.SolveOrder para ajustar a ordem de resolução a fim de otimizar o desempenho da consulta. Consulte Otimizar o Cubo para Modo Híbrido e Solucionar Ordem no Modo Híbrido.
Otimizar o Cache da Calculadora em um Cubo do Modo Híbrido
O utilitário Cache de Cálculo no Cube Designer recomenda a definição ideal do cache da calculadora para um modo híbrido do Essbase, cubo de armazenamento em blocos.
O cache da calculadora é aplicável para cubos de armazenamento em blocos e de modo híbrido, mas não para cubos ASO. O uso da definição correta do cache da calculadora pode representar uma melhoria importante no desempenho ao calcular dimensões esparsas inteiras em um script de cálculo. O cálculo de uma dimensão esparsa inteira é uma técnica para reduzir o número de blocos necessários a uma consulta.
O valor padrão do cache de cálculo é de 200.000 bytes. O valor máximo é 200,000,000 bytes.
O cache da calculadora deve ser definido com o tamanho apenas suficiente para conter as dimensões esparsas que são calculadas no script de cálculo. A definição do cache da calculadora com um valor maior do que o necessário tem um impacto negativo no desempenho.
Para otimizar o cache da calculadora usando o utilitário Cache de Cálculo:
-
Para reduzir o volume de dados solicitado pela consulta, calcule e armazene uma ou mais dimensões usando um script de cálculo.
A melhor opção é, em geral, a maior dimensão.
-
Mova essa dimensão de modo que ela seja a primeira dimensão esparsa no outline.
O algoritmo do cache da calculadora seleciona as dimensões esparsas para colocar no cache, começando pela primeira dimensão esparsa.
-
Crie o cubo sem carregar dados.
O cubo deve ser criado para que o utilitário Cache de Cálculo funcione.
-
Execute o utilitário Cache de Cálculo.
O utilitário exibe a definição correta do cache próximo a cada dimensão, até 20 MB. Acima de MB, ele mostra N/D. Em geral, as definições acima de alguns MB não são necessárias.
- Na faixa do Designer de Cubo, selecione Tarefas Administrativas> Otimizar Cubo.
- Clique em Cache de Cálculo.
- Exiba a planilha Essbase.Stats.CalcCache da pasta de trabalho do aplicativo. Você pode exibir as definições de cache recomendadas da calculadora na planilha Essbase.Stats.CalcCache, na coluna Cache de Cálculo.

-
Localize a configuração Calc Cache na planilha Essbase.Stats.CalcCache, ao lado da(s) dimensão(ões) esparsa(s) que você calculou e armazenou na etapa 1.
-
Se você calculou uma dimensão na etapa 1, defina o padrão do cache da calculadora para esse valor. Se você calculou mais de uma dimensão na etapa 1, escolha o valor de Cache de Cálculo mais alto dentre os valores que você calculou.
Adicione esse valor à seção Definições do Aplicativo da planilha Cube.Settings. Como alternativa, você pode definir o valor nas definições de configuração do aplicativo, na interface web do Essbase. É uma boa prática arredondar, para permitir um pouco mais de margem.
Otimizar a Distribuição de Dados em um Cubo de Modo Híbrido
O utilitário da distribuição de dados no Cube Designer ajuda você a entender melhor os dados em um aplicativo Essbase, permitindo que você faça decisões importantes sobre como otimizar seu cubo.
A compreensão dos dados ajuda a determinar o seguinte:
- Quais dimensões devem ser tornadas densas e quais devem ser tornadas esparsas.
As dimensões densas definem os blocos em um aplicativo de armazenamento em blocos. Numa situação ideal, um bloco deve conter dimensões com a maior parte dos dados e representar o layout de consulta predominante para esse aplicativo. Em aplicativos de geração de relatórios financeiros, isso em geral significa que as dimensões de Tempo e Conta devem ser densas.
- Quais dimensões devem ser calculadas e armazenadas usando um script de cálculo.
Um dos fatores que afetam o desempenho da consulta é o número de blocos solicitados pela consulta. Se o número de blocos solicitados for muito alto, o desempenho da consulta será prejudicado. Para reduzir o número de blocos solicitados, pré-calcule os membros de nível superior de uma ou mais dimensões esparsas. Primeiro, defina o atributo de armazenamento de dimensão dos membros superiores como um atributo armazenado (Armazenar ou Nunca Compartilhar) e, em seguida, execute um script do cálculo que agrega essa dimensão usando CALC DIM ou AGG.
- Quais dimensões devem ser usadas como a dimensão da tarefa no comando FIXPARALLEL.
Para otimizar o script de cálculo usado para agregar as dimensões esparsas armazenadas, use o comando FIXPARALLEL. É importante selecionar as dimensões de tarefa corretas. Uma dimensão de tarefa é aquela que determina como o cálculo é dividido em threads e executado em paralelo. Uma ou mais dimensões esparsas devem conter a maior parte dos dados para reduzir tarefas vazias e, numa situação ideal, esses dados devem ser distribuídos uniformemente.
Para executar o utilitário de Distribuição de Dados:
-
No Designer de Cubo, selecione Tarefas Administrativas > Otimizar Cubo.
-
Selecione Distribuição de Dados.
A execução desse processo pode demorar, especialmente em modelos maiores.
-
Exiba a planilha Essbase.Stats.DataDist.

