8 Replies Latest reply: Apr 27, 2011 10:34 PM by Mark Costa RSS

    Problema com memória

      Olá pessoal,

      Vocês ja tiveram problema de memória usando o QlikView?

      Estou utilizando um banco de dados grande e quando limpo todos os filtros a memória da maquina é toda consumida.

      O que posso fazer neste caso?

      Obrigado,

      Luís Garske

        • Problema com memória
          Guilherme Oliveira

          Luis.

          Bom isso é meio que complicado de definir, mas você precisar analisar alguns pontos.

          Quantidade de dados: realmente é necessário ter todo esse volume de dados ?
          Servidor: será que o servidor (memória e processador) consegue suportar o volume de dados e os acessos dos usuários ?
          QVW: meu QVW foi bem desenhado ? as tabelas foram bem relacionadas ? existem chaves sinteticas ?
          Usuários: quantos usuários eu tenho e quantos acessos simultaneos ao Qlikview eu tenho ?

          Com isso já se pode ter uma idéia do que será necessário.

          Redução de dados históricos com o passar do tempo.
          Upgrade de memória/processador.
          Analise do script/macros/objetos/funções.
          Quanto mais usuários mais consumo de hardware, upgrade a vista ?

          Acho que com isso você pode ter uma direção de como solucionar seu problema.

            • Problema com memória

              Bom dia Guilherme,

              Muito obrigado pelas dicas, neste caso o documento ainda estava sendo testado apenas localmente, ainda não publicamos em um servidor.

              O que ocorre é que temos uma massa de dados muito grande, vários anos de movimentação.

              Mas com certeza suas dicas foram muito válidas,

              Obrigado,

              Abraço,

              Luís Garske

            • Problema com memória
              Eduardo Oliveira

              Luis, boa tarde.

              Se o problema for máquina local, muitas vezes o problema pode ser apenas um objeto com muitas dimensões/expressões e cálculos pesados. Por isso quando limpa toda a seleção, começa a carregar a memória com todos estes dados é cálculos e trava a memória do user local.

              O que pode ser feito nestes caso e condicionar a vizualização deste objeto à uma ou mais seleções nos campos de dimensão, assim carrega na memória somente os dados com seleção.

              Outra solução, menos aceita pelos usuários finais, e dividir um objeto muito extenso por dois ou mais menores (menos dimensões, menos expressões), e trazer-los minimizados na sheet.

              Mas performance é passível de uma análise mais aprofundada.

               

              Att.,

                • Problema com memória

                  Bom dia Eduardo,

                  Com certeza você acertou na mosca, tenho uma tabela enorme onde carrego muitos dados e na maioria das colunas são cálculos.

                  Provavelmente seja isso que esta ocasionando o alto consumo de memória no momento em que limpo todos os filtros.

                  Vou pensar em algo neste sentido,

                  Muito obrigado,

                  Abraço,

                  Luís Garske

                • Problema com memória
                  Rodolpho

                  Olá Luiz,

                   

                  Como nosso amigo Eduardo disse, reveja seus objetos de tela (principalmente dimensões usadas em tabelas dinâmicas) pois conforme a dimensão utilizada, o QV pode ter de redesenhar uma quantidade muito grande de linhas no que faz o consumo de memória ir nas alturas.

                    • Problema com memória

                      Olá Rodolpho,

                      Conforme ja comentei com o Eduardo, é bem por aí o que esta ocorrendo.

                      Irei pensar algo neste sentido.

                      Obrigado,

                       

                        • Problema com memória
                          Guilherme Oliveira

                          Luis.

                          O desenvolvedor tambem precisa de um bom hardware, pois se a quantidade de dados é grande ele precisa de memória e processador.

                          Bom... como voce disse voce possui uma tabela que apresenta muitos dados...

                          Minha recomendação... crie uma condição de calculo para a sua tabela e outros objetos com muitas informações... por exemplo... para não ficar muito pesado para voce desenvolvedor e para o usuário final... crie uma condição que o obrigue a fazer seleções, com isso o volume de dados apresentado neste objeto será menor e com isso não terá problemas para ser exibido...

                          Normalmente utilizo pelo menos a seleção de algum ano...

                          por exemplo.

                          Count(Distinct ANO) = 1

                          e na mensagem de erro coloco a mensagem: Selecione um ano.

                          Assim força a redução de dados apresentados nesta tabela.

                          Abraços.

                      • Problema com memória
                        Mark Costa

                        QlikView é uma ferramente de BI ou seja ele foi feito naturalmente pra trabalhar com muitos dados então não acredito que quantidade de arquivos seja o seu problema - a não ser que seja algo descomunal.

                        Existem N fatores que podem estar gerando seu problema desde hardware (eu recomendo 4GB de ram no mínimo) até os charts.

                        Problemas comuns no QlikView são:

                        - Carregamento de dados inúteis pra aplicação. Isso vale tanto para linhas como colunas (diga NÃO ao LOAD * )

                        - Estrutura de dados: tente sempre desnormalizar seus dados até obter um Start Schema ou algo bem próximo disso

                        - Expressions excessivamente complexas: Expressions não precisam ser uma equação diferencial. Make it simple. Quanto possível leve a complexidade das Expressions pro Load Script

                        - Uso de IF em Expressions: raro são os casos onde não exista a possibilidade de trocar um IF por um Set Analysis

                        - Calculated Dimensions: eu já notei em vários projetos que o uso de Calculated Dimensions é extremamente custoso pro QlikView. Evite usá-las

                        - Quando possível, compare números e não strings: QlikView trabalha muito melhor com números do que textos então dê preferência em usar números em suas expressions

                        Abraço,

                        Mark Costa