ARCH101 - Overview of Qlik Sense Product Architecture 1. Introduction ................................................................................................................................. 2 2. Words & Concepts ....................................................................................................................... 5 3. Deployment Options ................................................................................................................. 17 4. Use Cases ................................................................................................................................... 28 5. Summary.................................................................................................................................... 34 1 1. Introduction 1.1 Introduction Script: Click the next arrow when you’re ready to begin. 1.2 Qlik's Product Architecture Script: Product architecture includes concepts like sites, nodes, storage, clients, cloud, microservices, MultiCloud, and more. Being aware of and understanding these different technology pieces means you are able to describe all of these components at a high level and explain them to others. With knowledge of Qlik’s product architecture, you can have better conversations with customers. Rather than going through an exhaustive display of features and functions, you want to be able to introduce the right solution to the right customer and use all the terminology related to our products correctly. The goal of this course is that by the time you complete it, you can begin having reasonable and knowledgeable conversations about our product architecture, which can help you to: accurately answer customer questions introduce appropriate solutions to customers effectively leverage the skills of people in pre-sales and consulting 2 1.3 Qlik's Product Architecture Script: If you have a foundational knowledge of Qlik’s product architecture, you are able to keep a conversation going with a customer or prospect. Say, for example, you are working on a large deal, and you need to communicate how exactly Qlik can deliver value to the organization. The champion you’ve identified within the organization says that they struggle with scaling up their current solution. Do you know enough about Qlik’s architecture to keep the conversation going? This course will give you some brief scenarios to get you started. 1.4 Architecture and Multi-Cloud Script: You may have already seen a course on the messaging and value of multi-cloud. That course looked at some concepts, terminology, and the 3 message pillars Qlik has for Multi-cloud: Value of ongoing choice Optimized computing Seamless experience across infrastructure This module is intended to complement that messaging course, so you have the basic understanding of architecture you need to build a value proposition, and have the right conversation at the right time. For more information about the message and applying it, please visit that course. 3 1.5 Recognizing the right deployment option Script: When selling Qlik products and services, you depend on pre-sales to make specific, technical recommendations, so depending on your role, you may never recommend a specific deployment option. However, it is helpful to recognize which deployment options might address a customer’s challenges. Get to know the terminology, the components, and how they work together, and with pre-sales and consulting services, you can craft more successful sales deals that address customer needs This course is divided into a few sections: Words & Concepts introduces you to terms related to Qlik architecture and the product components you need to know about for different deployment options. Deployment Options will walk you through the basic concepts of how different components fit together to address different solutions. Use Cases will present you with a couple of business examples so you can see which deployment option might be the best one based on the scenario. 4 2. Words & Concepts 2.1 Words and Concepts Script: In order to understand how the Qlik Sense architecture works, it is helpful to be familiar with the related terminology, so you can use it correctly while positioning Qlik as a solution. When it comes to architectural concepts, our products and services interact with different components as part of deployment options. 2.2 What do you need to know about architecture? Script: When we talk about Qlik’s architecture, we are referring to the various components, their structure, their relationships, and how they interact with each other. Components can include things like Qlik products, such as Qlik Sense Enterprise for Windows, NPrinting, and DataMarket. Services, provided by Qlik or other organizations can also make up the components of Qlik’s architecture. Qlik’s product architecture includes things such as engines, proxies and clients. The deployment architecture can include things such as Qlik Cloud Services, Amazon Web Services, or Microsoft Azure. Choosing components and their environment are all decisions that become an important part of an analytics solution. As with designing a building, you want to think about the current and future needs like size, location or environment, number of people, how it will be used, and other considerations. You wouldn’t want to build a house with 7 bedrooms and no kitchen, for example. Knowing the basic concepts of Qlik’s product and deployment architectures helps you have a conversation about what kind of “building” a customer needs for their analytics. 5 2.3 Terms you should know Script: Let’s look at some helpful terminology. These are terms you need to know and use accurately when looking at different Qlik Sense deployment options. SaaS Software as a Service, or SaaS, is a method for delivering software. A software vendor hosts and maintains the software, and the users access it via the internet. The customer and its users do not have to manage the hardware to host the software, or the software’s databases or code. Examples include Salesforce.com, Netflix, and Qlik Sense Cloud Business. public cloud A public cloud is a cloud environment that is a cloud solution that is owned and operated by a third-party provider. A public cloud can include resources like servers, storage, hardware, software, and network devices. In a public cloud, you share these resources with other organizations, or “tenants.” Microsoft Azure and Amazon Web Services both offer public cloud solutions. 6 private cloud A private cloud may also be referred to as an enterprise cloud. All of the resources of a private cloud — hardware, software, storage, etc. — are used exclusively by an organization, not shared. A private cloud can reside on an intranet, or hosted data center. It can be on-site, or hosted by a third-party provider. A private cloud offers more security than a public cloud, but it can also be more expensive and require more technical resources. Rackspace is an example of a vendor that offers private cloud solutions. Multi-Cloud Multi-Cloud is Qlik’s answer to hybrid cloud solutions. A hybrid cloud solution can blend public and private clouds. Hybrid cloud solutions are often more complex than a public- or private-only cloud solution. An example of a hybrid cloud solution is storing confidential information in an on-premises data center, but making other content available to customers via a public cloud. For example, a Qlik customer might use Qlik Sense for Kubernetes on a public cloud for some of its apps, and a private cloud for an HR-based app. Linux Containers Linux containers are a package of technologies, similar to a virtual machine, that include all the necessary configuration files and other components needed to run an application or service. A container is self-contained and isolated from the rest of a system. On one physical machine, you might have many containers. This allows you to scale software components as needed. For example, in Qlik Sense Enterprise for Kubernetes, the Qlik Sense client runs in its own container, as does the engine, infrastructure components and tenant management. You might need to increase the amount of containers, including engine containers, based on demand, but not the amount of authentication containers. 7 containers vs. Linux Containers vs. Linux: In sales conversations, it’s important to know that Qlik Sense can be deployed via Linux containers, but you need to specify that it runs in containers that run on Linux. While Qlik Sense can run on Linux containers, we don’t sell “Qlik Sense Linux” nor do we deploy Qlik Sense on-premises using Linux. We use Kubernetes for our container orchestration, a cloud-native technology. embedded When we place analytics, dashboards, or visualizations for a specific audience in an application, we refer to them as embedded. Embedded analytics can be found on websites, intranets, extranets, and enterprise applications. An example of embedded analytics is the Qlik Sales 360 app within our Salesforce.com site. scalable multi-node architecture A Qlik Sense Enterprise for Windows site can be distributed across two or more nodes (servers) that all share the same set of data. A site with multiple nodes always has one central node, with connecting rim nodes. Different apps, roles, or services can be moved to different nodes as needed. Multi-node architecture can also be sized according to a customer’s needs. IoT The Internet of Things, or IoT, is a network of physical objects — devices, vehicles, buildings and other items - that can collect and exchange data without requiring human interaction. You can learn more about how to position Qlik for IoT on QED, with the course IOT101. advanced analytics According to Gartner, advanced analytics is “the autonomous or semi-autonomous examination of data or content using sophisticated techniques and tools, typically beyond those of 8 traditional business intelligence (BI), to discover deeper insights, make predictions, or generate recommendations.” Examples of advanced analytic techniques include network and cluster analysis, multivariate statistics, and graph analysis. 9 2.4 The basic Qlik Sense architecture Script: The most basic Qlik Sense architecture installed on Windows consists of a Qlik Sense site that is made up of one or more nodes. A node is a computer or server that performs a specific role. The role could be something like delivering apps to the people that consume them, or authenticating users. Qlik Sense architecture also has default storage, which is a database and a file share. Finally, basic Qlik Sense architecture also includes clients. Qlik Sense clients communicate and interact with Qlik Sense sites. A client could be an app, or a hub where a user accesses and publishes apps, or the Qlik Management Console, where an administrator configures a Qlik Sense site. site and node The Qlik Sense Enterprise for Windows architecture consists of one or more nodes. A Qlik Sense site is a collection of one or more nodes (servers) connected to a single repository database. The architecture of a solution could be a small, single-node site, or multiple, distributed nodes, depending on what the needs are. storage Qlik Sense architecture uses the following default storage: a database and a file share. The database can be installed locally or remotely. web browser You can connect to Qlik Sense with a web browser to communicate and interact with Qlik Sense sites. This includes the Qlik Sense client, the hub, and the Qlik Management Console (QMC). 10 2.5 The basic Qlik Sense architecture Script: When we refer to the cloud, we are usually referring to any computer, software application, or piece of technology that we can access through a network connection or the internet. In the context of Qlik Sense architecture, the cloud can fit into the architecture in a number of ways, even in this very basic architecture illustrated here. A Qlik Sense server can be installed on-premises, but it can also be installed in the cloud. For example, a Qlik Sense server could be installed on Amazon Web Services. Qlik Sense Enterprise is “single geo” meaning the Qlik Sense Enterprise servers can only be in one place. However, multi-cloud allows you to span your Qlik Sense installation across multiple cloud environments. 2.6 Multi-cloud architecture Script: For example, let’s look at multi-cloud architecture. In a multi-cloud architecture, Qlik Sense Enterprise for Windows is installed on-premise, or in a public or private cloud. This is where content creation, data connectivity, and security provisioning is managed. This installation can connect to Qlik Cloud Services, Qlik Sense Enterprise for Kubernetes, or both. The Cloud Hub Client is the browser-based analytics portal and client for consumers. Once you have a Windows deployment, you can expand that deployment into the cloud based on a customer’s needs. Multi-cloud does not mandate that a customer have a use case that combines on-premise and Software as a Service: it is really about choice. The aim is to allow a customer to run Qlik Sense all in SaaS, all on premise, all in a private cloud, or use any combination of these. 11 Container Deployment Cluster nodes refer to the underlying hardware running Kubernetes. Within Kubernetes run containers. You might see security containers for authentication, client containers for managing user information, and engine containers for load balancing. A database handles security, licensing, and configuration, and there are data volumes for Qlik Sense applications, handled with Kubernetes technology. This architecture uses managed or private container deployment like AWS or Microsoft Azure. This is one example of Qlik Sense Enterprise for Kubernetes. Qlik Cloud Services Qlik Cloud Services is SaaS that fully manages the cloud deployment in a multi-cloud architecture. This architecture uses the same technology as Qlik Sense Enterprise for Kubernetes, but it is managed by Qlik. Note that there is still a requirement for a customer-managed Windows environment that connects to Qlik Cloud Services. 2.7 Cloud-based architecture Script: Finally, there is a fully cloud-based architecture. This deployment is fully managed for the customer. An example of this is Qlik Sense Cloud Business. With Qlik Sense Cloud Business, all of the software and infrastructure is managed by Qlik. 12 2.8 Qlik products and the Qlik Sense architecture QSCB Script: Qlik Sense Cloud Business is a Software as a Service, or SaaS offering of Qlik Sense deployed in the cloud. Qlik Sense Cloud Business is fully hosted and managed by Qlik. QSCB is not part of multi-cloud. It is a standalone offering typically aimed at small user groups QAP Script: The Qlik Analytics Platform, QAP, describes the APIs and SDKs on which the Qlik Sense products are built. These APIs also allow web developers to build their own custom interfaces to the product. QAP does not come with the hub, a Qlik Sense client, which is one of the main differences between QAP and Qlik Sense Enterprise. 13 Qlik Core Script: Qlik Core is a separate product that includes just the engine distributed as a Linux container. It can be used to build custom interfaces that can leverage the engine and its APIs. It can be deployed anywhere from the cloud to the edge, such as IOT devices. Qlik Cloud Services Script: Qlik Cloud Services use Linux containers. Developing and reloading and editing take place using Windows. This is the standard Qlik Sense Enterprise deployment, which connects to an external, cloud-based deployment. A policy defines content distribution, and the content is consumed in the cloud. Qlik manages this cloud service for customers. This is the same technology as Qlik Sense Enterprise for Kubernetes: the only difference is Qlik manages the cloud portion of the deployment and handles things like uptime and scaling. Qlik will host apps up to 500MB with Qlik Cloud Services. QSE for Windows Script: Qlik Sense Enterprise for Windows is the onpremise, server-based version we have been selling since Qlik Sense was released. It can be part of a fully on-premise deployment, or it can be deployed in AWS or Azure and managed by the customer, similar to an on-premise installation. 14 QSE for Kubernetes Script: Qlik Sense Enterprise for Kubernetes uses Linux containers, just like Qlik Cloud Services do. Developing and reloading and editing takes place using Windows. This is the standard Qlik Sense Enterprise deployment, which connects to an external, cloud-based deployment, that is managed by the customer. A policy defines content distribution, and the content is consumed in the cloud. The customer chooses whether it needs a public cloud or private cloud and has total control over the cloud deployment. DataMarket Script: DataMarket is a data-as-a-service offering. When Qlik DataMarket is part of the architecture, the data service provides external data that lives in the cloud. DataMarket connects to Qlik Sense with a Connector. Qlik Connectors Script: Qlik Connectors are technology that link data to the Qlik Analytics Platform or Qlik Sense Enterprise for Windows. The data can be located on-premises, or in the cloud. Data can be in different formats, including databases, apps, websites, spreadsheets, and big data stores. Connectors integrate external data into a Qlik Sense deployment whether it is on-premises, fully in the cloud, or using a multi-cloud solution. 15 NPrinting Script: NPrinting architecture includes the NPrinting Server, Engine, and Designer. The NPrinting server includes several services such as the scheduler service and repository. The NPrinting server should not be installed on the same computer (or node) as Qlik Sense in a production environment. Once NPrinting is installed, it uses Qlik Sense and/or QlikView apps as its data sources. GeoAnalytics Script: GeoAnalytics is a set of extensions and connectors that connect back to a GeoAnalytics server. The server can be installed on-premise, or connect to a version that is hosted by Qlik. GeoAnalytics includes a connector that can gather and combine data from an external data source. Like NPrinting, the GeoAnalytics server should not be installed on the same computer (or node) as Qlik Sense in a production environment. 2.9 Putting the pieces together Script: How Qlik Sense is deployed for a customer can depend on a lot of different factors. Security needs, on-premise technology, IT and developer expertise, number of users, the need to scale up and down as business needs change, or embedding analytics for customers and partners could all influence the Qlik Sense architecture. Deployment options will help you put together and understand the basic architectural components required by different business needs. The use cases will give you a scenario and ask you to choose a good deployment option for the use case. Again, in the field, this is the role of Qlik Consulting and pre-sales. The exercise is designed to help you get a better overall understanding of the Qlik Sense architecture. 16 3. Deployment Options 3.1 Deployment Scenario 1 Feedback: A cloud deployment is the best option for this business. The small number of users means Qlik Sense Cloud Business is a good choice. 17 business need 3.2 Deployment Scenario 1: data Feedback: The Excel and csv files are considered on-premise data that the 4 users will manipulate and add to their Qlik Sense apps. DataMarket is external, cloud-based, data-as-a-service. 18 3.3 Deployment Scenario 1: architecture Script: In this scenario, the Qlik Sense deployment is fully cloud-based, though the licensed users do use some on-premise data files in their apps. 19 3.4 Deployment Scenario 2 Feedback: With Qlik Sense Enterprise for Windows, the Qlik Sense server can be on-premises, on the customer’s own network, or it can be deployed in the cloud, using a service like Azure or AWS. For this scenario, we will assume an on-premise deployment, as the healthcare provider has strict rules about managing data on premises. business need 20 3.5 Deployment Scenario 2: architecture Script: This customer deployed Qlik Sense Enterprise for Windows, on their own internal network. The apps and QVF files are on the Qlik Sense server. The on-premise data sources have an automated reload, and the Qlik Sense data architect imports and exports apps, and performs server administration and maintenance. The business analysts interact with the apps and create stories, and the clinicians consume the analytics and stories from the healthcare system’s intranet site. 21 3.6 Deployment Scenario 3 Feedback: For scalability and speed, this customer can connect to an external, cloud-based deployment using Qlik Sense Cloud Services, or Qlik Sense Enterprise for Kubernetes. business need 3.7 Deployment Scenario 3 22 Script: In this scenario, the customer already has Qlik Sense Enterprise on premises, which they can use for development. To address their business needs and scalability, Qlik Sense can be consumed in a cloud infrastructure. The on-premise development defines and updates the policies that govern how the content is distributed. This customer can choose to use Qlik Cloud Services, or Qlik Sense Enterprise for Kubernetes as their cloud-based deployment. There are some differences in these deployments. 3.8 Deployment Scenario 3 Script: If the customer chooses Qlik Cloud Services, Qlik will manage the deployment, scaling and up time. This could be a good option if the customer does not have the IT skills needed in-house for the Linux containers used in a cloud deployment, and their apps are less than 500MB. 23 3.9 Deployment Scenario 3 Script: If the customer chooses Qlik Sense Enterprise for Kubernetes, they will manage the deployment and scaling. Just like Qlik Cloud Services, the deployment will be done using Linux containers, but Qlik will not be responsible for the cloud-based portion of the customer’s installation. This would be a good option for the customer if they have the IT skills to support a cloud deployment, they have large apps, or they have a third-party vendor to manage the cloud deployment for them, like a Qlik Managed Services Partner. 3.10 Deployment Scenario 3 24 diagram feedback 25 3.11 Multi-Cloud Deployment Script: Hover/select components to learn more about how they work in this multi-cloud architecture. public cloud: AWS With a multi-cloud solution, Qlik Sense Enterprise for Kubernetes is deployed using Linux containers. A customer can opt for a public or private cloud, based on their needs. A public cloud can be housed on Amazon AWS, Microsoft Azure, and other similar cloud services. private cloud: Azure With a multi-cloud solution, Qlik Sense Enterprise for Kubernetes is deployed using Linux containers. A customer can opt for a public or private cloud, based on their needs. A private cloud may be chosen for the added security features a customer can implement. Qlik Cloud Services Qlik Cloud Services is the same technology as Qlik Sense Enterprise for Kubernetes. Qlik manages this deployment for the customer. Qlik uses Linux containers in its Qlik Cloud Services deployments. Linux containers take advantage of Kubernetes and Docker. Docker is used to run the containers. Kubernetes is 26 a container technology that automates deployment, scaling and operations. QSE for Windows Qlik Sense Enterprise for Windows is installed onpremises in a multi-cloud solution. It gives you options that enable you to connect your Windows deployment to external cloud-based deployments. Cloud-based deployments can include Qlik Cloud Services or Qlik Sense Enterprise for Kubernetes. policy based content distribution The customer defines and updates the policies that govern how the content is distributed. The policy can govern where the apps are deployed and who has access to which apps. data This customer has on-premise databases, DataMarket, and external cloud-based data. Data loads and refreshes are done on-premises, on the Windows side. 27 4. Use Cases 4.1 Pick the best option for this use case: Script: Pick an option for this use case to see feedback. 28 Qlik Cloud Services Qlik Cloud Services is not the best option for this group, since it is a small deployment. Qlik Sense Cloud Basic or Qlik Sense Cloud Business could meet their needs, and since they are already using a number of Microsoft services, deploying Qlik Sense Enterprise on Microsoft Azure also makes sense. Azure Deploying Qlik Sense Enterprise on Microsoft Azure makes sense for this customer since they are already using Microsoft for a number of services that Azure provides. on premise On-premise Qlik Sense Enterprise is not a good option for this customer, as they want their analytics to be fully in the cloud. 29 4.2 Pick the best option for this use case: Script: Pick an option for this use case to see feedback. 30 Qlik Cloud Services Since the customer already has an on-premise installation, they could use Qlik Cloud Services, which could manage their need for scaling, and provide SaaS that their IT can’t currently support. Azure Deploying Qlik Sense Enterprise on Microsoft Azure is not a good solution for this customer, as they already have Qlik Sense Enterprise installed on premises. Multi-Cloud A multi-cloud deployment is not currently a good solution for this customer, as they would need more IT expertise in-house, and budget associated with the maintenance and scaling of Kubernetes. 31 4.3 Pick the best option for this use case: Script: Pick an option for this use case to see feedback. 32 Qlik Cloud Services Qlik Cloud Services could be part of a multi-cloud solution for this customer, but since they are already managing their own services on Azure and their intranet, they may not need Qlik to manage cloud services. QAP This company doesn’t do much of its own development, so Qlik Analytics Platform may not suit them. It also doesn’t address their need to push analytics out to a lot of users. Multi-Cloud A multi-cloud deployment can handle this customer’s deployment, since they can use Linux containers on Azure and their secure, private intranet. Multi-cloud will handle the hybrid cloud types, and the user volume. 33 5. Summary 5.1 To summarize… Script: A basic understanding of Qlik Sense architecture can help you to have knowledgeable conversations with your customers, and accurately answer their questions. Knowing how components of Qlik Sense architecture work together will help you sell the right solutions to customers, and more effectively collaborate with pre-sales and consulting. 5.2 Categorize the components: Script: Components of the Qlik Sense architecture include products and deployment options. Products might include: Qlik Analytics Platform Qlik Sense Cloud Business Qlik Cloud Services Qlik Sense Enterprise DataMarket Qlik Connectors NPrinting GeoAnalytics … or any component you might price and quote for a customer. These products then become parts of a deployment option. The deployment options include several different architectural solutions: public or private cloud; on-premise; multi-cloud; 34 Qlik Cloud Services, which is the cloud environment Qlik hosts and runs for customers. How and when these deployment options are used depend on the solution needed. 5.3 On premise deployments: Script: On-premise deployments include Qlik Sense Desktop, and fully on-premise deployments of Qlik Sense Enterprise for Windows. The Qlik Sense nodes (servers), default storage and database are all on-premises. These deployments may use cloud-based data in their apps, dashboards, and mash-ups, but the Qlik Sense software is on premises. 5.4 Cloud-based deployments: Script: Fully cloud-based deployments include Qlik Sense Cloud Basic Qlik Sense Cloud Business and Qlik Sense Enterprise, deployed in the cloud, which uses Linux containers. 5.5 Hybrid deployments: Script: In a hybrid deployment, Qlik Sense Enterprise for Windows is deployed on premises, and it connects to a cloud-based deployment of Qlik Sense. This can be managed by Qlik, as with Qlik Cloud Services, the customer can opt to manage their 35 own public or private cloud using Qlik Sense Enterprise for Kubernetes, or a combination of cloud deployments can be used. These cloud options all use the same technology: Linux containers. Linux containers take advantage of Kubernetes and Docker. Docker is used to run the containers and Kubernetes is a container technology that automates deployment, scaling and operations. 36