Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
ivandrago
Creator II
Creator II

What does optimized load do?

Hi, what does Optimized load do in Qlikview and why is it necessary to have this?

Thanks

Ivan

1 Solution

Accepted Solutions
Not applicable

Ivan

Do you mean what Qlikview shows while loading a table?

Optimised load is 'a very good thing' where the data needs no working on by Qlikview and just gets sucked in. I cannot remember what the rates are but I think it is upto 100 times faster. It is often far more efficient to go for an optimised load on data and then work on the internal table in the script (where clauses for example).

Regards,

Gordon

View solution in original post

6 Replies
Not applicable

Ivan

Do you mean what Qlikview shows while loading a table?

Optimised load is 'a very good thing' where the data needs no working on by Qlikview and just gets sucked in. I cannot remember what the rates are but I think it is upto 100 times faster. It is often far more efficient to go for an optimised load on data and then work on the internal table in the script (where clauses for example).

Regards,

Gordon

ivandrago
Creator II
Creator II
Author

yes what does the optimized do in qlikview terms? still not sure

johnw
Champion III
Champion III


IvanDrago wrote:
yes what does the optimized do in qlikview terms? still not sure<div></div>


I'm not sure I understand the question, but I'll try to expand on what Gordon said.

An optimized load ONLY happens on QVD files. Under certain circumstances, QlikView is able to read the needed portion of the file directly into memory without actually processing it row by row. As Gordon says, this can be MUCH faster than an unoptomized load of the same QVD. For that matter, this can even be much faster than a RESIDENT load from an existing table.

The trick to making your loads optimized is to recognize what you can and can't do. You don't have to read ALL the fields, and you can rename the fields, but you can't add any new fields, or perform any logic on the fields. The ONLY condition you can have in your WHERE statement is a single exists().

As Gordon says, the optimized load is often so much faster than an unoptimized load that it's usually worth loading that way, and only AFTER the data is in memory do you perform other manipulations on it.

For example, instead of this:

[My Table]:
LOAD // unoptimized QVD load
ID
,Status
,Cust as Customer
,if(Status='Active','Y','N') as Active?
FROM MyTable.qvd (QVD)
WHERE match(Status,'Active','On Hold')
AND wildmatch(Customer,'*Bob*','ABC *')
;

Do this:

[My Table]:
LOAD * INLINE [
Status
Active
On Hold
];
INNER JOIN ([My Table])
LOAD // optimized QVD load
ID
,Status
,Cust as Customer
FROM MyTable.qvd (QVD)
WHERE exists(Status)
;
INNER JOIN ([My Table])
LOAD
ID
,if(Status='Active','Y','N') as Active?
RESIDENT [My Table]
WHERE wildmatch(Customer,'*Bob*','ABC *')
;

prasadreddy
Contributor III
Contributor III

Hi John,

You have given graet reply about Optimized load QVD, now i understood what is Optimized load.

Thanking you...........

prasadreddy
Contributor III
Contributor III

HI John

Can you please explain briefly how does QlikView storage data internally?

Anonymous
Not applicable

Hi,

Well explained.

Thanks