Es gibt überall Proben, aber ich hatte nicht viel Wissen, also machte ich mir eine Notiz, die auf dem Stolperstein basierte.
Nehmen wir vorerst an, dass Sie SQL über die Webkonsole ausführen können. Der DB-Name lautet "logs".
Ich erhalte das Ergebnis der Ausführung über JDBC, aber es ist obligatorisch, es in S3 zu speichern. Und es scheint nutzlos zu sein (es wird ein Fehler sein), es sei denn, es ist eine Region, in der Amazon Athena richtig funktioniert. Erstellen Sie einen S3-Bucket mit der Region "US Standard".
Starten Sie Netbeans und starten Sie ein neues Projekt> Java> Java-Anwendung
Ich verwies auf JDBC-Verbindung zu Amazon Athena | Developers.IO.
Kopieren und Einfügen.
Es scheint, dass die Authentifizierung den Konstruktor von "aws_credentials_provider_class" angeben kann, indem ein Wert an die Eigenschaft "aws_credentials_provider_arguments" in der Gruppe von Eigenschaften übergeben wird, die an den JDBC-Treiber übergeben werden.
Es scheint ... aber ich konnte es aus verschiedenen Gründen nicht verwenden, daher werde ich diesen Zugriffsschlüssel und den geheimen Zugriffsschlüssel verwenden.
Accessing Amazon Athena with JDBC — User Guide
In Bezug auf die obige Seite wurde der Zugriffsschlüssel in der Eigenschaft "Benutzer" und der geheime Zugriffsschlüssel in demselben "Kennwort" festgelegt.
info.put("s3_staging_dir", "s3://us-standar-region-phx-athena");
info.put("user", "AWSACCESSKEYID");
info.put("password", "AWSSECRETACCESSKEY");
-Bringen Sie den JDBC-Treiber aus Zugriff auf Amazon Athena mit JDBC - Benutzerhandbuch -Bringen Sie das AWS SDK aus AWS SDK für Java | AWS.
commons-logging-1.2-bin.zip
von .cgi)Entpacken Sie die obigen drei und fügen Sie jedes Glas dem Projekt hinzu. Klicken Sie mit der rechten Maustaste auf das Projekt unter Netbeas> Eigenschaften> Bibliothek> JAR / Ordner hinzufügen> dreimal
Die Standarddatenbank wird in der Webkonsole korrekt angegeben, Sie müssen sie jedoch korrekt angeben. (Da Sie die Standard-DB angeben können, sollten Sie dies tun.)
Zum Beispiel
select * from target_table limit 3;
Ist
select * from logs.target_table limit 3;
So was.
Recommended Posts