Database

Fini l'enfer d'Oracle : Connectez SAS Viya en 30 secondes chrono ! (Sans client, sans config)

Michael 2 vues
Niveau de difficulté
Confirmé
Publié le :
Simon

Le conseil de l'expert

Simon

L'intégration native des drivers Oracle dans SAS Viya lève enfin les freins liés à l'infrastructure, mais n'en oubliez pas pour autant les bonnes pratiques de sécurité ! Pour des scripts robustes et prêts pour la production, remplacez toujours les identifiants en clair de votre instruction LIBNAME par l'option authdomain= adossée à SAS Environment Manager. Vous garantirez ainsi une sécurité totale de vos mots de passe tout en facilitant la portabilité de votre code entre vos environnements de développement et de production.

Pendant des années, connecter SAS© à Oracle était synonyme de migraines : installation manuelle du client Oracle, jonglage entre les versions 32 et 64 bits, configuration fastidieuse du tnsnames.ora, et les fameuses variables d'environnement ORACLE_HOME ou LD_LIBRARY_PATH qui ne fonctionnaient jamais du premier coup. Dans un environnement moderne comme Kubernetes, cette complexité devenait un véritable frein à l'agilité.

C’est désormais de l’histoire ancienne.

SAS© Viya embarque nativement les drivers Oracle (Instant Client 19.22). Ils sont là, pré-installés, configurés et prêts à l'emploi au cœur de votre déploiement. Plus besoin de "monter" des volumes ou de modifier vos images de conteneurs. Dans ce guide, nous allons voir comment passer de "Zéro Connexion" à "Données Disponibles" en quelques lignes de code seulement.

Fini l'enfer d'Oracle : Connectez SAS Viya en 30 secondes chrono ! (Sans client, sans config) -

Le Guide

Suivez ces trois étapes pour activer la puissance d'Oracle dans votre session SAS©.

Étape 1 : Récupérer votre

Oubliez les fichiers de configuration externes. Pour utiliser le driver natif, vous avez juste besoin de la chaîne de connexion sous la forme : nom-du-serveur:port/nom-du-service

Astuce : Si vous travaillez dans un cluster Kubernetes où Oracle est aussi hébergé, utilisez le nom DNS interne (ex: ma-base-oracle.cluster.local).

Étape 2 : Déclarer le LIBNAME (Le Magic Code)

Ouvrez SAS© Studio et exécutez ce bloc. Remarquez l'absence totale de configuration préalable du système :

1/* Connexion directe et ultra-rapide */
2LIBNAME ora_data oracle
3 path="10.20.35.45:1521/ORA_PDB_PROD"
4 user="sas_user"
5 password="MonMotDePasseSecret123";

Étape 3 : Tester la visibilité des tables

Vérifiez immédiatement que SAS© "voit" vos données Oracle :

1PROC DATASETS lib=ora_data nolist;
2QUIT;
Si la liste de vos tables s'affiche dans le journal, félicitations : vous venez de gagner des heures de travail d'administration.

Exemples Poussés : Devenez un Power-User

Le driver natif ne se contente pas de connecter ; il est conçu pour la performance. Voici comment l'exploiter à 100%.

1. Le Turbo-Chargement (Bulk Load & Buffering)

Si vous devez déplacer des gigaoctets de données, ne vous contentez pas des réglages par défaut. Forcez le driver à travailler plus dur :

1LIBNAME prod oracle
2 path="prod-db:1521/XE"
3 user="admin" password="XXX"
4 readbuff=32767 /* Taille maximale du tampon de lecture */
5 insertbuff=1000 /* Envoi par blocs de 1000 lignes */
6 dbcommit=10000; /* Commit toutes les 10k lignes pour stabiliser la mémoire */

2. Le SQL Pass-Through (La puissance d'Oracle dans SAS)

Pour les calculs complexes (jointures de tables de plusieurs millions de lignes), ne ramenez pas les données dans SAS©. Laissez Oracle faire le travail "sur place" grâce au driver natif :

1PROC SQL;
2 connect to oracle (path="prod-db:1521/XE" user="admin" password="XXX");
3
4 /* On crée une table SAS à partir d'un calcul complexe fait PAR Oracle */
5 create TABLE work.stats_ventes as
6 select * from connection to oracle (
7 SELECT region_id, AVG(montant) as panier_moyen
8 FROM ventes_hist
9 WHERE date_transaction > '01-JAN-2024'
10 GROUP BY region_id
11 );
12
13 disconnect from oracle;
14QUIT;

Pourquoi c'est une révolution pour vous ?

Avant (V9 / Viya Early)Maintenant (Viya Natif)
Installation manuelle du client OracleInclus par défaut
Debugging des variables $PATHZéro variable système
Risque de conflits de versionsVersion stable (19.22) garantie
Configuration Kubernetes complexeTransparent et Cloud-Native

L'inclusion des drivers natifs transforme la connectivité Oracle d'une tâche d'expert système en une simple commande pour l'utilisateur final. C'est plus sécurisé, plus stable et infiniment plus simple à maintenir.