Qlik Sense Enterprise on Windows architecture
The Qlik Sense architecture consists of one or more nodes. Each node runs some or all of the software services that perform specific roles in a Qlik Sense site. You can distribute services across nodes for better performance and scalability. The architecture is flexible enough to suit the needs of most organizations, and can vary from small, single-server sites to large, multi-server installations.
A multi-node, distributed architecture offers the most flexibility, consisting of multiple nodes that together form a scalable and high performance site. You define a central node as the main point of control.
Sites
A Qlik Sense site is a collection of one or more nodes (servers) connected to a single repository database, and sharing a single license. Each site also contains a common set of data in the form of apps and configuration data.
Single-node sites
A single node site is the smallest site possible and consists of a single node (single server), which is also the central node of the site. It contains the Qlik Sense services, the repository database, and the file share all on a one server computer.
Multi-node sites
Multi-node sites offer more scalability options for larger organizations. In a multi-node environment, the Qlik Sense site is distributed across two or more nodes that share the same set of data and the same license key. In larger sites, you can configure one or more rim nodes to improve scalability, capacity, and resilience. All rim nodes connect to a central node.Benefits of multi-node sites include:
- Better scalability, making it easier to increase capacity
- Improved resilience and reliability
- Ability to move apps or roles to specific nodes
- Flexibility to suit customer network deployments
Nodes
A node is a computer that performs a specific role in your Qlik Sense site. You can configure each node to run or combine a different set of Qlik Sense services, so that each node performs a specific role.
Typical node roles:
- Consumer or user node - delivers apps to end users
- Scheduler node - handles all app reloads
- Proxy node - manages authentication, session handling, and load balancing
You can also configure your site for failover so that it is not dependent on the central node. In this case, if there is a failure, then one of the rim nodes in the site becomes the central node. For more information on how to configure failover, see Creating a node and Service cluster.
A typical multi-server Qlik Sense site consists of two main types of nodes:
- Central node - the minimum configuration. Every site includes a central node.
- Rim node - you can configure rim nodes to perform different roles in your site.
Each node in a Qlik Sense site can:
- Perform different roles
- Deploy a set of Qlik Sense services
- Operate independently
You assign a purpose to each node depending on what you think it will be used for:
- Production
- Development
- Both
For more information on node purpose, see: Creating a node.
Configuring Qlik Sense nodes correctly increases system resilience, reduces the need for maintenance, and increases deployment flexibility.
Storage
Qlik Sense uses the following default storage.
Repository database
A PostgreSQL database that contains the Qlik Sense app metadata, including the paths to the binary files in the file share. This data is referred to as entity data and is usually small in size. The PostgreSQL database can be installed locally or on a remote server and must be accessible to the central node.
File share
A file share is used to store app data as binary files and must be accessible to all nodes in your Qlik Sense site. The file share stores application objects, such as visualizations, dimensions and measures. Apps are stored in the proprietary QVF portable format, for example <App name>.qvf. These files are referred to as binary data and the data model element of the files can be large in size.
You can create a file share either on the same server as the central node or on another server.
Clients
You use Qlik Sense clients to communicate and interact with Qlik Sense sites.
Hub
The hub is where you find all the apps you have access rights to. It runs in a web browser. You use the hub to access and publish apps in Qlik Sense. Hub traffic only travels between the node (delivering apps) and the hub client unless the site is on a single node.
Qlik Management Console
You use the Qlik Management Console (QMC) to configure and administer a Qlik Sense site.
The QMC only communicates logically with the central node. This means that:
- The QMC always uses the Qlik Sense Proxy Service (QPS) on the central node.
- For maximum performance within a multi-node site, you should not allow any user traffic on the central node.
Apps
A Qlik Sense app is a collection of reusable data items (measures, dimensions, and visualizations), sheets, and stories. It is a self-contained entity that includes the data you want to analyze in a structured data model.