Looker unterstützt Verbindungen zu Amazon Athena, einem interaktiven Abfragedienst, mit dem Sie Daten in Amazon S3 mit Standard-SQL ganz einfach analysieren können. Amazon Athena ist serverlos, daher muss keine Infrastruktur verwaltet werden. Es werden nur die ausgeführten Abfragen in Rechnung gestellt.
Auf dieser Seite wird beschrieben, wie Sie Looker mit einer Amazon Athena-Instanz verbinden.
Die müssen Folgendes haben:
- Ein Paar von Amazon AWS-Zugriffsschlüsseln.
Der S3-Bucket mit den Daten, die Sie in Looker mit Amazon Athena abfragen möchten Der Amazon AWS-Zugriffsschlüssel muss Lese-/Schreibzugriff auf diesen Bucket haben.
Amazon Athena muss entweder durch eine Rolle oder einen Berechtigungssatz sowie über Firewallregeln Zugriff auf diesen S3-Bucket haben. Fügen Sie dem S3-Bucket keine Sicherheitsregeln für die IP-Adresse von Looker hinzu, da dies den Zugriff von Amazon Athena auf den S3-Bucket versehentlich blockieren kann. Für andere Dialekte neben Amazon Athena können Nutzer den Zugriff auf die Daten aus der Netzwerkebene mithilfe einer IP-Zulassung einschränken, wie auf der Dokumentationsseite Sicheren Datenbankzugriff aktivieren beschrieben.
Wissen Sie, wo sich Ihre Amazon Athena-Instanzdaten befinden. Den Namen der Region finden Sie im oberen rechten Bereich der Amazon Console.
Wählen Sie im Abschnitt Admin von Looker die Option Verbindungen aus und klicken Sie auf Verbindung hinzufügen.
Geben Sie die Verbindungsdetails ein:
- Name: Geben Sie den Namen der Verbindung an. So verweisen Sie auf die Verbindung in LookML-Projekten.
- Dialekt: Wählen Sie Amazon Athena aus.
- Host und Port: Geben Sie den Namen des Hosts und des Ports an, wie in der Athena-Dokumentation zum JDBC-URL-Format beschrieben. Der Host sollte ein gültiger Amazon-Endpunkt wie
athena.eu-west-1.amazonaws.com
sein und der Port sollte bei443
bleiben. Eine aktuelle Liste der Endpunkte, die Athena unterstützen, finden Sie auf dieser Seite von AWS General Reference. - Datenbank: Geben Sie die Standarddatenbank an, die modelliert werden soll. Auf andere Datenbanken kann zugegriffen werden. Looker behandelt diese Datenbank jedoch als Standarddatenbank.
- Nutzername: Geben Sie die ID des AWS-Zugriffsschlüssels an.
- Password: Geben Sie den geheimen AWS-Zugriffsschlüssel an.
- PDTs aktivieren: Verwenden Sie diese Ein-/Aus-Schaltfläche, um persistente abgeleitete Tabellen (PDTs) zu aktivieren. Wenn Sie PATs aktivieren, werden zusätzliche PAT-Felder und der Abschnitt PDT-Überschreibungen für die Verbindung angezeigt.
- Temporäre Datenbank: Geben Sie den Namen des Ausgabeverzeichnisses in Ihrem S3-Bucket an, in den Looker Ihre PDTs schreiben soll. Der vollständige Pfad zum Ausgabeverzeichnis muss im Feld Zusätzliche JDBC-Parameter angegeben werden. Weitere Informationen finden Sie im Abschnitt S3-Bucket für Ausgabe von Abfrageergebnisse und PATs angeben auf dieser Seite.
- Maximale Anzahl von PAT-Builder-Verbindungen: Geben Sie die Anzahl der möglichen gleichzeitigen PAT-Builds für diese Verbindung an. Wenn dieser Wert zu hoch ist, kann sich das negativ auf die Abfragezeiten auswirken. Weitere Informationen finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Datenbank herstellen.
- Zusätzliche JDBC-Parameter: Geben Sie zusätzliche Parameter für die Verbindung an:
- Der Parameter
s3_staging_dir
ist der S3-Bucket, den Looker für die Ausgabe von Abfrageergebnisse und PDTs verwenden soll. Weitere Informationen finden Sie im Abschnitt S3-Bucket für die Ausgabe von Abfrageergebnisse und PDTs angeben auf dieser Seite. - Flag für Streamingergebnisse. Wenn Sie die Athena-Richtlinie an die
athena:GetQueryResultsStream
-Richtlinie angehängt haben, können Sie;UseResultsetStreaming=1
am Ende der zusätzlichen JDBC-Parameter anhängen, um die Leistung großer Ergebnismengen-Extraktionen erheblich zu verbessern. Dieser Parameter ist standardmäßig auf0
gesetzt. - Optionale zusätzliche Parameter, die dem JDBC-Verbindungsstring hinzugefügt werden sollen.
- Der Parameter
- SSL: Ignorieren. Standardmäßig werden alle Verbindungen zur AWS API verschlüsselt.
- Max. Verbindungen pro Knoten: Standardmäßig ist dies auf 5 festgelegt. Sie können diesen Wert auf bis zu 20 erhöhen, wenn Looker die Haupt-Abfrage-Engine für Athena ist. Weitere Informationen finden Sie in der Dokumentation zu den Athena-Dienstlimits. Weitere Informationen finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Ihrer Datenbank herstellen.
- Verbindungspool-Zeitlimit: Geben Sie das Zeitlimit für den Verbindungspool an. Standardmäßig ist das Zeitlimit auf 120 Sekunden eingestellt. Weitere Informationen finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Ihrer Datenbank herstellen.
- SQL-Runner-Precache: Heben Sie die Auswahl dieser Option auf, wenn SQL-Runner nur Tabelleninformationen laden soll, wenn eine Tabelle ausgewählt ist. Weitere Informationen finden Sie auf der Dokumentationsseite Verbindung zwischen Looker und Ihrer Datenbank herstellen.
- Zeitzone der Datenbank: Geben Sie die Zeitzone an, die in der Datenbank verwendet wird. Lassen Sie dieses Feld leer, wenn Sie keine Zeitzonenumwandlung wünschen. Weitere Informationen finden Sie auf der Dokumentationsseite Zeitzoneneinstellungen verwenden.
Klicken Sie auf Test, um zu prüfen, ob die Verbindung erfolgreich war. Informationen zur Fehlerbehebung finden Sie in der Dokumentation zum Testen der Datenbankverbindung.
Klicken Sie auf Verbinden, um diese Einstellungen zu speichern.
S3-Bucket für die Ausgabe von Abfrageergebnisse und PATs festlegen
Verwenden Sie das Feld Zusätzliche JDBC-Parameter auf der Seite Verbindungen, um den Pfad zum S3-Bucket zu konfigurieren, den Looker zum Speichern der Abfrageergebnisse verwendet. Außerdem geben Sie den Namen des Ausgabeverzeichnisses im S3-Bucket an, in dem Looker PDTs schreiben soll. Geben Sie diese Informationen mit dem Parameter s3_staging_dir
an.
Der JDBC-Parameter s3_staging_dir
ist eine alternative Möglichkeit, die Amazon S3OutputLocation
Property von Amazon Athena zu konfigurieren, die für Athena-JDBC-Verbindungen erforderlich ist. Weitere Informationen und eine Liste aller verfügbaren JDBC-Treiberoptionen finden Sie in der Athena-Dokumentation zu JDBC-Treiberoptionen.
Geben Sie im Feld Zusätzliche JDBC-Parameter den Parameter s3_staging_dir
im folgenden Format an:
`s3_staging_dir=s3://<s3-bucket>/<output-path>`
Wobei:
<s3-bucket>
ist der Name des S3-Buckets.<output-path>
ist der Pfad, in den Looker die Abfrageergebnisse schreibt.
Das AWS-Zugriffsschlüsselpaar muss Schreibberechtigungen für das Verzeichnis
<s3-bucket>
haben.
Wenn Sie das Verzeichnis konfigurieren möchten, in das Looker PDTs schreibt, geben Sie in das Feld Temp Database den Pfad des Verzeichnisses im obigen S3-Bucket ein.
Wenn Sie beispielsweise möchten, dass Looker PDTs in s3://<s3-bucket>/looker_scratch
schreibt, geben Sie Folgendes in das Feld Temp Database ein:
`looker_scratch`
Geben Sie nur den Pfad des Verzeichnisses ein. Looker ruft den S3-Bucket-Namen aus dem Parameter s3_staging_dir
ab, den Sie in das Feld Zusätzliche JDBC-Parameter eingeben.
Hinweise zu S3-Buckets
Es wird empfohlen, den Amazon S3-Objektlebenszyklus zu konfigurieren, um nicht benötigte Dateien im angegebenen S3-Bucket regelmäßig zu bereinigen. Dafür gibt es Gründe:
- Athena speichert Abfrageergebnisse für jede Abfrage in einem S3-Bucket. Siehe Athena-Abfrage.
- Wenn solche PATs aktiviert sind, werden beim Erstellen eines PATs Metadaten zur erstellten Tabelle im S3-Bucket gespeichert.
Ressourcen
- Amazon Athena-Dokumentation
- Amazon Web Services Console für Athena (AWS-Anmeldung erforderlich)
- Referenz für Amazon Athena SQL und HiveQL
Debugging
Amazon bietet die JDBC-Treiber LogLevel
und LogPath
für das Debugging von Verbindungen. Fügen Sie am Ende des Felds Zusätzliche JDBC-Parameter ;LogLevel=DEBUG;LogPath=/tmp/athena_debug.log
hinzu und testen Sie die Verbindung noch einmal.
Wenn die Instanz von Looker gehostet wird, muss der Looker-Support oder Ihr Analyst diese Datei abrufen, um mit der Fehlerbehebung fortzufahren.
Unterstützte Funktionen
Damit Looker einige Funktionen unterstützen kann, müssen diese auch von Ihrem Datenbankdialekt unterstützt werden.
Amazon Athena unterstützt ab Looker 23.8 die folgenden Funktionen:
Funktion | Unterstützt? |
---|---|
Supportstufe | Unterstützt |
Looker (Google Cloud Core) | Ja |
Symmetrische Summen | Ja |
Abgeleitete Tabellen | Ja |
Über SQL abgeleitete Tabellen | Ja |
Nichtflüchtige native abgeleitete Tabellen | Ja |
Stabile Aufrufe | Ja |
Abfrageabbau | Ja |
SQL-basierte Pivots | Ja |
Zeitzonen | Ja |
SSL | Ja |
Zwischensummen | Nein |
Zusätzliche JDBC-Parameter | Ja |
Groß-/Kleinschreibung beachten | Ja |
Standorttyp | Ja |
Listentyp | Ja |
Perzentil | Ja |
Eindeutiges Perzentil | Nein |
Prozesse der SQL Runner-Sendung | Nein |
SQL-Runner-Beschreibungstabelle | Ja |
SQL-Runner-Show-Indizes | Nein |
SQL Runner Select 10 | Ja |
Anzahl der SQL-Runner | Ja |
Erläuterung zu SQL | Nein |
OAuth-Anmeldedaten | Nein |
Kontextkommentare | Ja |
Verbindungs-Pooling | Nein |
HLL-Sketche | Ja |
Aggregatfunktion | Ja |
Inkrementelle PDTs | Nein |
Millisekunden | Ja |
Mikrosekunden | Nein |
Materialisierte Ansichten | Nein |
Ungefähre Anzahl Einzeln | Ja |
Nächste Schritte
Nachdem Sie die Datenbankverbindung hergestellt haben, konfigurieren Sie die Authentifizierungsoptionen.