Book Image

QlikView Server and Publisher

By : Stephen Redmond
Book Image

QlikView Server and Publisher

By: Stephen Redmond

Overview of this book

Table of Contents (15 chapters)
QlikView Server and Publisher
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Supported Windows Servers


QlikView is a Windows-based technology. Up to Version 11.2 SR4, there have been both 32-bit and 64-bit versions of QlikView Server (and Publisher).

These versions can be installed on the following Windows Server versions:

  • Windows Server 2003, both 32-bit and 64-bit

  • Windows Server 2003 R2, both 32-bit and 64-bit

  • Windows Server 2008, both 32-bit and 64-bit

  • Windows Server 2008 R2 (64-bit only)

For purposes of testing and development only, QlikView Server 32-bit or 64-bit can also be installed on the following professional (not home edition) desktop operating systems:

  • Windows XP, both 32-bit (SP3) and 64-bit (SP2)

  • Windows Vista, both 32-bit and 64-bit

  • Windows 7, both 32-bit and 64-bit

Essentially, this is the list of operating systems that support the Microsoft .NET Framework 4.0, which is required by QlikView Server.

Since version 11.2 SR2, an additional installation is available specifically for Windows 2012. This version will also install on Windows 8, for test and development purposes only.

QlikView Server will install on a fairly barebones Windows Server. The only additional requirement is an installation of the Microsoft .NET Framework—v4 for QlikView v11 and v11.2. If the .NET Framework is not installed when you start the QlikView Server installation, the QlikView installer will attempt to start the download and installation process for it.

Of course, this means that if the server is not connected to the Internet, the download will fail.

The installation will automatically create the QVPR (this is a legacy from the QlikView Publisher Repository, but it is not just about publisher any longer), an XML file-based storage of server settings managed by the QlikView Management service. Because these XML files are potentially corruptible on the filesystem, some administrators would prefer to have them stored in a more robust database. There is an option in the QlikView Management Console, to migrate the QVPR to SQL Server. This SQL Server could be running on the same server as the QlikView services but it is not recommended, as it will consume resources that might be needed by QlikView. It is worth noting that if you keep using the XML repository, the XML files will be backed up to ZIP files on either a daily basis or on a schedule that you can configure.

Other Windows options that you need to consider

There are a number of other Windows options that you need to consider before deploying QlikView Server.

IIS

To run the QlikView AccessPoint, QlikView Server has its own web server service—QlikView Web Service/Settings Service (QVWS). However, it will also deploy on IIS v6, v7, or v8 (on Windows 8/2012). This may be the preferred option for many IT departments, especially if they have existing IIS management experience or need to easily manage security certificates.

Authentication

The default security model uses either NTLM or Kerberos to authorize either an Active Directory or local SAM user. This default is the only option available for the Small Business Edition of QlikView Server. Other authentication mechanisms are possible with Enterprise QlikView Server (refer to Chapter 7, Alternative Authentication and Authorization Methods), so you will need to consider security.

Browser

The QlikView Management Console (QMC) is a web-based tool that you will need a "modern" web browser to work with—so IE6 won't work. This doesn't need to be on the server, but it is useful to have it there. The following browsers are suitable:

Browser

Minimum Version

Internet Explorer

7

Google Chrome

18

Mozilla Firefox

12

Apple Safari

5

I have used all of these browsers and although I have a personal preference for Google Chrome, all of them should work fine. You will have to watch out if using IE on your server because the enhanced security option is often enabled. In these circumstances, I have sometimes found myself having to download Firefox (because IE blocks the Chrome download!)

Internet Protocol

The Internet Protocol is not something that you might consider normally because it is set by default in Windows Server, but some organizations may have IP turned off. QlikView services talk to each other using the HTTP protocol, so it is important that IP is available—either IPv4 or IPv6.

Print spooler service

The print spooler service is necessary for QlikView to generate reports for web-based users. In fact, if it is disabled, the PDF-XChange drivers that QlikView uses will not even install. Unfortunately, it is common for IT departments to disable this service as part of Group Policy. Check that this is enabled before installation.

Windows hardware considerations

Windows Servers have their own hardware requirements but going with a minimum option will not work for QlikView. QlikView Server is a CPU- and memory-intensive application. You will need to have enough of both to be able to handle your data and your user requirements (refer to the Ready reckoner section).

Because QlikView Server is so hardware intensive, it is rarely appropriate to host the QlikView Server on a server that will also host other services such as Microsoft SQL Server, Microsoft Exchange Server, and so on. By default, QlikView Server will consume up to 90 percent of the available physical RAM on the server and that doesn't leave much for other services.

Memory

It is worth remembering that a 32-bit Windows process can only access a maximum of 2 GB of memory. So, if you are running a 32-bit QlikView Server, there would be little point in having more than 4 GB of memory. On the other hand, if you are running 64-bit Windows, 4 GB would be an absolute minimum! I wouldn't normally recommend a 32-bit server for QlikView. Since Windows 2008 R2, there is no longer a 32-bit version of Windows Server.

There is no hard and fast rule on the amount of memory that you will need for your implementation, as it is dependent on the amount of data that you will be loading, the number of applications that will be used, the number of users who will be accessing those applications, and how often they will be accessing them. It is also worth considering that the amount of data and the number of applications will likely increase over time.

CPU

QlikView loads the data from the documents into memory, but every time a user makes a different selection, all of the data needs to be recalculated by QlikView's chart engine. You will need enough CPU power to be able to process these calculations in good time, for both user experience and to avoid time-outs. For most calculations, QlikView Server scales linearly across CPU cores. If you double the number of cores that you have, the calculations will mostly be calculated twice as fast.

There is a memory partitioning scheme known as NUMA, which allocates blocks of memory to a particular processor on the basis that this processor can access that area of memory quicker than areas assigned to other processors. Because QlikView applications can be in larger blocks of memory, and because the calculations execute across all processors, this scheme can actually end up degrading performance of the QlikView Server. Therefore, non-NUMA or Interleaved memory partitioning schemes should be used.

Ready reckoner

The following table can be used as a very rough estimate for the size of server that you might need. When considering the number of Fact rows (lowest level transactions) and number of users, you should consider all of the expected applications and allow an increase over time.

It is very important to remember that every dataset is different and there are many things that make up the size of a QlikView application. The best approach is to use the following table as a rough estimate but also to add the ability to increase if necessary:

Number of "Fact" rows

Number of users (Concurrent)

Servers

CPU cores

Memory

10,000,000

20 (5)

1

8

8 GB

10,000,000

100 (20)

1

16

16 GB

50,000,000

20 (5)

1

16

32 GB

100,000,000

100 (20)

1

16

64 GB

800,000,000

200 (50)

1

16

128 GB

800,000,000

400 (100)

1

24

256 GB

800,000,000

1000 (200)

2

24

256 GB

2,000,000,000

4000 (400)

4

24

512 GB

Virtualization

QlikView Server works well on a VM. For many years now, VMWare has been "officially" supported, but I have also implemented it on Citrix XEN. The QlikView Demo servers are hosted on Amazon EC2 servers (a variation of XEN). Essentially, QlikView Server is a Windows application, and so will run on Windows, including virtualized servers.

Having said that, we need to be aware that QlikView is an intensive user of the hardware on the server. There will be a performance hit on a virtual server because of the overhead of the hypervisor. The nature of QlikView Server's use of hardware is that it tends to require memory and CPU in intensive bursts. This does not work well with virtual servers with any type of shared resource or ballooning. If there is any significant latency when QlikView Server tries to access resources, the service can crash. For this reason, resources assigned to a QlikView Server should be reserved for that server.