Desktop productivity for business analysts and programmers

why column length getting double while pulling the data from teradata to SAS using in SAS EG

Reply
New Contributor
Posts: 3

why column length getting double while pulling the data from teradata to SAS using in SAS EG

Hi All,

 

I' trying to pull the data from teradata using Proc SQL procedure. the column lengths are getting double after reading the data into SAS. Example: Name having 20 length in teradata is getting double 40 in sas datasest.

 

In one of my dataset having 63K length in terradata(620 coulmns) and I'm not able to read this Teradata table into sas because all the var char types are getting duble size and then it is exeding the teradata coulmn 64K length limataion. then i spilt the coulmns 100 for wach table and merging to one SAS dataset. in this cases also dataset size is coming upto 50GB. i have already used compress=yes option. I want to reduce the size atleast

 

 

Please kindly advise me how to solve this issue.

 

 

Thanks in advance!

Ramakrishna

ramakrishna4it@gmail.com

 

Esteemed Advisor
Posts: 5,198

Re: why column length getting double while pulling the data from teradata to SAS using in SAS EG

First, 620 columns! That's crazy data modelling. How are the users intended to use that? What kind of data is it?

I would encourage the TD DBA to reorganize this data as a starting point.

Are you sure that this is not a view?

About the doubling of sizes, I can only guess. Perhaps TD is set to an encoding that require double byes in SAS? Carefully investigate TD data types, encoding etc, and compare with your SAS installation/configuration.

Then one great thing about TD and similar, it (should at least) have lot of processing capabilities. So try to query your data so as much as possible are executed in TD, and return only results that needs to be processed by pure SAS logic.

Data never sleeps
Trusted Advisor
Posts: 1,056

Re: why column length getting double while pulling the data from teradata to SAS using in SAS EG

Could it be that the field is stored in Teradata using some characteristics for character set that SAS needs two bytes for each character? Some kind of Unicode setting?

 

Tom

Ask a Question
Discussion stats
  • 2 replies
  • 275 views
  • 0 likes
  • 3 in conversation