Qlik Core
Qlik Core: Wat is het en wat kun je ermee?
Elk jaar worden in april tijdens de Qonnections conferentie van Qlik belangrijke productinnovaties aangekondigd. Dit jaar werd de conferentie in Orlando gehouden en van alle innovaties die daar zijn gepresenteerd was Qlik Core misschien wel het meest verrassende nieuws. Qlik Core, de naam zegt het al, stelt de kern van Qlik beschikbaar en biedt daarmee nieuwe mogelijkheden voor organisaties die zelf schaalbare analytische applicaties willen ontwikkelen. In dit blog lees je wat het Qlik Core platform precies is en wat het allemaal kan.
Wat is Qlik Core?
Qlik Core is een ontwikkelplatform dat gebruik maakt van Qlik’s Associative Engine (ook wel QIX Engine genoemd) en een verzameling API’s om met deze Engine te communiceren via http(s). De QIX Engine is een in-memory query engine die ook onderdeel uitmaakt van Qlik Sense en zorgt ervoor dat data in het interne geheugen wordt ingeladen, automatisch wordt geïndexeerd en dat associaties in de data automatisch worden berekend. Tot zo ver zou je kunnen denken dat Qlik Core niet echt een nieuw product is, omdat zowel de Engine als de API’s al bestaande componenten van Qlik Sense zijn. De innovatie zit hem in het feit dat Qlik Core een Microservices Architectuur heeft, waardoor het in Containers op Linux kan draaien. Dit biedt nieuwe deployment opties voor bedrijven die schaalbare cloud-gebaseerde applicaties willen ontwikkelen, gebruikmakend van de engine van Qlik Sense.
Microservices, Containers en Docker
Microservices
Het gebruik van een microservices architectuur is langzaam maar zeker de standaard aan het worden bij het Agile ontwikkelen van IT-toepassingen volgens de Continuous Delivery methode. Bij het gebruik van microservices wordt een applicatie opgebroken in kleinere, los samenwerkende onderdelen, die onderling met elkaar communiceren via een API. Elk onderdeel wordt apart ontwikkeld en kan ook separaat gedeployed worden. Met microservices kunnen onderdelen van een applicatie veel sneller ontwikkeld, getest en gedeployed worden dan bij grote monolithische applicaties. Monolithische applicaties zijn applicaties met een 3-tier software architectuur, bestaande uit een database, businesslogica en presentatielaag, waarbij de businesslogica als geheel wordt ontwikkeld en gedeployed.
Containers
Bij het deployen van microservices wordt veelal gebruik gemaakt van Containers. Een container is een ‘pakketje’, dat een applicatie bevat en alle onderdelen die de applicatie nodig heeft om te kunnen draaien. Bij containers wordt virtualisatie toegepast, net zoals bij virtuele machines (VM’s), met als doel om hardware resources efficiënter te benutten. Het verschil tussen containers en VM’s is dat bij een container wel het besturingssysteem wordt gevirtualiseerd, maar niet de hardware (zoals bij VM’s). Hierdoor zijn containers veel compacter dan VM’s, waardoor er veel meer containers op een fysieke server kunnen draaien dan VM’s. Een container is uitermate ‘portable’, omdat het alle elementen bevat om een applicatie te laten functioneren. Je kunt een container eenvoudig dupliceren, of verplaatsen en op een andere server laten draaien.
Docker
Om een container op een server te laten draaien is speciale software nodig. Docker is een van de toonaangevende bedrijven die software levert om containers te bouwen, deployen, beheren en monitoren. Veel van de Docker software is als open source code beschikbaar gesteld via GitHub. Met behulp van zogenaamde Container Orchestration tools, zoals Docker Swarm en Google Kubernetes, kunnen containers eenvoudig gedupliceerd worden en gedistribueerd worden over meerdere geclusterde servers voor load-balancing.
Alle grote cloud-aanbieders bieden tegenwoordig een Platform-as-a-Service (PAAS) omgeving waarop klanten hun eigen containers kunnen ontwikkelen, testen, deployen en monitoren. Voorbeelden van dit soort omgevingen zijn Amazon Elastic Container Service, Google Kubernetes Engine en Azure Container Service. Het grote voordeel is dat zo’n omgeving automatisch kan schalen (groeien of krimpen) wanneer het gebruik van een applicatie toeneemt of afneemt.
Wat kun je met Qlik Core?
Met alleen de QIX Engine van Qlik Core kun je niet veel. Het idee van Qlik Core is dat ontwikkelaars gebruik maken van de API’s van Qlik Core en zelf analytische applicaties ontwikkelen met behulp van open source Javascript libraries, zoals Halyard, Enigma en Picasso.
De hierboven genoemde Javascript libraries zijn door Qlik zelf ontwikkeld en zijn als open source software beschikbaar gesteld via GitHub. Qlik Core kan vanwege de microservices architectuur ingezet worden in toepassingen die tot voor kort met Qlik Sense niet mogelijk waren. Applicaties die ontwikkeld worden met Qlik Core zijn bij uitstek geschikt voor deployment naar een schaalbare cloud-omgeving van bijvoorbeeld Amazon, Google of Microsoft. Denk bijvoorbeeld aan een interactieve data-gedreven applicatie, die onderdeel is van een website voor consumenten en waarvan het aantal gebruikers naar verwachting flink gaat toenemen. Bekijk in het filmpje hieronder meer informatie over Qlik Core en de toepassingen hiervan.
Hoe zit het met licenties?
Vrijwel direct na de aankondiging op Qonnections is de bèta versie van Qlik Core vrijgegeven en beschikbaar gesteld via de website. De bèta versie van Qlik Core kan op deze website gedownload worden als een Docker image. Het image is een uitvoerbaar pakket dat alles bevat om de Qlik Core applicatie te draaien zoals de code, runtime, environment variables en configuratiebestanden. Het image kan als een Docker container gedeployed worden op een Linux omgeving. De bèta versie van Qlik Core biedt een gratis proeflicentie voor een periode van 30 dagen en 5 concurrent users. Uiteindelijk zal er een licentie moeten worden aangeschaft voor het gebruik van Qlik Core, maar het licentiemodel is nog niet bekend gemaakt. Dit zal naar verwachting later dit jaar bekend worden. Wil je meer weten over Qlik Core en zelf aan de slag met de proefversie, ga dan naar de website https://qlikcore.com om de mogelijkheden te ontdekken. Wil je direct een voorbeeld van een Qlik Core toepassing bekijken? Bekijk dan de twee demo’s hieronder.
Geschreven door Steven Samuels Brusse,
Senior Qlik consultant