Amazon Athena

Looker supporta le connessioni ad Amazon Athena, un servizio di query interattivo che semplifica l'analisi dei dati in Amazon S3 utilizzando SQL standard. Amazon Athena è serverless, quindi non è necessaria alcuna infrastruttura da gestire. Ti vengono addebitate solo le query eseguite.

Crittografia del traffico di rete in corso...

Una best practice consiste nel criptare il traffico di rete tra l'applicazione Looker e il tuo database. Prendi in considerazione una delle opzioni descritte nella pagina della documentazione Abilitazione dell'accesso sicuro al database.

Configurare una connessione Amazon Athena

Questa pagina descrive come connettere Looker a un'istanza Amazon Athena.

  1. Assicurati di disporre di quanto segue:

    • Una coppia di chiavi di accesso Amazon AWS.
    • Il bucket S3 contenente i dati su cui eseguire query in Looker con Amazon Athena. Le chiavi di accesso Amazon AWS devono avere accesso in lettura/scrittura a questo bucket.

      Amazon Athena deve avere accesso a questo bucket S3 tramite un ruolo o un set di autorizzazioni, nonché tramite regole firewall. Non aggiungere regole di sicurezza al bucket S3 per l'IP di Looker, poiché ciò potrebbe bloccare inavvertitamente l'accesso di Amazon Athena al bucket S3. Per altri dialetti oltre ad Amazon Athena, gli utenti potrebbero voler limitare l'accesso ai dati dal livello di rete con una lista consentita di IP, come descritto nella pagina della documentazione Abilitazione dell'accesso sicuro a database.

    • Conoscenza di dove si trovano i dati dell'istanza Amazon Athena. Il nome della regione si trova nella parte in alto a destra della console Amazon.

  2. Nella sezione Admin (Amministrazione) di Looker, seleziona Connections (Connessioni) e quindi fai clic su Add Connection (Aggiungi connessione).

  3. Inserisci i dettagli della connessione:

    • Nome: specifica il nome della connessione. Questo è il modo in cui farai riferimento alla connessione nei progetti LookML.
    • Dialetto: seleziona Amazon Athena.
    • Host e Porta: specifica il nome dell'host e della porta come descritto nella documentazione di Athena sul formato URL JDBC. L'host deve essere un endpoint Amazon valido (come athena.eu-west-1.amazonaws.com) e la porta deve rimanere su 443. Un elenco aggiornato degli endpoint che supportano Athena è disponibile in questa pagina di riferimento generale di AWS.
    • Database: specifica il database predefinito da modellare. È possibile accedere ad altri database, ma Looker considera questo database come predefinito.
    • Nome utente: specifica l'ID della chiave di accesso AWS.
    • Password: specifica la chiave di accesso al secret AWS.
    • Abilita le PDT: utilizza questa opzione per abilitare le tabelle derivate permanenti (PDT). L'abilitazione delle PDT mostra i campi PDT aggiuntivi e la sezione PDT Overrides (Override PDT) per la connessione.
    • Database temporaneo: specifica il nome della directory di output nel bucket S3 in cui vuoi che Looker scriva le tue PDT. Il percorso completo della directory di output deve essere specificato nel campo Parametri JDBC aggiuntivi. Consulta la sezione Specificare il bucket S3 per l'output dei risultati delle query e le PDT in questa pagina.
    • Numero massimo di connessioni del builder di PDT: specifica il numero di possibili build di PDT simultanee su questa connessione. L'impostazione di questo valore troppo alto potrebbe influire negativamente sui tempi delle query. Per saperne di più, consulta la pagina della documentazione Connessione di Looker al tuo database.
    • Parametri JDBC aggiuntivi: specifica i parametri aggiuntivi per la connessione:
      • Il parametro s3_staging_dir è il bucket S3 che Looker deve utilizzare per l'output dei risultati delle query e le PDT; consulta la sezione Specificare il bucket S3 per l'output dei risultati delle query e le PDT in questa pagina.
      • Contrassegno per risultati in streaming. Se hai collegato il criterio athena:GetQueryResultsStream all'utente Athena, puoi aggiungere ;UseResultsetStreaming=1 alla fine dei parametri JDBC aggiuntivi per migliorare in modo significativo le prestazioni dell'estrazione di set di risultati di grandi dimensioni. Questo parametro è impostato su 0 per impostazione predefinita.
      • Parametri aggiuntivi facoltativi da aggiungere alla stringa di connessione JDBC.
    • SSL: ignora. Per impostazione predefinita, tutte le connessioni all'API AWS saranno criptate.
    • Numero massimo di connessioni per nodo: il valore predefinito è 5. Puoi aumentarlo fino a 20 se Looker è il motore di query principale in esecuzione su Athena. Per ulteriori informazioni sui limiti di servizio di Athena, consulta la documentazione sui limiti di servizio di Athena. Per saperne di più, consulta la pagina della documentazione Collegamento di Looker al tuo database.
    • Timeout del pool di connessioni: specifica il timeout del pool di connessioni. Per impostazione predefinita, il timeout è impostato su 120 secondi. Per saperne di più, consulta la pagina della documentazione Collegamento di Looker al tuo database.
    • SQL Runner Precache: deseleziona questa opzione se preferisci che SQL Runner carichi le informazioni delle tabelle solo quando ne è selezionata una. Per saperne di più, consulta la pagina della documentazione Collegamento di Looker al tuo database.
    • Database Time Zone: specifica il fuso orario utilizzato nel database. Lascia vuoto questo campo se non vuoi eseguire la conversione del fuso orario. Per ulteriori informazioni, consulta la pagina della documentazione Utilizzo delle impostazioni del fuso orario.

Per verificare che la connessione sia andata a buon fine, fai clic su Test. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione relativa al test della connettività del database.

Per salvare queste impostazioni, fai clic su Connetti.

Specifica il bucket S3 per l'output dei risultati delle query e le PDT

Utilizza il campo Parametri JDBC aggiuntivi della pagina Connessioni per configurare il percorso del bucket S3 che Looker utilizzerà per archiviare l'output dei risultati delle query e per specificare il nome della directory di output nel bucket S3 in cui vuoi che Looker scriva le PDT. Specifica queste informazioni utilizzando il parametro s3_staging_dir.

Il parametro JDBC s3_staging_dir è un modo alternativo per configurare la proprietà Amazon Athena S3OutputLocation, necessaria per le connessioni JDBC di Athena. Per ulteriori informazioni e per un elenco di tutte le opzioni dei driver JDBC disponibili, consulta la documentazione di Athena sulle opzioni dei driver JDBC.

Nel campo Parametri JDBC aggiuntivi, specifica il parametro s3_staging_dir utilizzando il seguente formato:

`s3_staging_dir=s3://<s3-bucket>/<output-path>`

Dove:

  • <s3-bucket> è il nome del bucket S3.
  • <output-path> è il percorso in cui Looker scriverà l'output dei risultati della query.

La coppia di chiavi di accesso AWS deve disporre delle autorizzazioni di scrittura per la directory <s3-bucket>.

Per configurare la directory in cui Looker scriverà le PDT, inserisci il percorso della directory nel bucket S3 nel campo Temp Database (Database temporaneo). Ad esempio, se vuoi che Looker scriva PDT in s3://<s3-bucket>/looker_scratch, inserisci quanto segue nel campo Database temporaneo:

`looker_scratch`

Inserisci solo il percorso della directory. Looker recupera il nome del bucket S3 dal parametro s3_staging_dir che inserisci nel campo Parametri JDBC aggiuntivi.

Considerazioni sui bucket S3

Ti consigliamo di configurare i cicli di vita degli oggetti Amazon S3 per pulire periodicamente i file non necessari nel bucket S3 specificato. I motivi sono i seguenti:

  • Athena archivia i risultati per ogni query in un bucket S3. Vedi Esecuzione di query con Athena.
  • Se le PDT sono abilitate, quando ne viene creata una i metadati relativi alla tabella creata vengono archiviati nel bucket S3.

Risorse

Debug

Amazon fornisce opzioni dei driver JDBC LogLevel e LogPath per il debug delle connessioni. Per utilizzarle, aggiungi ;LogLevel=DEBUG;LogPath=/tmp/athena_debug.log alla fine del campo Parametri JDBC aggiuntivi e verifica nuovamente la connessione.

Se Looker ospita l'istanza, il supporto Looker o il tuo analista dovranno recuperare questo file per continuare il debug.

Supporto delle funzionalità

Affinché Looker supporti alcune funzionalità, è necessario che anche il dialetto del tuo database le supporti.

Amazon Athena supporta le seguenti funzionalità a partire da Looker 24.10:

Selezione delle Supportata?
Livello di assistenza
Supportato
Looker (Google Cloud core)
Aggregati simmetrici
Tabelle derivate
Tabelle derivate da SQL permanente
Tabelle derivate native permanenti
Viste stabili
Eliminazione delle query
Pivot basati su SQL
Fusi orari
SSL
Subtotali
No
Parametri aggiuntivi JDBC
Sensibilità alle maiuscole
Tipo di località
Tipo di elenco
Percentile
Percentile distinto
No
Processi SQL Runner Show
No
Tabella di descrizione di SQL Runner
SQL Runner Mostra indici
No
Selezione SQL Runner 10
Conteggio runner SQL
Spiegazione SQL
No
Credenziali OAuth
No
Commenti contestuali
Pooling di connessioni
No
Schizzi HLL
Consapevolezza aggregata
PDT incrementali
No
Millisecondi
Microsecondi
No
Viste materializzate
No
Conteggio approssimato distinto

Passaggi successivi

Dopo aver completato la connessione al database, configura le opzioni di autenticazione.