BookmarkSubscribeRSS Feed
LineMoon
Lapis Lazuli | Level 10

Hello experts,

I have used the solution  below given from the esteemed advisor Tom, it works well, but I have a matter with a big data, the exporting take more than 15 minutes for 3000,000 observations, I would like to have less than 2 minutes, is it possible ?

Thank to @Tom and @ll other members 

 

https://communities.sas.com/t5/Base-SAS-Programming/Exporting-a-sas-data-set-into-txt/m-p/314405#M68...

data _null_;
  file log ;
  set test(obs=1) test;
  length __name $32 __length 8 __value $200 ;
  do while (1=1);
    call vnext(__name);
    if lowcase(__name)='__name' then leave;
    if _n_=1 then __value = __name ;
    else __value = quote(strip(vvaluex(__name)));
    __length=lengthn(__value);
    put __value $varying200. __length ';' @ ;
  end;
  put;
run;

 

5 REPLIES 5
LineMoon
Lapis Lazuli | Level 10

@Kurt_Bremser : thank you

The real time still higher ? I am still open for the optimization of  the time

Kurt_Bremser
Super User

If real time exceeds CPU time significantly (not just a few percent), you either

- have to share CPU power with other processes. Run the necessary system tools (Task Manager on Windows, nmon or topas on UNIX) to determine the processes competing for CPU.

- run into I/O bottlenecks

Possible avenues for I/O tuning:

- separate disks that are being read from those that are being written (keep source and target libraries on physically separate disks)

- set up disk arrays, so that more than one disk handles a certain I/O load; this is called striping

- migrate to SSDs

Ksharp
Super User

You should not use VVALUEX(). PUT these variable names directly .

 

put x1 x2 .........;

LineMoon
Lapis Lazuli | Level 10

@Ksharp: thank you

put x1 x2 .........;

put the variables names do not reply to my need because the name can change from x1 x2...toto  Wi or Yi ...so on

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
  • 5 replies
  • 838 views
  • 1 like
  • 3 in conversation