Modificando esquema de cores (No QvServer também)

Fala pessoal, beleza?

 

Apesar de não gostar muito de alterar o que é padrão da ferramenta, alguns clientes insistem: Quero alterar o esquema de cores do QlikView para a cor padrão da minha empresa!

 

Você já precisou fazer isso? Conseguiu alterar no documento, mas não consegue repassar esse esquema na visualização pelo servidor? Vamos aprender!

 

Continuar lendo

Como recuperar uma licença de um QVW deletado

Uma antiga aplicação, que não esta mais sendo utilizada, esta prestes a ser removida da pasta de acesso do QlikView Server. Sabendo que este QVW não é utilizado a décadas, logo optamos por remover essa aplicação da face de nosso ambiente. Lembro-me de remover as tasks de recarga e depois vou até o diretório onde o arquivo se encontra e SHIFT + DELL!
Pronto! Arquivo removido, uma aplicação a menos para dar manutenção 😀

Um tempo se passa e chegam novas requisições de acessos para determinadas aplicações. Sem nenhuma dúvida acessamos ao nosso querido QMC, encontramos o QVW no qual solicitaram acesso e vou adicionar as licenças solicitadas, só que não… nenhuma licença disponível para alocar a novos usuários.

Indignado! Pois tempos atrás foi removido um QVW e liberada algumas Calls para utilização.
Agora verifico a parte de licenciamento em meu QMC e, novamente, vejo a informação de que todas as licenças estão alocadas.

Inicio uma varredura, QVW a QVW (ninguém merece —– PS: no futuro disponibilizo uma app para facilitar nossa vida nesse processo!) para entender e identificar com quem esta as licenças que deveriam estar disponíveis para utilização.
QVW a QVW vou anotando a quantidade de licença e para quem foi disponibilizado.

Passado um tempo, mapeada todas as aplicações e seus respectivos usuários, identifico que alguma coisa “Pode” estar errada, o número de licenças alocadas em cada QVW não bate com o número total de licenças em que meu ambiente deveria possuir.

E agora?


Aff! Esqueci de remover as licenças daquele painel em que deletei! Porém essa aplicação não esta mais aparecendo em meu QMC. Como vou remover essas licenças e recupera-las para utilização?

Angustiado tento reiniciar todos os serviços do QlikView Server….. NADA!
Aflito tento remover o .SHARED daquela aplicação….. NADA!
Desesperado tento remover o .pgo do root folder…. NADA!!

E agora? Perdi a licença?

rsrsrs
Calma!

Existe uma luz!

Vamos lá

Solução 1

  1. Pare o serviço “QlikView Server”.
  2. Adicione uma linha com a informação “PgoAsXmlAlso=1” logo abaixo da linha que contém a informação [Settings 7] no arquivo Settings.ini que fica no diretório “C:\ProgramData\QlikTech\QlikViewServer”.
  3. Inicie o serviço “QlikView Server”
  4. Crie um documento, em branco, com o exato nome do documento que foi removido e ficou com as licenças presas.
    1. Caso não se recorde do nome do documento, encontre o arquivo CalData.pgo.xml que se encontra dentro do diretório Root
  5. Abra o QMC. Agora o documento deve reaparecer e assim será possível remover as licenças alocadas para ele.

Solução 2

Pare os serviços “QlikView Server” e “QlikView Management Service” e depois remova o arquivo “caldata.pgo” do diretório Root (diretório em que esta mapeado o QVS) e também do diretório “C:\ProgramData\QlikTech\QlikViewServer”.

OBS: Esse método é aconselhável somente se a primeira solução não tenha dado certo.

Solução 3

Remova a licença de seu QlikView Server e aplique-a novamente.

OBS: Esse método é aconselhável somente para ambientes pequenos e caso nenhuma das outras alternativas funcione.

Pessoal, nunca se esqueçam de fazer backup dos arquivos antes de remove-los. Existe um risco grande de parar o seu ambiente.

Melhor configuração de QlikView para VMware

Fala pessoal, tudo bom?

Esse mês estamos falando muito sobre medições de desempenho para QlikView. Na semana passada falamos bastante sobre virtualização, seus mitos e verdades. Sabemos que, para ambientes consideravelmente grandes, chegamos a uma perda de 35% de performance em relação a um hardware físico dedicado.

Hoje quero compartilhar um material que explica como devemos aplicar as configurações abordadas, na semana passada, em uma máquina virtual. Neste artigo iremos tratar das configurações para o VMware, mas porque somente VMware? Fiz uma pesquisa e esta é a arquitetura de virtualização mais utilizada no meio corporativo.

Nota importante: Todo o material foi retirado da QlikView Scalability Group – Visitem a página da comunidade aqui.

Chega de enrolação, vamos lá!

Primeiro de tudo, para obter o máximo proveito do seu host VMware para QlikView, certifique-se de dedicar todo o recurso para ele. Se o VMware não estiver configurado com recurso dedicado para QlikView sofrerá muita perda de performance.

1) Recomendação SCSI, para obter um melhor desempenho para o disco I / O

01

2) Pode haver casos em que um aplicativo em execução em uma máquina virtual começa a consumir uma grande quantidade de recursos e, como resultado, a VM começa a esgotar-se de RAM e CPU. O QVS é um aplicativo crítico e precisa estar sempre disponível, você não pode simplesmente desligá-lo para adicionar mais memória RAM e CPU. Estes são os tipos de casos em que deve-se adicionar os recursos no quente, ou seja, sem desligar ou parar a máquina virtual ou qualquer um de seus aplicativos. O nome do recurso a ser ativado é Hot-Plug.

02

3) Ligue o log. Parece ser algo simples, mas o log SEMPRE nos alerta de um problema que esta para ocorrer. Monitorar log não é uma tarefa fácil, mas pode nos prevenir de muitos problemas.

03

4) Configure o adaptador de rede com a melhor tecnologia: “1000 Mb Full Duplex”. Além disso, certifique-se de usar o driver de rede do VMware e não o encontrado pelo Windows.

04

5) Desative o Balonismo.

Balonismo ou “Virtual memory ballooning” é uma técnica utilizada pelo Hypervisor que permite a retirada de memória não utilizada de determinada VM e compartilha essa memória com outras (VMs). O Balonismo permite o estouro da memória física alocada para determinada VM, pois esse recurso garante que mais memória será liberada oriundo de outra VM.

Neste link, existe um post muito interessante explicando como funciona e o que causa a desativação deste método.

6) Garanta 100% da CPU alocada para o QVS

06

7) Garanta 100% da Memória alocada para o QVS

07

8) Garanta 100% do disco físico alocado para o QVS

08

9) Desabilite o CPU Hyper threading

09

10) Desabilite o NUMA

10

Conclusão: Lembre-se sempre de monitorar o desempenho de seu QVS dentro da VM e assim saber identificar qual é a hora de passar a configuração para um hardware físico dedicado ou então para um cluster de servidores.

Até a próxima semana! 😀

Configuração na BIOS para melhor desempenho no QlikView Server

Continuando o assunto de como melhorar o ambiente do nosso querido QlikView Server, falaremos sobre as opções que devem ser alteradas na BIOS desse servidor.

Essa opções irão influenciar diretamente na utilização de seu hardware e assim ter o ganho esperado. Note que algumas das configurações não estarão disponíveis devido ao modelo do hardware do servidor. Neste caso não temos o que fazer, pule para a próxima opção.

Alguns termos que utilizarei serão bem técnicos, mas para aqueles que não possuem interesse, basta realizar a configuração e reiniciar o servidor.

IMPORTANTE: Apesar dessas opções estarem esclarecidas pela própria Qlik, é sempre bom fazermos as alterações e verificar se realmente obtivemos ganho de performance, em caso contrário, volte as configurações originais de fábrica de sua BIOS.

Vamos as opções e depois irei explicar, tecnicamente, alguns conceitos:

Opção

Valor

Hyper-threading Disabled ou OFF
Power Management (Power Plan) Max performance/ High Performance
Node Interleaving Enabled
NUMA Optimized OFF
Turbo Boost Enabled
Memory configuration / Hardware prefetch Enabled

Hyper-threading

O que é?

Hyper-Threading ou hiperprocessamento é uma tecnologia usada em processadores que o faz simular dois processadores tornando o sistema mais rápido quando se usa vários programas ao mesmo tempo. Essa técnica foi criada para oferecer maior eficiência na utilização dos recursos de execução do processador. Segundo a Intel, a Hyper-Threading oferece um aumento de desempenho de até 30% dependendo da configuração do sistema.

Mas porque isso seria ruim para o QlikView?

Dependendo do tamanho do cache L1, o Hyper-Threading simplesmente divide-o ao meio para fazer um único processador simular a utilização de 2. Se o L1 é muito pequeno, dividi-lo pode significar maior lentidão, pois as páginas de processamento dos processos de QlikView são muito grandes e não caberão nesse processo dentro do cache que o Hyper-Threading dividiu. Faltando espaço no cache L1, o processador começa a escrever esses processos na memória RAM e essa é a grande perda de performance que o QlikView sofrerá.

O efeito é semelhante a esgotar-se a memória RAM física disponível e o processador começar a fazer SWAP, ou seja, utilizar o disco físico para armazenar as informações que estão “sobrando”.

NUMA

O que é?

NUMA (Non-Uniform Memory Access)

A arquitetura tradicional para suportar servidores multiprocessados se chama SMP (Symmetric Multiprocessor). Neste modelo, apenas um processador tem acesso a memória num determinado momento. Quanto mais processadores são adicionados, mais sobrecarregado fica o barramento de acesso à memória, o que pode acabar sendo um fator limitante para a performance do servidor.

No sistema NUMA, as CPU’s estão organizadas em pequenos sistemas chamados de nodes. Cada node possui seu próprio conjunto de processadores e pool de memória e são conectados a um sistema maior através de um barramento de alta velocidade.

Mas porque isso seria ruim para o QlikView?

Em primeiro lugar o QlikView não é um software NUMA-aware, ou seja, não esta homologado para funcionar nesse sistema.

O QlikView é um software que se utiliza de MUITA memória, sabemos que se disponibilizarmos 128gb de ram ele vai consumir esses 128gb, pois foi assim que ele foi construído. No momento em que existe um mapeamento de cada núcleo para cada barramento de memória, corremos o risco desse barramento de memória não caber mais informação e é nesse momento que o QlikView perde sua performance, pois geram-se gargalos de mapeamento desse novo pedaço de memória, ou seja, precisa-se passar a informação para o atual dono desse espaço de que um outro “cara” precisa se utilizar dele – imagine você tendo que dar o seu terreno, pois o vizinho já ocupou toda a sua área rsrs.

O que a desativação NUMA faz é deixar toda a memória disponível, independentemente do número de núcleos e da quantidade de RAM instalado no sistema, de modo com que o QlikView possa se beneficiar de toda a memória sem saltar de um núcleo para o outro e evitar os gargalos.

Para as demais configurações a ativação não gerará nenhum tipo de queda de performance em seu ambiente QlikView Server.

Por hoje é isso pessoal!

Aproveitem o carnaval e até a próxima semana.

Métodos de Sizing de memória

Fala pessoal!! Como estão?

Conforme combinado, vou explicar como funciona a forma de medirmos o quanto de memória precisamos para atender nossa atual demanda de QlikView na empresa.

Essa métrica é confiável, porém é importante ressaltar que essa métrica é utilizada para aplicações desenvolvidas seguindo as melhores práticas em QlikView (modelagem bem resolvida, sem nenhuma tabela sintética, poucas imagens embutidas na aplicação, cálculos simples em gráfico). Ou seja, se tivermos uma aplicação cheia de chaves e tabelas sintéticas, pode esquecer que o sizing não funcionará, ok?

Vamos lá:

O sizing de memória é medido através de:

  • Quantidade de aplicações disponíveis
  • Tamanho (MB) de cada aplicação
  • Quantidade de usuários que acessam cada aplicação

Métricas para o sizing:

  • O tamanho de um QVW é, em média, quadruplicado quando “sobe” para a memória do QvServer
  • Cada usuário que acessa a aplicação consome, em média, de 10% a 15% da memória que este QVW ocupou em memória

————————————–

Vamos para um exemplo:

Ambiente com 01 QVW de 100MB

20 usuários acessam esse QVW

Consumo do QVW: 400MB

Consumo por usuário: 40MB (usando 10% da memória consumida do QVW)

Utilização total: 400MB + (20 x 40MB) = 1.2GB

Conclusão do exemplo: Nosso ambiente de QlikView funcionará em perfeitas condições com 2gb de ram, isso considerando em que neste servidor funcione apenas o serviços necessários para o QvServer. Não se esqueçam de considerar a utilização de memória do próprio sistema operacional, que em média vai consumir de 0.5gb a 1gb (servidores bem configurados).

Mas Yuri, para usar essas métricas de sizing eu preciso ter o meu projeto finalizado para saber o tamanho do QVW. E se eu ainda não tenho o QVW montado, alias, e se eu nem tenho o QlikView ainda? No próximo post resolverei isso 😀 !