Mashups Qlik Sense até 3x mais rápidos. Aprenda como!

Se você está construindo mashups no Qlik Sense — dependendo de como foram desenvolvidos — é bem provável que já tenha se deparado com isto: carregamento lento de objetos, renderização atrasada do dashboard e usuários frustrados que desistem antes mesmo de suas visualizações aparecerem. Não é apenas irritante, é um problema de performance que compromete todo o propósito da análise visual.

Recentemente, realizamos uma série de benchmarks comparando dois métodos populares para lidar com metadados de objetos do Qlik: a Capability API versus o Enigma.js. Os resultados foram claros e surpreendentes. Uma das abordagens entregou resultados consistentemente mais rápidos, reduzindo o tempo de carregamento inicial em mais da metade.

Neste post, vamos detalhar o que realmente está deixando seu mashup lento, compartilhar como conseguimos um ganho de performance expressivo, e explorar as compensações de abrir mão da abstração em favor de velocidade e controle brutos.

Realizamos testes comparando duas abordagens comuns para trabalhar com metadados de objetos do Qlik:

  • Capability API: alto nível, fácil de usar
  • Enigma.js: baixo nível, acesso direto ao Qlik Engine

O resultado?

Em quase todos os cenários, o Enigma.js foi até 3x mais rápido.

Um mashup que levava 4 segundos para carregar na primeira renderização agora leva cerca de 1,5 segundo com o Enigma.js.

 

O que observamos

 

Com a Capability API, o Qlik injeta bastante overhead na página:

  • Arquivos de configuração JSON
  • Múltiplas bibliotecas CSS e JS
  • Wrappers extras e lógica de renderização

Embora isso seja ótimo para velocidade de desenvolvimento, não é ideal quando a velocidade da experiência importa.

Removemos tudo isso usando Enigma.js puro, gerenciando manualmente os modelos de objetos e renderizando apenas o que precisávamos — e a diferença foi imediata.

 

As Compensações

 

Ir 100% Enigma não é para todo mundo — e tudo bem.

  • Você perde a simplicidade do app.getObject()
  • Você assume a responsabilidade pela lógica de renderização
  • Você precisa pensar mais como um desenvolvedor de engine do que como um construtor de dashboards

Mas se o seu objetivo é controle e performance, isso vale a pena.

Menos peso, menos abstração e uma experiência do usuário perceptivelmente mais rápida.

 

Reconhecimento à Qlik

 

Vamos aproveitar o momento para reconhecer algo:

A Qlik nos dá acesso ao seu engine através de múltiplas bibliotecas JavaScript.

Isso é raro no universo de BI.

E isso abre um mundo de possibilidades para quem estiver disposto a explorar por baixo do capô — desde mashups/web apps leves até aplicações totalmente personalizadas que exploram o engine de formas criativas.

Na Cluster, somos especialistas em projetar web apps Qlik personalizados e de alta performance que vão além do básico. Se você está enfrentando tempos de carregamento lentos ou precisa de mais controle sobre a experiência do seu dashboard, podemos ajudar você a aproveitar todo o potencial do Enigma.js e do Qlik Engine.

Vamos conversar!

Conteúdo relacionado