Published on

May 29, 2024

Utilisation de serveurs liés pour accéder aux tables Amazon Athena dans SQL Server

Dans cet article de blog, nous allons explorer comment tirer parti des serveurs liés dans SQL Server pour accéder aux tables dans Amazon Athena. Amazon Athena est un service puissant qui vous permet d’interroger des données stockées dans des compartiments S3 à l’aide de requêtes SQL standard. En utilisant des serveurs liés, vous pouvez interroger directement les données des tables Amazon Athena sans avoir besoin de télécharger et d’importer les données dans SQL Server.

Pilote ODBC pour Amazon Athena

Pour interroger les tables Athena à partir d’un serveur lié SQL Server, vous devrez télécharger et installer le pilote ODBC Amazon Athena. Ce pilote fournit une interface ODBC standard pour interroger les services de requête interactive Amazon Athena. Il existe deux versions du pilote ODBC disponibles : ODBC 2.x pour Windows uniquement, et ODBC 1.x pour Windows, Linux et macOS. Pour ce tutoriel, nous utiliserons le pilote ODBC 2.x.

Avant d’installer le pilote ODBC, assurez-vous de maintenir le port 444 ouvert pour le trafic sortant, car Athena utilise ce port pour diffuser les résultats des requêtes. De plus, vous devrez configurer l’utilisateur IAM avec la stratégie Athena:GetQueryResultsStream pour prendre en charge le pilote ODBC.

Configuration du pilote ODBC

Une fois que vous avez installé le pilote ODBC Amazon Athena, vous devez le configurer dans SQL Server. Lancez l’outil de configuration ODBC 64 bits à partir du menu Démarrer et cliquez sur “DSN système” pour ajouter une nouvelle source de données.

Dans la fenêtre de configuration ODBC, choisissez le pilote Amazon Athena ODBC (x64) version 2.00.01.00. Remplissez les informations nécessaires, y compris le nom de la source de données (DSN), la région AWS, le nom du catalogue, la base de données, l’emplacement de sortie S3 et les options d’authentification. Assurez-vous de fournir la clé d’accès et la clé secrète AWS de l’utilisateur IAM pour l’authentification.

Cliquez sur “Tester la connexion” pour vérifier si la connexion ODBC à Amazon Athena est réussie. Si la connexion est réussie, vous verrez le message “Connexion réussie à la version 3 du moteur Athena”.

Création d’un serveur lié dans SQL Server

Une fois la connexion ODBC à Amazon Athena configurée, vous pouvez créer un serveur lié dans SQL Server en utilisant les procédures stockées sp_addlinkedserver et sp_addlinkedserverlogin. Le code T-SQL suivant montre comment créer un serveur lié :

EXEC master.dbo.sp_addlinkedserver 
   @server = N'AthenaQuery', 
   @srvproduct = N'', 
   @provider = N'MSDASQL', 
   @datasrc = N'AthenaQuery'

EXEC master.dbo.sp_addlinkedsrvlogin 
   @rmtsrvname = N'AthenaQuery', 
   @useself = N'False', 
   @locallogin = NULL, 
   @rmtuser = N'AKIASEPWAFS6UVVVXMP7', 
   @rmtpassword = 'ON+T6J4/Zo92uCvZ/q4mZ1x6PUG9yVGxanFHwWQ9'

En exécutant la requête ci-dessus, un serveur lié nommé “AthenaQuery” sera créé dans SQL Server, qui se connecte à la base de données Amazon Athena. Vous pouvez vérifier le serveur lié en vous connectant à SQL Server dans SSMS et en développant “Objets du serveur” -> “Serveurs liés”. Cliquez avec le bouton droit sur le serveur lié et sélectionnez “Tester la connexion” pour vous assurer que le serveur lié peut se connecter à la base de données Amazon Athena.

Une fois le serveur lié configuré, vous pouvez développer les catalogues du serveur lié pour afficher toutes les tables de votre configuration Amazon Athena. Ces tables peuvent être interrogées comme des tables de serveur lié régulières dans SQL Server.

En utilisant des serveurs liés pour accéder aux tables Amazon Athena, vous pouvez interroger directement les données stockées dans les compartiments S3 sans avoir besoin d’importer et de synchroniser les données. Cela offre une approche plus efficace et rationalisée pour travailler avec des sources de données externes dans SQL Server.

C’est tout ! Vous savez maintenant comment utiliser des serveurs liés pour accéder aux tables Amazon Athena dans SQL Server. Commencez à explorer la puissance d’Amazon Athena et tirez parti de ses capacités pour interroger directement les données stockées dans les compartiments S3 depuis SQL Server.

Article mis à jour pour la dernière fois le 2023-10-06

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.