SAS et Impala : Comment définir un Request Pool via une connexion ODBC
Simon 13 Aufrufe
Schwierigkeitsgrad
Confirmé
Veröffentlicht am :
Expertenrat
Michael
Interagir avec des clusters Hadoop (Impala) via SAS demande une gestion fine des ressources. Une problématique revient souvent : comment forcer l'utilisation d'un "Request Pool" spécifique pour garantir la priorité de ses traitements, tout en conservant la souplesse d'une LIBNAME classique ?
L'erreur courante est de penser que seul le SQL Pass-Through (EXECUTE) permet de configurer la session.
Une connexion ODBC standard ne transmet pas automatiquement ces paramètres de session sans une configuration explicite.
La solution : Le paramètre dbconinit
La clé réside dans l'utilisation de l'option dbconinit (Database Connection Initialization). Cette option permet de spécifier une commande SQL qui sera exécutée immédiatement après l'établissement de la connexion, mais avant toute lecture ou écriture de données.
C'est l'endroit idéal pour placer la commande ImpalaSET request_pool.
Implémentation
Voici la syntaxe complète pour déclarer votre bibliothèque. Dans cet exemple, nous nous connectons à une source DSN nommée MYIMPALA et définissons le pool sur une valeur spécifique.
noprompt="dsn=..." : Définit la source de données ODBC sans ouvrir de fenêtre de dialogue.
schema : Cible le schéma de base de données spécifique.
dbconinit : C'est ici que la magie opère. La commande set request_pool='...' est envoyée au serveur Impala pour configurer l'environnement de la session.
access=readonly : Une bonne pratique pour s'assurer que l'accès aux données analytiques reste en lecture seule.
Die auf WeAreCAS.eu bereitgestellten Codes und Beispiele dienen Lehrzwecken. Es ist zwingend erforderlich, sie nicht blind in Ihre Produktionsumgebungen zu kopieren. Der beste Ansatz besteht darin, die Logik zu verstehen, bevor sie angewendet wird. Wir empfehlen dringend, diese Skripte in einer Testumgebung (Sandbox/Dev) zu testen. WeAreCAS übernimmt keine Verantwortung für mögliche Auswirkungen oder Datenverluste auf Ihren Systemen.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.