Эффективное объединение многих наборов данных sas

У меня более 200 тыс. Небольших наборов данных с одинаковыми переменными (n <1000 и обычно п <100) что я хочу объединить в основной набор данных. Я попытался использовать макрос, который использует шаг данных, чтобы просто перебрать все новые наборы данных и объединить с мастером с помощью "установить мастер новый: ", но это занимает очень много времени. Кроме того, если я пытаюсь запустить одновременно, шаг выполнения данных вызова говорит о том, что у меня недостаточно памяти на огромном сервере. Для справки, все небольшие наборы данных вместе составляют чуть более 5 гигабайт. Любые предложения будут ценны. Вот что у меня так далеко:

%macro catDat(name, nbr) ;
    /*call in new dataset */
    data new ;
    set libin.&name ;
    run ;

    /* reorder names */
    proc sql noprint;
    create table new as 
    select var1, var2, var3
    from new;
    quit;

    %if &nbr = 1 %then %do ;
        data master;
        set new;
        run;
    %end; 
    %if &nbr > 1 %then %do ;
        data master;
        set master new ;
        run;
    %end ;
%mend;

/* concatenate datasets */
data runthis ;
set datasetNames ;
call execute('%catdat('||datasetname||','||_n_||')');
run;

Решено: увидеть Бобакомментарии ниже.