logo

Client/serveur : Allouer une librairie pointant sur un répertoire situé sur un autre serveur

Je souhaite allouer une librairie qui pointerait sur des données situées sur un serveur UNIX qui n’est pas celui sur lequel est installé le SAS que j’utilise.Cependant, si cela est utile, le logiciel SAS est installé sur les 2 serveurs.

Y-a-t-il une (ou plusieurs ??) solutions ?

Merci d’avance,

La présence de SAS sur le second serveur évite la solution assez brutale de devoir transférer (via FTP par exemple, ou un FILENAME FTP au mieux) les données d’un serveur à l’autre.

Deux solutions se profilent à ce problème :

 

    1. Faire travailler directement le second serveur, celui où se trouvent les données. Un RSUBMIT … ENDRSUBMIT permet de lui faire effectuer le maximum de traitement. Pour rappatrier ensuite les données obtenues (si le but est de les exploiter sur le « premier » serveur), une procédure DOWNLOAD fera l’affaire. (Les syntaxes sont précisées en fin de réponse.
    2. La deuxième (et certainement pas dernière) solution consiste à déclarer sur le « premier » serveur une bibliothèque RLS, c’est à dire une image, un pointeur, un lien vers une bibliothèque du second serveur. On considère alors les données de cette bibliothèque comme toutes celles qui se trouvent sur le premier serveur. Les temps de réponse de cette solution seront certainement médiocres. Mais sa simplicité est maximale.

 

Syntaxe pour le RSUBMIT : 
 RSUBMIT ;
 PROC xxx ... ;
 ...
 RUN ;
 ENDRSUBMIT ;
Syntaxe pour la proc DOWNLOAD :
 RSUBMIT ;
 PROC DOWNLOAD DATA = tableSASserveur2 OUT = tableSASserveur1 ;
 RUN ;
 ENDRSUBMIT ;
Syntaxe pour le RLS :
 RSUBMIT ;
 LIBNAME toto "chemin" ;
 ENDRSUBMIT ;
 LIBNAME Rtoto SLIBREF = toto SERVER = nomDuServeur ;