Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa noite,
Poderiam me explica como é a performance do qlikview considerando o seguinte:
-O qlikview trabalha com os dados in memory
Se eu tiver uma origem como um Hadoop, onde há um grande poder de processamento, eu posso fazer todo o processamento dos dados e calculos no hadoop, ou qualquer outra origem que tenha grande capacidade de processamento, e levar ao qlik tudo pré calculado, porém há vantagem nisso se o Qlik trabalha com os dados in memory? seria um cenário ideal se eu usar direct discovery?
-Variaveis são melhores que grandes expressões nos graficos ou tabelas
Quando é realizado um load do painel, as variáveis serão executadas e pré calculadas e com isso, quando eu usar no gráfico ganharei no desempenho?
Considerando que minha logica na variável seja complexa e extensa, há mesmo uma vantagem em se utilizar variavel?
Desde já obrigado, se tiverem mais considerações de ganho de performance agradeço.
Acho importante considerar que o Direct Discovery é uma solução que tem algumas limitações quando comparado com o uso tradicional in-memory. Portanto, procure inicialmente verificar se o uso da solução in-memory é realmente inviável. Na prática, acho difícil determinar uma regra para recomendar o Direct Discovery. Um bilhão de registros pode ser muito ou pouco dependendo da complexidade das regras de cálculo, modelagem dos dados, hardware disponível, necessidade de análise e estratégia de navegação nos dados.
Existem duas formas de usar expressões em variáveis. Na primeira, você inicia a expressão com o sinal de igual, e desta forma o QV fará um pré-cálculo da expressão e reaproveitará o resultado nos lugares que esta variável estiver sendo utilizada. Este uso faz sentido quando você quer calcular um valor sem necessidade de abri-lo por uma dimensão. Na outra forma, você define a variável sem o sinal de igual, e desta forma o QV não fará pré-cálculo. A variável é somente uma entidade que armazena a expressão, e o cálculo é feito em cada objeto que a variável estiver sendo utilizada. Este outro uso faz sentido quando você quer usar a mesma expressão em gráficos diferentes para quebrar os valores de acordo com a dimensão do gráfico.
Creio que você esteja se referindo à segunda forma que menciono. Neste caso, o uso de variável não melhorará a performance do app. MAS mesmo assim recomendo o uso de variáveis como uma forma de permitir o reuso das expressões, o que minimiza o risco de você criar duas expressões diferentes para o mesmo indicador. Além disso, facilita a manutenção no app, pois caso você precise ajustar a expressão, você faz uma única vez na variável.
Sobre performance, recomendo este link que tem um resumo dos principais pontos.