BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
msblond
Calcite | Level 5

Hello,

 

I am new to the SAS community and I currently have a surprising problem …

 

When I run the program (.sas file) manually, the output tables (.sas7bdat) weigh :

  • tickets_maxxing_détails.sas7bdat = 15 Go
  • tickets_fid_détails.sas7bdat = 9 Go

 

When the program (.sas file) is started automatically with a batch (ControlM), the output tables (.sas7bdat) weigh :

  • tickets_maxxing_détails.sas7bdat = 44 Go
  • tickets_fid_détails.sas7bdat = 21 Go

I ran the tests twice and I get the same results

How is it possible ? Would there be a compression option to enable on the server ?

 

I need help from experts because I am a bit lost …

 

Marie-Sophie

1 ACCEPTED SOLUTION

Accepted Solutions
Kurt_Bremser
Super User

First of all, I'm not a friend of using the global compress option, as datasets consisting solely or mainly of numeric data do not profit from compression; instead, the physical file size is often increased.

So I advise you look out for the location where the compress option is set for your interactive process and remove it. Instead use the individual option on datasets when they are created, then inspect the log if compressing makes sense (considerable reduction of phyiscal file size), and remove the compress=yes option if the effect is negligible or counter-productive.

Code written like that will then also compress in batch mode where compression is desired.

 

Also see Maxim 31, especially the last sentence.

View solution in original post

4 REPLIES 4
andreas_lds
Jade | Level 19

Difficult to help without knowing what happens in the program. The difference could be caused by different config-files. Maybe the compress-option is active in batch, but not in scheduled mode.

msblond
Calcite | Level 5

I just read the logs of the two program exécutions.

The .sas7bat files are compressed when the program is started manually.

 

here is the log of manual execution and the log of the batch execution.

Data set is compressed when the program is started manually.

Is there an option to compress the data set when the program is started with a batch ?

 

Thanks for your help,

 

log_manual.pnglog_batch.jpg

 

 

Kurt_Bremser
Super User

First of all, I'm not a friend of using the global compress option, as datasets consisting solely or mainly of numeric data do not profit from compression; instead, the physical file size is often increased.

So I advise you look out for the location where the compress option is set for your interactive process and remove it. Instead use the individual option on datasets when they are created, then inspect the log if compressing makes sense (considerable reduction of phyiscal file size), and remove the compress=yes option if the effect is negligible or counter-productive.

Code written like that will then also compress in batch mode where compression is desired.

 

Also see Maxim 31, especially the last sentence.

Kurt_Bremser
Super User

Files are stored as changing electrons, so their weight should be negligible 😉

 

Maxim 2: Read the log. Comparing the log step-by-step will give you a clue. If not, post the logs here; if they're too big to insert via {i}, attach them to the post as .txt files.

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 4 replies
  • 2014 views
  • 0 likes
  • 3 in conversation