Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

If Data Type or Length changed in Source DB, How QVD file will react in case of Incremental Load?

Hi Guys,

I have been asked this question and I have not yet tested so not sure about answers and so thought of asking in Community.

If Data Type or Length changed in Source DB, How QVD file will react in case of Incremental Load?

Example: I have a fact table in SQL DB and I am l loading into QVD as incremental based on Transaction TIMESTAMPS.

Case-1

I have column FEEDBACK in my fact table and Datatype was Varchar(30) and now it has been changed to Varchar(100). So tomorrow I will receive data , will have length 100 and It has to concatenate with data length 30. How QVD is going to store this and How much size will increase?

Case-2

I have column FEEDBACK in my fact table and Datatype was NVarchar and now it has been changed to Varchar(100) [Note: Old data corrected and stored as Varchar in Source DB]. So tomorrow I will receive data , will have Varchar(100) and It has to concatenate with data NVarchar data (Old Data, do not want to correct it as Varchar). How QVD is going to store this and How much size will increase?

Please help.

2 Replies
Not applicable
Author

As QlikView does have only numeric and character data types, in both the cases the data will be stored as usual and size changes will depend on the length of data you receive. I guess the field may require up to 3 times more memory for case1.

I need a clarification. If the data type of the field got changed, did it also change the last modified time stamp? If yes, did you consider how to load only the new/updated data?

Regards,

KKR

quwok
Creator III
Creator III

You'll not notice a difference, the concept of types in QlikView is different to the ones in your db.

1.

QlikView does not store it as varchar(30) or varchar(100) but allocates the space to the size of the value. For example, if the value is 20 characters long, QlikView will only allocate the 20 characters, if you now add a record with 90 characters, it should simply add the 90 characters value to the list. There is no restriction to 30 characters on that column. If we are looking at the same data, the size of the QVD will remain the same, it does not change just by changing the column type from varchar(x) to varchar(y).

2.

To QlikView, they are all simply text values. It will just work without issues. And again, the size will depend on the amount of data not the type of data.