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 è necessario gestire alcuna infrastruttura. Ti vengono addebitate solo le query eseguite.
Crittografia del traffico di rete
È una best practice criptare il traffico di rete tra l'applicazione Looker e il tuo database. Valuta una delle opzioni descritte nella pagina della documentazione Abilitare l'accesso sicuro ai database.
Configurazione di una connessione Amazon Athena
Questa pagina descrive come connettere Looker a un'istanza Amazon Athena.
Assicurati di disporre di quanto segue:
- Una coppia di chiavi di accesso Amazon AWS.
Il bucket S3 contenente i dati su cui vuoi eseguire query in Looker con Amazon Athena. Le chiavi di accesso Amazon AWS devono disporre dell'accesso in lettura/scrittura a questo bucket.
Amazon Athena deve avere accesso a questo bucket S3 tramite un ruolo o un insieme di autorizzazioni, nonché tramite regole firewall. Non aggiungere regole di sicurezza al bucket S3 per l'IP di Looker, in quanto ciò può 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 indirizzi IP, come descritto nella pagina della documentazione Abilitare l'accesso sicuro ai database.
Conoscenza della posizione dei dati dell'istanza Amazon Athena. Il nome della regione si trova nella parte in alto a destra della console Amazon.
Nella sezione Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.
Compila i dettagli della connessione:
- Name (Nome): specifica il nome della connessione. È così che 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 dell'URL JDBC. L'host deve essere un endpoint Amazon valido (ad esempio
athena.eu-west-1.amazonaws.com
) e la porta deve rimanere su443
. Un elenco aggiornato degli endpoint che supportano Athena è disponibile in questa pagina di AWS General Reference. - Database: specifica il database predefinito che vuoi modellare. È possibile accedere ad altri database, ma Looker considera questo database come database predefinito.
- Nome utente: specifica l'ID chiave di accesso AWS.
- Password: specifica la chiave di accesso segreta AWS.
- Abilita PDT: utilizza questo pulsante di attivazione/disattivazione per abilitare le tabelle derivate permanenti (PDT). L'attivazione delle PDT mostra ulteriori campi PDT e la sezione Override PDT per la connessione.
- Database temporaneo: specifica il nome della directory di output nel bucket S3 in cui vuoi che Looker scriva le PDT. Il percorso completo della directory di output deve essere specificato nel campo Parametri JDBC aggiuntivi. Consulta la sezione Specifica del bucket S3 per l'output dei risultati delle query e le PDT in questa pagina.
- Numero massimo di connessioni del generatore di PDT: specifica il numero di build di PDT simultanee possibili su questa connessione. Se imposti questo valore su un valore troppo alto, i tempi di esecuzione delle query potrebbero risentirne negativamente. Per saperne di più, consulta la pagina di documentazione Connessione di Looker al database.
- Parametri JDBC aggiuntivi: specifica 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 per le PDT. Consulta la sezione Specifica del bucket S3 per l'output dei risultati delle query e per le PDT in questa pagina. - Flag per i risultati di streaming. Se hai il criterio
athena:GetQueryResultsStream
collegato al tuo utente Athena, puoi aggiungere;UseResultsetStreaming=1
alla fine dei parametri JDBC aggiuntivi per migliorare significativamente le prestazioni dell'estrazione di set di risultati di grandi dimensioni. Per impostazione predefinita, questo parametro è impostato su0
. - Parametri aggiuntivi facoltativi da aggiungere alla stringa di connessione JDBC.
- Il parametro
- SSL: ignora; per impostazione predefinita, tutte le connessioni all'API AWS verranno criptate.
- Numero massimo di connessioni per nodo: per impostazione predefinita, questo valore è impostato su 5. Puoi aumentare questo valore fino a 20 se Looker è il motore di query principale in esecuzione su Athena. Per ulteriori dettagli sui limiti del servizio, consulta la documentazione sui limiti del servizio Athena. Per ulteriori informazioni, consulta la pagina della documentazione Connessione 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 ulteriori informazioni, consulta la pagina della documentazione Connessione di Looker al tuo database.
- SQL Runner Precache (Pre-cache SQL Runner): deseleziona questa opzione se preferisci che SQL Runner carichi le informazioni sulle singole tabelle solo quando vengono selezionate. Per ulteriori informazioni, consulta la pagina della documentazione Connessione di Looker al tuo database.
- Fuso orario del database: specifica il fuso orario utilizzato nel database. Lascia vuoto questo campo se non vuoi la conversione del fuso orario. Per ulteriori informazioni, consulta la pagina della documentazione relativa all'uso delle impostazioni relative al fuso orario.
Per verificare che la connessione sia riuscita, fai clic su Testa. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione Testare la connettività del database.
Per salvare queste impostazioni, fai clic su Connetti.
Specificare il bucket S3 per l'output dei risultati delle query e i 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à S3OutputLocation
di Amazon Athena, necessaria per le connessioni JDBC di Athena. Per ulteriori informazioni e un elenco di tutte le opzioni del driver JDBC disponibili, consulta la documentazione di Athena sulle opzioni del 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 Database temporaneo.
Ad esempio, se vuoi che Looker scriva le PDT in s3://<s3-bucket>/looker_scratch
, inserisci questo valore 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 sul bucket S3
Ti consigliamo di configurare i cicli di vita degli oggetti Amazon S3 per eliminare periodicamente i file non necessari nel bucket S3 specificato. Ciò accade per diversi motivi:
- Athena archivia i risultati delle query per ogni query in un bucket S3. Consulta Query Athena.
- Se hai abilitato le PDT, quando viene creata una PDT, i metadati relativi alla tabella creata vengono archiviati nel bucket S3.
Risorse
- Documentazione di Amazon Athena
- Console Amazon Web Services per Athena (richiede l'accesso ad AWS)
- Riferimento a SQL e HiveQL di Amazon Athena
Debug
Amazon fornisce opzioni di driver JDBC LogLevel
e LogPath
per il debug delle connessioni. Per utilizzarli, aggiungi ;LogLevel=DEBUG;LogPath=/tmp/athena_debug.log
alla fine del campo Parametri JDBC aggiuntivi e testa di nuovo la connessione.
Se Looker ospita l'istanza, l'assistenza Looker o l'analista dovranno recuperare questo file per continuare il debug.
Funzionalità supportate
Affinché Looker supporti alcune funzionalità, anche il dialetto del database deve supportarle.
A partire da Looker 25.10, Amazon Athena supporta le seguenti funzionalità:
Funzionalità | Supportato? |
---|---|
Livello di assistenza | Supportato |
Looker (Google Cloud core) | Sì |
Aggregati simmetrici | Sì |
Tabelle derivate | Sì |
Tabelle derivate permanenti basate su SQL | Sì |
Tabelle derivate native permanenti | Sì |
Visualizzazioni stabili | Sì |
Terminazione delle query | Sì |
Pivot basati su SQL | Sì |
Fusi orari | Sì |
SSL | Sì |
Subtotali | No |
Parametri JDBC aggiuntivi | Sì |
Sensibile alle maiuscole | Sì |
Tipo di località | Sì |
Tipo di elenco | Sì |
Percentile | Sì |
Percentile valori distinti | No |
SQL Runner Show Processes | No |
SQL Runner Describe Table | Sì |
SQL Runner Show Indexes | No |
SQL Runner Select 10 | Sì |
Conteggio SQL Runner | Sì |
SQL Explain | No |
Credenziali OAuth 2.0 | No |
Commenti contestuali | Sì |
Pool di connessioni | No |
Sketch HLL | Sì |
Aggregate awareness | Sì |
PDT incrementali | No |
Millisecondi | Sì |
Microsecondi | No |
Viste materializzate | No |
Misure di periodo in periodo | No |
Conteggio approssimativo dei valori distinti | Sì |
Passaggi successivi
Una volta completata la connessione al database, configura le opzioni di autenticazione.