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

Confirmation/Way out requrie require for QVD file generation?

Hi Forum/Friends

Suppose I have billions of record's in QVD file. But I want to just add some 100 records in QVD file. The process I follow as below:

qvdtab:

1. 1st load the QVD data in Memory (Resident Load)

2. (Concenate) Extracting the require/new 100 records from DataDase.

3. Store qvdtab into D:\QVD\dataqvd.qvd(qvd)

My requirement:-

Is there any may to directly insert 100 records in QVD file without parking in memory?.

Advance Thanks

SD

5 Replies
ashfaq_haseeb
Champion III
Champion III

hi,

look at direct discovery

regards

ASHFAQ

Not applicable
Author

Hi Ashfaq,

Thanks for Quik Response.

I am aware about the Direct discovery. In short it is directly co-ordinating/connecting(online) with database.

I am taking about updation of QVD.

Adv Thanks

SD

Not applicable
Author

Hi,

I guess you always have to read all records that you want to store into 1 qvd (reading your initial records, concatenate new ones then storing into qvd).

However in your case, if you always need to insert new records (no update/delete of existing record), you could store each time the new pack of records into a different qvd and choose a common name for them with the timestamp (date and/or time), say MyQvd20141006.qvd and MyQvd20141007.qvd, etc.

You can use a variable for that:

let vDate = date(today(), 'YYYYMMDD');

And after loading your new records:

store MyQvd into MyQvd$(vDate).qvd;

When you want read the qvds that start with "MyQvd":

Load * from MyQvd*.qvd(qvd);

Hope this answers your request.

Not applicable
Author

Hi JP,

Thanks for quick response. I am aware of all those stuff which u had mentioned above.

My query/question is whether I can insert changed/new 100 records directly in dataqvd.qvd without doing the process which is mentioned in 1st discussion

Adv Thanks

SD

Not applicable
Author

Shan,

I already mentioned that you need to do the process you described if you want to store in 1 qvd only.

As far as I know, there's no insert/concatenate functionality directly into a qvd, without passing by a resident load.

I also proposed an alternative if you want to avoid doing your process, by storing into different qvds which names start the same, so you can later use the wildcard character '*' when you want to load the whole data.