Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisez les informations de cette section pour commencer à utiliser le pilote JDBC 3.x Amazon Athena.
Rubriques
Instructions d'installation
Vous pouvez utiliser le pilote JDBC 3.x dans une application personnalisée ou d'un client SQL tiers.
Dans une application personnalisée
Téléchargez le fichier .zip
contenant le fichier jar du pilote et ses dépendances. Chaque dépendance possède son propre fichier .jar
. Ajoutez le pilote jar en tant que dépendance dans votre application personnalisée. Ajoutez de manière sélective les dépendances du fichier jar du pilote selon que vous les avez déjà ajoutées ou non à votre application à partir d'une autre source.
Dans un client SQL tiers
Téléchargez le fichier uber jar du pilote et ajoutez-le au client SQL tiers en suivant les instructions pour ce client.
Exécution du pilote
Pour exécuter le pilote, vous pouvez utiliser une application personnalisée ou un client SQL tiers.
Dans une application personnalisée
Utilisez l'interface JDBC pour interagir avec le pilote JDBC à partir d'un programme. Le code suivant montre un exemple d'application Java personnalisée.
public static void main(String args[]) throws SQLException {
Properties connectionParameters = new Properties();
connectionParameters.setProperty("Workgroup", "primary");
connectionParameters.setProperty("Region", "us-east-2");
connectionParameters.setProperty("Catalog", "AwsDataCatalog");
connectionParameters.setProperty("Database","sampledatabase");
connectionParameters.setProperty("OutputLocation","s3://amzn-s3-demo-bucket");
connectionParameters.setProperty("CredentialsProvider","DefaultChain");
String url = "jdbc:athena://";
AthenaDriver driver = new AthenaDriver();
Connection connection = driver.connect(url, connectionParameters);
Statement statement = connection.createStatement();
String query = "SELECT * from sample_table LIMIT 10";
ResultSet resultSet = statement.executeQuery(query);
printResults(resultSet); // A custom-defined method for iterating over a
// result set and printing its contents
}
Dans un client SQL tiers
Suivez la documentation du client SQL que vous utilisez. Généralement, vous utilisez l'interface utilisateur graphique du client SQL pour saisir et envoyer la requête, et les résultats de la requête sont affichés dans la même interface.
Configuration du pilote
Vous pouvez utiliser les paramètres de connexion pour configurer le pilote Amazon Athena JDBC. Pour les paramètres de connexion pris en charge, veuillez consulter Paramètres de connexion JDBC 3.x Amazon Athena.
Dans une application personnalisée
Pour définir les paramètres de connexion du pilote JDBC d'une application personnalisée, effectuez l'une des actions suivantes :
-
Ajoutez les noms des paramètres et leurs valeurs à un objet
Properties
. Lorsque vous appelezConnection#connect
, transmettez cet objet avec l'URL. Pour un exemple, veuillez consulter l'exemple d'application Java dans Exécution du pilote. -
Dans la chaîne de connexion (l'URL), utilisez le format suivant pour ajouter les noms des paramètres et leurs valeurs directement après le préfixe du protocole.
<parameterName>
=<parameterValue>
;Utilisez un point-virgule à la fin de chaque paire nom de paramètre/valeur de paramètre, et ne laissez aucun espace après le point-virgule, comme dans l'exemple suivant.
String url = "jdbc:athena://WorkGroup=primary;Region=us-east-1;...;";AthenaDriver driver = new AthenaDriver();Connection connection = driver.connect(url, null);
Note
Si un paramètre est spécifié à la fois dans la chaîne de connexion et dans l'objet
Properties
, la valeur de la chaîne de connexion est prioritaire. Il n'est pas recommandé de spécifier le même paramètre aux deux endroits. -
Ajoutez les valeurs des paramètres en tant qu'arguments aux méthodes de
AthenaDataSource
, comme dans l'exemple suivant.AthenaDataSource dataSource = new AthenaDataSource(); dataSource.setWorkGroup("primary"); dataSource.setRegion("us-east-2"); ... Connection connection = dataSource.getConnection(); ...
Dans un client SQL tiers
Suivez les instructions du client SQL que vous utilisez. Généralement, le client fournit une interface utilisateur graphique pour saisir les noms des paramètres et leurs valeurs.
Mise à niveau depuis le pilote Athena JDBC v2
La plupart des paramètres de connexion JDBC version 3 sont rétrocompatibles avec le pilote JDBC version 2 (Simba). Cela signifie qu'une chaîne de connexion version 2 peut être réutilisée avec la version 3 du pilote. Certains paramètres de connexion ont toutefois changé. Ces modifications sont décrites ici. Lorsque vous effectuez une mise à niveau vers le pilote JDBC version 3, mettez à jour votre configuration existante si nécessaire.
Classe de pilote
Certains outils de BI vous demandent de fournir la classe de pilote à partir du fichier .jar
du pilote JDBC. La plupart des outils trouvent automatiquement cette classe. Le nom entièrement qualifié de la classe dans le pilote de la version 3 est com.amazon.athena.jdbc.AthenaDriver
. Dans le pilote version 2, la classe était com.simba.athena.jdbc.Driver
.
Chaîne de connexion
Le pilote version 3 utilise jdbc:athena://
le protocole au début de l'URL de la chaîne de connexion JDBC. Le pilote version 3 prend également en charge le protocole version 2jdbc:awsathena://
, mais son utilisation est déconseillée. Pour éviter des comportements non définis, la version 3 n'accepte pas les chaînes de connexion commençant par jdbc:awsathena://
si la version 2 (ou tout autre pilote acceptant les chaînes de connexion commençant parjdbc:awsathena://
) a été enregistrée auprès de la DriverManager
Fournisseurs d'informations d'identification
Le pilote version 2 utilise des noms complets pour identifier les différents fournisseurs d'informations d'identification (par exemple com.simba.athena.amazonaws.auth.DefaultAWSCredentialsProviderChain
). Le pilote version 3 utilise des noms plus courts (par exemple DefaultChain
). Les nouveaux noms sont décrits dans les sections correspondantes pour chaque fournisseur d'informations d'identification.
Les fournisseurs d'informations d'identification personnalisés écrits pour le pilote version 2 doivent être modifiés pour que le pilote version 3 implémente l'AwsCredentialsProvider
Le n'PropertiesFileCredentialsProvider
est pas pris en charge dans le pilote JDBC 3.x. Le fournisseur a été utilisé dans le pilote JDBC 2.x mais il appartient à la version précédente du SDK pour AWS Java dont le support approche de la fin. Pour obtenir les mêmes fonctionnalités dans le pilote JDBC 3.x, utilisez plutôt le Informations d'identification du profil de configuration AWS fournisseur.
Niveau de journalisation
Le tableau suivant montre les différences entre les paramètres LogLevel
des pilotes JDBC version 2 et version 3.
Version du pilote JDBC | Nom du paramètre | Type de paramètre | Valeur par défaut | Valeurs possibles | Exemple de chaîne de connexion |
---|---|---|---|---|---|
v2 | LogLevel |
Facultatif | 0 | 0-6 | LogLevel=6; |
v3 | LogLevel |
Facultatif | TRACE | OFF, ERROR, WARN, INFO, DEBUG, TRACE | LogLevel=INFO; |
Récupération de l'ID de requête
Dans le pilote version 2, vous décompressez une instance Statement
dans com.interfaces.core.IStatementQueryInfoProvider
, une interface dotée de deux méthodes : #getPReparedQueryId
et #getQueryId
. Vous pouvez utiliser ces méthodes pour obtenir l'ID d'exécution d'une requête déjà exécutée.
Dans le pilote version 3, vous décompressez les instances Statement
, PreparedStatement
et ResultSet
de l'interface com.amazon.athena.jdbc.AthenaResultSet
. L'interface dispose d'une seule méthode : #getQueryExecutionId
.