Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
The multi layer qvd architecture is the good approach to empower the end-user with an accurate, trustable and reliable Single Source of Truth.
This this context binary loads are a critical part of the approach. They allow the power user to easily access to the proper Data Model while the Data Team can maintain the whole architecture and provide high data quality.
In Sense it is possible to use binary load with qvf and qvw
For example, with the desktop version:
Binary
This will binary load “My Data Model.qvf” located on the C drive under “Qlik Apps”.
With Qlik Sense Enterprise, this approach will not work. For security reason it is required in Qlik Sense Enterprise to access files using a “Folder Data Connection”
Using the previous example and assuming that we have defined a Folder Data Connection “Qlik Apps” which point to “C:\Qlik Apps” then the proper binary load script would be:
Binary [lib://Qlik Apps/My Data Model.qvf];
Therefore the question would be, “how can I export into qvf the apps of my Data Model layer when the scheduled reload is finished?”.
Actually, nothing in Sense allows you to do that but you actually not need it.
However in Sense Enterprise you can use the app uuid to reference an app. In fact the app is stored in the working directory of the sense server using a qvf named with the app's uuid (without extension).
In this example, the app “Data Model – Example” has the uuid 193dc96e-0f97-4184-aa76-1a2c08853f4f and is stored in the Sense working directory in a file named 193dc96e-0f97-4184-aa76-1a2c08853f4f
Assuming that an administrator creates a Folder Data Connection named “Apps” which points to the Working Directory of the Qlik Sense server, then the following binary load work:
Binary [lib://Apps/193dc96e-0f97-4184-aa76-1a2c08853f4f];
That works but is an unsecured solution as it gives access to all the apps for every user who have access to that particular Data Connection. This should not be used in a production environment.
Simply by using a Folder Data Connection which point directly to the app itself.
Creating one Data Connection per Data Model, provides a granularity fine enough to easily manage who have access to which Data Model. The Data Model app can then be published in a stream which is only available to the Data Team and refreshed using the standard task management, and the Data Connection gives access to the Data Model app, whiout having to give access to the app it self.
Moreover, thanks to Qlik Sense Enterprise architecture, the app will be sync automatically to all nodes of the cluster.
*Notes: My Working Directory is “D:\Apps”. As this is a “global” connection I usually remove the name of the owner from the connection name.
Binary [lib://Data Model - Example];
Thanks Vegar, there is also Index example in the Qlik Deployment Framework-Qlik Sense Exercises.pdf
Even if you use QlikView you can run the free Qlik Sense Desktop, the index commands are the same in QlikView.
CHeers
Magnus
Thanks all for this in-depth discussion!
So should we go ahead and implement Binary Load in QlikSense Enterprise as discussed above or we should avoid it ?
If you are using QDF I would recommend using the Index function instead of binary load, else you can try and see if it works for your needs. Regards