Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

One loaded data model for multiple Qlik Sense apps

Hi everyone,

I'm just starting out setting up Sense Server.  I've gotten to a point where I'm comfortable that I've loaded our data so that we can start analyzing it.  Now, I'd like to be able to create a few different apps for a few different teams (e.g. Executive, Account Management, and Sales).  They all need to analyze the same data, but they'll look at it from different perspectives, so ideally I'd like to create three different apps for each of them.

The issue is, when I've loaded all our data, it takes up about 4GB in memory.  Considering each team needs the exact same data, I'd like to be able to load the data once and use it across all three apps.  I've found this discussion in the community (How to share a data model between multiple apps (.QVW) files.) which suggests that in Qlik View in 2014, it was not possible.  Is it possible in Qlik Sense 2.1?

If it's not possible to share a data model across apps, what would be the best approach to the problem of needing the same data for different teams?  As far as I can tell, my options are:

1) Just load the data again for each app.  I don't like this option because it is really, truly the exact same data for each app, so loading it three (or more) times seems superfluous.  Furthermore, if I ever want to create a new app, I'd have to be sure I have at least 4GB at the ready.  It's fine for three apps, but what happens if I want to create 10 or 20 apps?

2) Create one super-app and create per-team mashups.  This way I could load everything just once, and expose only the objects that each team would need.  I like this because all the development and data modeling would be in one place, but I don't like the fact I couldn't really make use of the Qlik Sense interface for viewing and publishing, etc.

3) Create one super-app and tell each team to only look at certain sheets.  This seems like it's the best solution so far, because then the data is only loaded once and everybody can make use of the slick Qlik interface, but it seems messy to tell people "just don't look over here".

Is there any other option?  Maybe you can hide certain sheets from certain users, and so you can create one super-app but only expose the necessary sheets to each team?

Anyhow, that's the quandary I find myself in.  Thanks for any direction you guys can provide!

Hank

8 Replies
Michael_Tarallo
Employee
Employee

‌Hi Hank

Thinking out loud here - option 3 creating one app -  then create sheets for each team -  and then securing the sheets based on security rules.  That way it looks like there own app and the rules control what is seen without having them know about the other sheets. As long as the data model is the same I think this may be a good start. Let me circulate thus in my org and I will update you.

MIke T

Qlik

Regards,
Mike Tarallo
Qlik
Not applicable
Author

Hi Mike,

I also have a question about this matter. we are currently reviewing Qlik Sense for our organization. We have quite a lot of data (~25GB of RAM, for raw data- each row is an impression on our website) which is comprised of: Cost Data, Visits Data (users in our websites) & Revenue Data. now, the Visits and Revenue are joined together great. Cost on the other hand is offered to us (from adwords, bing etc) only at day level and also doesn't have other dimensions that our Visits & Revenue have like Geo-data. This means that we can see Revenue by country for example, but not profit. So, when I offer the users, to be able to use Profit measure I cannot also have Country dimension. Now, because the data is so big I don't want to load it several times. I want to load it once and have users only be able to explore in a way that they don't get wrong data. This does not fall exactly into section access, since I do want all users to be able to see all measures and dimensions but I do not want any of them to be able to use certain dimensions with certain measures.

How can we accomplish this in QS?

Thanks

Nir

tomasz_tru
Specialist
Specialist

I think this topic is worth refreshing. RAM prices are not going down, but we're having more and more data. Is there any other options than mentioned above (1. create super-app and maybe play with security rules; 2. Create mashups based on super-app)? Does anything changed since 2015?

Tomasz

Anonymous
Not applicable
Author

I'd use QVDs for that:

1. First layers of QVDs is to get data from the data sources as is, no (or very little) transformation.

2. Second layer of QVDs - create all tables of your data model with all necessary transformation and fields naming.

3. Load the 2nd layer into the user app.  Load script is the same,front end is different.

The first two steps are done once, no matter how many applications are needed,because they use the same data model

The third step, which doesn't take much time, is one per application.  Load script is the same,front end is different.

Another approach is create one application, with the front end for the specific set of users, and binary load it into every other application.

tomasz_tru
Specialist
Specialist

It's not about data sources, but about memory used by the server whan apps are loaded. QVDs or binary load won't help.

Tomasz

Anonymous
Not applicable
Author

Tomasz,

My response was to the original post (didn't pay attention that it was old), not to your question.  I recommend you to open a separate discussion, otherwise it will be mostly unnoticed.

Regards,

Michael

tomasz_tru
Specialist
Specialist

Thank's Michael!

I didn't want to start unnecessary new thread. I've realized that I have had tested binary load only on desktop edition. Do you think it's worth to check it on server?

Tomasz

Anonymous
Not applicable
Author

Binary Loads work exactly the same as QlikSense Server as they do on Desktop.