Generali

D: Che cos'è Amazon Athena?
Amazon Athena è un servizio di query interattivo che semplifica l'analisi dei dati in Amazon S3 con SQL standard. Athena è serverless, per cui non c'è un'infrastruttura da installare o gestire ed è quindi possibile iniziare immediatamente ad analizzare i dati. Non è neanche necessario caricare i dati su Athena poiché funziona direttamente con i dati archiviati in S3. Per iniziare è sufficiente accedere alla console di gestione di Athena, definire gli schemi e cominciare a eseguire le query. Amazon Athena usa Presto con il supporto SQL standard completo e funziona con numerosi formati standard di dati, tra cui CSV, JSON, ORC, Apache Parquet e Avro. Sebbene Amazon Athena sia ideale per query veloci ad-hoc e si integri con Amazon QuickSight per una visualizzazione più semplice, può anche gestire analisi complesse, inclusi join di grandi dimensioni, funzioni finestra e array.
 
D: Che cosa posso fare con Amazon Athena?
Amazon Athena ti aiuta ad analizzare i dati archiviati in Amazon S3. È possibile usare Athena per eseguire query ad-hoc con ANSI SQL, senza la necessità di aggregare o caricare i dati in Athena. Amazon Athena può elaborare set di dati non strutturati, semi-strutturati e strutturati. Tra gli esempi figurano CSV, JSON, Avro o formati di dati colonnari come Apache Parquet e Apache ORC. Amazon Athena si integra con Amazon QuickSight per una migliore visualizzazione. È inoltre possibile utilizzare Amazon Athena per generare report o per analizzare i dati con strumenti di business intelligence o client SQL, collegati tramite un driver ODBC o JDBC.
 
D: Cosa devo fare per iniziare a usare Amazon Athena?
Per iniziare a usare Amazon Athena, è necessario accedere alla console di gestione di AWS per Athena e creare uno schema con istruzioni DDL sulla console o usare una procedura guidata per la creazione delle tabelle. È possibile iniziare a eseguire query sui dati usando un editor integrato. Athena esegue le query sui dati direttamente da Amazon S3, per cui non è necessario alcun caricamento.
 
D: In che modo si accede ad Amazon Athena?
Per accedere ad Amazon Athena è possibile utilizzare Console di gestione AWS, API o driver ODBC o JDBC. È possibile eseguire query e aggiungere tabelle o partizioni in modo sistematico utilizzando il driver ODBC o JDBC.
 
D: Quali sono i limiti del servizio associati ad Amazon Athena?
Per ulteriori informazioni sui limiti del servizio fai clic qui.
 
D: Qual è l'infrastruttura tecnologica di Amazon Athena?
Amazon Athena utilizza Presto con il supporto SQL standard completo e funziona con numerosi formati standard di dati, fra cui CSV, JSON, ORC, Avro e Parquet. Athena può gestire analisi complesse, inclusi join di grandi dimensioni, funzioni finestra e array. Dal momento che Amazon Athena utilizza Amazon S3 come infrastruttura di archivio dati, è altamente disponibile e durevole e i dati vengono archiviati in modo ridondante in più strutture e su più dispositivi in ogni struttura. Scopri di più su Presto qui.
 
D: In che modo Amazon Athena archivia definizioni di tabelle e schemi?
Amazon Athena usa un catalogo dati gestito per memorizzare informazioni e schemi relativi a database e tabelle creati per i dati che si trovano in Amazon S3. Nelle regioni in cui è disponibile AWS Glue, è possibile utilizzare il catalogo dati di AWS Glue con Amazon Athena. Nelle regioni in cui non è disponibile AWS Glue, Athena impiega un catalogo interno.
È possibile modificare il catalogo utilizzando istruzioni DDL o tramite la console di gestione AWS. Qualsiasi schema creato viene salvato automaticamente, a meno che non venga esplicitamente eliminato. Athena utilizza la tecnologia Schema on Read, in base alla quale la definizione delle tabelle viene applicata ai dati in S3 nel momento in cui vengono eseguite le query. Non è richiesto alcun caricamento o trasformazione dei dati. È possibile eliminare definizioni delle tabelle e schemi senza alcun impatto sui dati sottostanti archiviati in Amazon S3.
 
D: Qual è il vantaggio di passare al catalogo dati di AWS Glue?
AWS Glue è un servizio ETL completamente gestito. Glue consiste di tre componenti principali: 1) un crawler che scansiona automaticamente le origini dati, identifica i formati dei dati e ne individua gli schemi; 2) un servizio ETL completamente gestito che permette di trasformare e trasferire i dati verso diverse destinazioni; 3) un catalogo dati che memorizza le informazioni sui metadati di database e tabelle in S3 o in un datastore conforme ai driver ODBC o JDBC. Per sfruttare i vantaggi di Glue, è necessario passare a utilizzare il catalogo dati di Glue invece del catalogo dati interno di Athena.
I vantaggi dell'utilizzo del catalogo dati di Glue sono diversi:
  1. Repository di metadati unificato: AWS Glue si integra con un'ampia gamma di servizi AWS. AWS Glue supporta infatti i dati memorizzati in Amazon Aurora, Amazon RDS per MySQL, Amazon RDS per PostgreSQL, Amazon Redshift e Amazon S3, nonché nei database MySQL e PostgreSQL in un cloud privato virtuale di Amazon VPC in Amazon EC2. AWS Glue offre inoltre di default l'integrazione con Amazon Athena, Amazon EMR, Amazon Redshift Spectrum e con qualsiasi applicazione compatibile con Apache Hive Metastore.
  2. Riconoscimento automatico di schemi e partizioni: AWS Glue effettua automaticamente ricerche per indicizzazione nelle origini dati, identifica i formati e suggerisce schemi e trasformazioni. I crawler rendono più semplice automatizzare la creazione di tabelle e il caricamento di partizioni.
  3. Creazione di pipeline semplificata: il motore ETL di AWS Glue genera codice Python personalizzabile, riutilizzabile e portabile. Tale codice può essere modificato utilizzando ambienti IDE o notebook e condiviso con altri utenti mediante GitHub. Quando un processo ETL è pronto, è possibile pianificarne l'esecuzione nell'infrastruttura Spark flessibile e a scalabilità orizzontale di AWS Glue. AWS Glue è un servizio serverless, perciò gestisce automaticamente provisioning, configurazione e ricalibrazione delle risorse necessarie per eseguire processi ETL, consentendo una maggiore integrazione con i flussi di lavoro esistenti.
Consulta questa pagina per ulteriori informazioni sul catalogo dati di Glue.
 
D: È disponibile una guida dettagliata su come passare al catalogo dati di AWS Data Catalog?
Sì. Puoi trovare la guida dettagliata qui.
 
D: In quali regioni è disponibile Amazon Athena?
Consulta Prodotti e servizi regionali per maggiori informazioni sulla disponibilità del servizio Amazon Athena per regione.

Funzionalità in anteprima

D: Quali funzionalità di Athena sono disponibili in anteprima?
È possibile ora richiamare i modelli di machine learning di SageMaker in una query Athena SQL per eseguire l'inferenza. La possibilità di utilizzare il modello ML nelle query SQL consente di completare attività complesse, quali il rilevamento delle anomalie, l'analisi della coorte dei clienti e le previsioni di vendita, con semplici operazioni come la scrittura di una query SQL. Ulteriori informazioni.
 
Tramite la funzionalità di query federata, è possibile analizzare i dati archiviati in diversi spazi di archiviazione, sia locali che ospitati in AWS, all’interno della stessa query. Athena supporta query federate in origini di dati relazionali, non relazionali, oggetto o personalizzate. Inoltre, è possibile scrivere il proprio connettore di origine dati utilizzando la nostra SDK Query Federation. Ulteriori informazioni.
 
Con le funzioni definite dall’utente (User-Defined Function, UDF), è ora possibile scrivere le proprie funzioni in Java e richiamarle nella propria query SQL di Athena. Ulteriori informazioni.
 
È possibile connettere Athena al proprio Apache Hive Metastore. Se il tuo set di dati è archiviato in Amazon S3, oltre a utilizzare il catalogo di dati di AWS Glue come proprio spazio di archiviazione per metadati, puoi connettere Athena al tuo Metastore Hive utilizzando un connettore di origine dati basato su AWS Lambda. Ulteriori informazioni.
 
D: Come possono testare queste funzionalità di anteprima?
Tutte le query di Athena provenienti dal gruppo di lavoro AmazonAthenaPreviewFunctionality saranno considerate query di test per l’anteprima. Puoi creare e configurare un nuovo gruppo di lavoro AmazonAthenaPreviewFunctionality utilizzando le API o l’UX di Athena. Per creare un nuovo gruppo di lavoro, segui i passaggi indicati qui.
 
Le note a seguire sono importanti per l’utilizzo delle funzionalità in anteprima. Non modificare il nome del gruppo di lavoro. È possibile modificare le proprietà del gruppo di lavoro, per esempio attivando i parametri di CloudWatch e i pagamenti del richiedente. È possibile utilizzare la Console di Athena, i driver JDBC/ODBC o le API per inviare le tue query di prova. Assicurati di specificare il gruppo di lavoro: AmazonAthenaPreviewFunctionality quando invii le tue query di prova. La funzionalità in anteprima è disponibile solo nella regione Stati Uniti orientali 1. Se utilizzi Athena in qualsiasi altra regione e invii query utilizza il gruppo di lavoro AmazonAthenaPreviewFunctionality, la query non verrà inviata con successo. Le chiamate tra regioni AWS differenti non sono supportate nella modalità di anteprima.
 
D: Posso utilizzare le funzionalità di anteprima di Athena nel mio account di produzione in sicurezza?
Consigliamo di non integrare il proprio carico di lavoro di produzione nel gruppo di lavoro in anteprima AmazonAthenaPreviewFunctionality. Le prestazioni delle query nel gruppo di lavoro in anteprima possono variare rispetto a quelle negli altri gruppi di lavoro nel tuo account. Inoltre, potremmo aggiungere nuove funzionalità e correggere bug nel gruppo di lavoro in anteprima: le migliorie apportate potrebbero non essere compatibili in modo retroattivo.
 
D: Come possono inviare le mie query?
È possibile inviare delle query utilizzando la Console di Athena, le API di Athena o utilizzando il driver JDBC in anteprima di Athena con qualsiasi delle query pronte per l’uso e gli strumenti per la visualizzazione dei risultati quali SQL WorkBench.
 
D: Quali sono le modalità per fornire il mio feedback sulle funzionalità in anteprima?
Per noi il tuo feedback è importante. Inviaci un’e-mail con il tuo feedback all’indirizzo athena-feedback@amazon.com.
 
D: Saranno addebitati dei costi per l’utilizzo delle funzionalità in anteprima?
Durante l’anteprima, non verranno addebitati costi per i dati scansionati dalle origini di dati federate. Tuttavia, verranno addebitate le tariffe standard di Athena per i dati scansionati da Amazon S3. Inoltre, verranno applicate anche le tariffe standard per i servizi AWS che utilizzi con Athena, quali Amazon S3, AWS Lambda, AWS Glue, Amazon SageMaker e AWS Serverless Application Repository. Per esempio, saranno addebitati i costi di S3 per storage, richieste e trasferimento di dati tra regioni diverse. Di default, i risultati delle query vengono memorizzati in un bucket S3 personalizzato; anche su questi file vengono addebitate le tariffe standard di Amazon S3. Se utilizzi AWS Lambda, i costi addebitati dipendono dal numero di richieste per le funzioni e la loro durata, l'intervallo di tempo necessario per l'esecuzione del codice.
 
D: Cosa succede quando termina il periodo di anteprima?
Tutte le query inviate utilizzando il gruppo di lavoro AmazonAthenaPreviewFunctionality non verranno eseguite. Puoi continuare a inviare query da altri gruppi di lavoro. Se non specifichi alcun gruppo di lavoro, la query sarà automaticamente effettuata utilizzando il gruppo di lavoro primario predefinito. Ti preghiamo di notare che l’anteprima di qualsiasi funzionalità potrebbe terminare in qualsiasi momento.

Quando usare Athena rispetto ad altri servizi di Big Data

D: Qual è la differenza tra Amazon Athena, Amazon EMR e Amazon Redshift?
Servizi di query come Amazon Athena, data warehouse come Amazon Redshift e framework sofisticati di elaborazione dei dati come Amazon EMR rispondono a esigenze e casi d'uso diversi. È solo necessario scegliere lo strumento adatto per il tipo di lavoro. Amazon Redshift offre le prestazioni più veloci in termini di query per reporting aziendali e carichi di lavoro di business intelligence, soprattutto in presenza di SQL complessi con molteplici join e sottoquery. Amazon Elastic MapReduce (EMR) esegue framework di elaborazione altamente distribuiti come Hadoop, Spark e Presto in modo semplice e a costi contenuti rispetto a distribuzioni in locale. Amazon EMR è flessibile: è possibile eseguire applicazioni e codice personalizzati e definire calcoli, memoria, storage e parametri applicativi specifici per ottimizzare i requisiti di analisi. Amazon Athena offre il modo più semplice per eseguire query dei dati in S3, senza la necessità di installare o gestire server.
 
D: Quando è necessario utilizzare un data warehouse aziendale completo, come Amazon Redshift, rispetto a un servizio di query come Amazon Athena?
Un data warehouse come Amazon Redshift è la scelta ideale quando è necessario estrapolare dati da fonti diverse, come inventari, sistemi finanziari e di vendite retail, in un formato comune, quindi archiviarli per lunghi periodi di tempo allo scopo di creare report aziendali sofisticati da dati storici; in questi casi, un data warehouse come Amazon Redshift rappresenta la scelta migliore.
 
I data warehouse raccolgono i dati da diverse fonti aziendali e agiscono come "singola fonte di verità" per analisi e generazione di report. I data warehouse estrapolano i dati da fonti diverse in un unico formato, li organizzano, li archiviano, quindi eseguono query complesse e ad alta velocità per generare report aziendali. Il motore di query di Amazon Redshift è stato ottimizzato per garantire prestazioni ottimali in questo specifico caso d'uso, quando, cioè, è necessario eseguire query complesse su un numero considerevole di tabelle di database di grandi dimensioni. TPC-DS è un benchmark standard progettato per replicare questo caso d'uso e Redshift esegue queste query fino a 20 volte più velocemente rispetto a servizi di query ottimizzati per dati non strutturati. Se è necessario eseguire query su dati altamente strutturati con molteplici join in tabelle di grandi dimensioni, allora è consigliato usare Amazon Redshift.
 
Servizi di query come Amazon Athena sono invece utili per seguire query interattive di dati direttamente in Amazon S3, senza preoccupazioni relative alla formattazione dei dati o alla gestione dell'infrastruttura. Ad esempio, Athena è la scelta ottimale se è necessario eseguire una query veloce su alcuni log Web per risolvere una problematica di performance locale. Con i servizi di query puoi iniziare a operare in tempi brevi. Devi semplicemente definire una tabella per i dati e poi iniziare a eseguire le query con SQL standard.
 
È possibile anche usare entrambi i servizi. Se i dati vengono collocati in Amazon S3 prima di essere caricati su Amazon Redshift, questi dati possono essere registrati e oggetto di query da parte di Amazon Athena.
 
D: Quando dovrei usare Amazon EFS invece che Amazon Athena?
Amazon EMR offre molto di più rispetto alla semplice esecuzione di query SQL. Con EMR è possibile eseguire un'ampia gamma di attività di elaborazione dei dati per le applicazioni scalate orizzontalmente, come machine learning, analisi dei grafici, trasformazione dei dati, streaming dei dati e, potenzialmente, tutto ciò che può essere scritto sotto forma di codice. È consigliabile usare Amazon EMR con un codice personalizzato creato per elaborare e analizzare set di dati di dimensioni significative con i più aggiornati framework di elaborazione dei big data come Spark, Hadoop, Presto e Hbase. Amazon EMR offre il pieno controllo in termini di configurazione dei cluster e del software installato su di essi.
 
Amazon Athena è la scelta ottimale per eseguire query SQL interattive e ad hoc sui dati di Amazon S3, senza gestire infrastrutture o cluster.
 
D: Posso usare Amazon Athena per eseguire query di dati che elaboro con Amazon EMR?
Sì, Amazon Athena supporta molti dei formati di dati di Amazon EMR. Il catalogo dati di Athena è compatibile con il database metastore Hive. Se utilizzi EMR e hai già un database metastore Hive, devi semplicemente eseguire le istruzioni DDL su Amazon Athena e iniziare quindi a eseguire direttamente le query sui dati senza influire sulle attività di Amazon EMR.
 
D: In quale modo la funzionalità di query federata di Athena si rapporta agli altri servizi AWS? [anteprima]
La query federata in Athena ti consente di eseguire query SQL in diverse origini di dati relazionali, non relazionali e personalizzate. In questo modo, avrai un modo unificato per eseguire query SQL in vari spazi di archiviazione di dati.
 
D: In quale modo la funzionalità di machine learning di Athena si rapporta agli altri servizi AWS? [anteprima]
Le query SQL di Athena possono richiamare modelli di machine learning distribuiti su Amazon SageMaker. È possibile specificare la posizione in Amazon S3 in cui archiviare i risultati di tali query SQL di Athena.
 
 

Creare tabelle, format di dati e partizioni

D: In che modo posso creare tabelle e schemi per i dati su Amazon S3?
Amazon Athena utilizza Apache Hive DDL per definire le tabelle. È possibile eseguire istruzioni DDL tramite la console di Athena, il driver ODBC o JDBC, l'API o la procedura guidata per la creazione di tabelle di Athena. Se il catalogo dati di AWS Glue viene utilizzando con Athena, è anche possibile utilizzare i crawler di Glue per individuare automaticamente schemi e partizioni. I crawler di AWS Glue si collegano a un datastore, ne mettono a confronto i contenuti con un elenco di classificatori ordinato per priorità per estrarne lo schema dei dati e altre statistiche, quindi usa i metadati per compilare il catalogo dati di AWS Glue. I crawler possono essere avviati periodicamente per rilevare nuovi dati disponibili alla scansione o modifiche ai dati esistenti, incluse eventuali modifiche alle definizioni di tabella. Aggiungeranno nuove tabelle, nuove partizioni nelle tabelle esistenti e nuove versioni delle definizioni di tabella. Inoltre, possono essere personalizzati per classificare tipi di file personalizzati.
 
Quando viene creato un nuovo schema di tabella in Amazon Athena, viene archiviato nel catalogo dati e utilizzato per l'esecuzione di query, ma nessuna modifica viene apportata ai dati in S3. Athena usa un approccio noto come Schema on Read che consente di proiettare lo schema sui dati nel momento in cui viene eseguita una query. Non è richiesto quindi alcun caricamento o trasformazione dei dati. Ulteriori informazioni sulla creazione di tabelle.
 
D: Quali sono i formati di dati supportati da Amazon Athena?
Amazon Athena supporta un'ampia gamma di formati di dati come CSV, TSV, JSON o Textfiles e formati colonnari open source come Apache ORC e Apache Parquet. Athena supporta anche dati compressi nei formati Snappy, Zlib, LZO e GZIP. Con la compressione, il partizionamento e l'utilizzo di formati colonnari è possibile migliorare le prestazioni e ridurre i costi.
 
D: Quali sono i tipi di dati supportati da Amazon Athena?
Amazon Athena supporta tipi di dati semplici come INTEGER, DOUBLE, VARCHAR, e tipi di dati complessi, come MAPS, ARRAY e STRUCT.  
 
D: Posso eseguire una query di Hive su Athena?
Amazon Athena utilizza Hive solo per DDL (Data Definition Language) e per la creazione/modifica ed eliminazione di tabelle e/o partizioni. Per un elenco completo delle istruzioni supportate fai clic qui. Athena utilizza Presto per l'esecuzione di query SQL su Amazon S3. È possibile eseguire istruzioni SQL SELECT compatibili con ANSI per query dei dati in Amazon S3.
 
D: Che cos'è SerDe?
SerDe sta per Serializzatore/Deserializzatore e consiste in librerie che suggeriscono a Hive come interpretare i formati di dati. Le istruzioni DDL di Hive richiedono la specifica di un SerDe per indicare al sistema come interpretare i dati a cui si fa riferimento. Amazon Athena utilizza SerDe per interpretare i dati letti in Amazon S3. Il concetto di SerDe in Athena è lo stesso utilizzato in Hive. Amazon Athena supporta i seguenti SerDe:
  1. Registri Web di Apache: "org.apache.hadoop.hive.serde2.RegexSerDe"
  2. CSV: "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"
  3. TSV: "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"
  4. Delimitatori personalizzati: "org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe"
  5. Parquet: "org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe"
  6. Orc: "org.apache.hadoop.hive.ql.io.orc.OrcSerde"
  7. JSON: “org.apache.hive.hcatalog.data.JsonSerDe” OR org.openx.data.jsonserde.JsonSerDe
 
D: Posso aggiungere il mio SerDe (Serializzatore/Deserializzatore) ad Amazon Athena?
Al momento, non è possibile aggiungere il proprio SerDe ad Amazon Athena. Per noi i tuoi suggerimenti sono importanti, per cui se desideri aggiungere un SerDe, contatta il team di Athena all'indirizzo Athena-feedback@amazon.com
 
D: Ho creato file Parquet/ORC con Spark/Hive. È possibile eseguire query su questi file tramite Athena?
Sì, i file Parquet e ORC creati con Spark possono essere letti in Athena.
 
D: Alcuni miei dati provengono da Kinesis Firehose. In che modo posso eseguire query su questi dati con Athena?
Se i dati Kinesis Firehose sono archiviati in Amazon S3, è possibile eseguire le query utilizzando Amazon Athena. È sufficiente creare uno schema per i dati in Athena e cominciare a eseguire le query. È consigliabile organizzare i dati in partizioni per ottimizzare le prestazioni. È possibile aggiungere partizioni create da Kinesis Firehose utilizzando le istruzioni ALTER TABLE DDL. Ulteriori informazioni sulle partizioni.
 
D: Amazon Athena supporta il partizionamento dei dati?
Sì. Amazon Athena consente di eseguire una partizione dei dati su qualsiasi colonna. Le partizioni consentono di limitare la quantità di dati su cui ciascuna query esegue la scansione, ottenendo così una riduzione dei dati e un'ottimizzazione delle prestazioni. È possibile specificare lo schema di partizionamento tramite la clausola PARTITIONED BY nell'istruzione CREATE TABLE. Ulteriori informazioni sul partizionamento dei dati.
 
D: In che modo è possibile aggiungere nuovi dati a una tabella esistente di Amazon Athena?
Se i dati sono partizionati è necessario eseguire una query sui metadati (ALTER TABLE ADD PARTITION) per aggiungere la partizione ad Atena nel momento in cui in Amazon S3 sono disponibili nuovi dati. Se i dati non sono partizionati, è sufficiente aggiungere i nuovi dati (o file) al prefisso esistente per aggiungerli automaticamente ad Athena. Ulteriori informazioni sul partizionamento dei dati.
 
D: Il volume di dati di log in Amazon S3 è già sufficientemente elevato. Posso usare Amazon Athena per eseguire query su questi dati?
Sì, con Amazon Athena è semplice eseguire query SQL standard su dati di log esistenti. Athena esegue le query sui dati direttamente da Amazon S3, per cui non è necessario alcun movimento o caricamento di dati. È sufficiente definire uno schema con le istruzioni DDL per poi iniziare a eseguire le query.

Query e formati di dati

D: Quali tipi di query sono supportate da Amazon Athena?
Amazon Athena supporta le query SQL ANSI. Amazon Athena utilizza Presto, un motore SQL open source, in-memory e distribuito, in grado di gestire analisi complesse, inclusi join di grandi dimensioni, funzioni finestra e array.

D: Posso usare Amazon QuickSight con Amazon Athena?
Sì. Amazon Athena si integra con Amazon QuickSight per una migliore visualizzazione dei dati archiviati in Amazon S3.

D: Athena supporta altri strumenti di BI e client SQL?
Sì. Amazon Athena è dotato di un driver ODBC e JDBC che può essere utilizzato con altri strumenti di business intelligence e client SQL. Ulteriori informazioni su come utilizzare un driver ODBC o JDBC con Athena.

D: In che modo posso accedere alle funzioni supportate da Amazon Athena?
Fai clic qui per maggiori informazioni sulle funzioni supportate da Amazon Athena.
 
D: In che modo posso migliorare le prestazioni della mia query?
È possibile migliorare le prestazioni delle query con la compressione, il partizionamento o la conversione dei dati in formati colonnari. Amazon Athena supporta formati di dati colonnari open source come Apache Parquet e Apache ORC. La conversione dei dati in un formato colonnare compresso consente di ridurre i costi e di migliorare le prestazioni delle query, grazie a un numero inferiore di dati presente in S3 da scansionare.
 
D: Athena supporta le funzioni definite dall'utente (UDF)?[anteprima]
Amazon Athena ora supporta funzioni definite dall’utente (UDF) per permetterti di scrivere funzioni scalari personalizzate e richiamarle in query SQL. Mentre Athena fornisce funzioni incorporate, le UDF consentono di eseguire elaborazioni personalizzate come la compressione e la decompressione dei dati, la redazione di dati sensibili o l'applicazione di decrittografia personalizzata.

È possibile scrivere le funzioni definite dall'utente (UDF) in Java utilizzando L’SDK Query Federation di Athena. Quando un’UDF viene utilizzata in una query SQL inviata ad Athena, viene richiamata ed eseguita su AWS Lambda. Le funzioni definite dall'utente possono essere utilizzate in entrambe le clausole SELECT e FILTER di una query SQL. È possibile richiamare più funzioni definite dall'utente nella stessa query.
 
D: In cosa consiste l’esperienza dell’utente quando si scrive un’UDF? [anteprima]
Per scrivere la tua UDF puoi utilizzare l’SDK Query Federation di Athena. Per degli esempi di UDF, consulta questa pagina. Puoi caricare la tua funzione su AWS Lambda e poi richiamarla nella tua query Athena. Fai clic qui per iniziare.
 
Athena richiamerà la tua UDF su un batch di righe del set di dati per ottimizzare le prestazioni.

Federated query [anteprima]

D: Perché dovrei utilizzare le query federate in Athena? [anteprima]
Gli sviluppatori spesso scelgono database relazionali, chiave-valore, documento, in memoria, di ricerca, a grafo, di serie temporali e di libro mastro in concomitanza con l’archiviazione dei propri dati su S3. Eseguire analisi su dati distribuiti in una vasta gamma di origini di dati può essere complesso e può richiedere molto tempo. Gli analisti devono spesso apprendere nuovi linguaggi di programmazione e architetture di database, così come costruire pipeline complesse capaci di estrarre, trasformare e creare copie dei dati prima che gli stessi li possano analizzare. Allo stesso modo, i data scientist spesso hanno bisogno di estrarre i dati da più origini di dati per creare un set di dati adatto per estrazioni e addestramenti personalizzati. Questo processo richiede molto tempo e non permette di costruire piattaforme self service in cui gli analisti e i data scientist possono costruire delle pipeline in modo semplice in grado di estrarre i dati da più origini di dati. Gli analisti, generalmente, devono dipendere dai team di ingegneristica dei dati per costruire tali pipeline, processo che si traduce in ritardi e complessità. La funzionalità di query federata elimina tale complessità fornendo un servizio semplice, serverless ed economico che permette di eseguire query SQL su una vasta gamma di origini di dati. Inoltre, il servizio viene fatturato in base alle query eseguite. Puoi utilizzare i ben conosciuti costrutti SQL per interrogare i dati in più origini di dati per analisi rapide, o utilizzare query SQL programmate per estrarre e trasformare i dati da più origini di dati e poi archiviarli in S3 per eseguire analisi ulteriori.
 
Inoltre, nel caso tu disponga di database e cataloghi proprietari o personalizzati, le query federate di Athena possono essere estese: ti permettono di scrivere i tuoi connettori o di utilizzarne altri sviluppati dalla community per eseguire query SQL su qualsiasi origine di dati o catalogo personalizzato di tua scelta. Vi sono implementazioni di riferimento open source per diversi origini di dati di questo tipo, i quali possono essere utilizzati come fondamenta per svilupparne di nuovi.
 
D: Quali casi d’uso le query federate di Athena supportano? [anteprima]
Le query federate di Athena supportano diversi casi d’uso. Un esempio è rappresentato dalle analisi specifiche, in cui spesso è necessario utilizzare dei dati archiviati in datastore differenti. Prendi in considerazione un’azienda di e-commerce che utilizza Amazon ElasticCache Redis per archiviare i propri ordini attivi, Amazon DocumentDB o MongoDB per archiviare informazioni specifiche dei clienti quali indirizzi e-mail, indirizzi di spedizione, Amazon CloudWatch Logs (ad es., di datastore personalizzato) per archiviare gli eventi di registro dell’applicazione preposta all’elaborazione degli ordini. In questo caso, è possibile che sia necessario comprendere cosa sia successo con un ordine specifico, riportato come in ritardo. È possibile eseguire una semplice query per unire i dati distribuiti in più datastore per eseguire analisi in modo rapido.
 
Un altro esempio sono le operazioni di ETL (Extract, Transform, Load) a partire da più origini di dati. Eseguire analisi spesso richiede di riunire i dati a partire da più origini di dati, così che possano essere ulteriormente pubblicati in un warehouse di dati o così che vengano interrogati utilizzando motori quali Athena, Apache, Spark o Apache Presto. Una tale operazione di unificazione richiede la costruzione di pipeline di dati che possano estrarre e trasformare i dati a partire da più fonti di dati in modo programmato. Costruire pipeline di dati spesso significa che il personale dovrà apprendere nuovi linguaggi di programmazione quali Python e Java, o utilizzare sistemi distribuiti su vasta scala quali Apache Spark. Gli analisti devono spesso affidarsi ai team di ingegneristica dei dati per costruire tali pipeline. Con le query federate di Amazon Athena, qualsiasi individuo nella tua organizzazione può realizzare velocemente la propria pipeline sotto forma di dichiarazioni SQL e fare in modo che venga eseguita secondo un programma.
 
Un terzo esempio è costituito dalle estrazioni per il machine learning: i data scientist spesso hanno bisogno di estrarre i dati da più origini di dati per creare un set di dati adatto per estrazioni e addestramenti personalizzati. Questo processo richiede molto tempo e impedisce la costruzione di piattaforme self service.
 
D: Come funzionano i connettori di origini di dati di Athena?[anteprima]
È possibile eseguire query SQL su nuovi datastore registrandoli su Athena. Per registrare un datastore, è necessario utilizzare un connettore di origini di dati specifico per l’origine in questione. Un connettore può essere utilizzato per estendere la capacità di interrogazione di Athena per nuove origini di dati. Puoi utilizzare i connettori open source forniti da AWS, costruire il tuo o perfezionare i connettori esistenti, così come utilizzare i connettori della community o costruiti per il marketplace. In base al tipo di origine di dati, un connettore gestisce le informazioni di metadati, identifica parti specifiche della tabella da scansionare, leggere o filtrare, e gestisce i parallelismi.
 
I connettori vengono eseguiti come funzioni AWS Lambda nell’account del cliente. Ciascun connettore è composto da due funzioni Lambda specifiche per l’origine di dati: una per i metadati e l’altra per la lettura delle tracce. È possibile distribuire le funzioni Lambda utilizzando il codice presente nel repository Github; oppure, è possibile utilizzare le funzioni Lambda pre-distribuite dall’AWS Serverless Application Repository. Una volta distribuite le funzioni Lambda, queste producono un Amazon Resource Name (o ARN) univoco. È necessario registrare tutti gli ARN prodotti con Athena. Registrare un ARN permette ad Athena di comprendere con quale funzione Lambda comunicare durante l’esecuzione della query. Una volta che entrambi gli ARN vengono registrati, è possibile interrogare l’origine di dati registrata. È necessario ripetere la procedura per ciascuna origine di dati.
 
Quando una query viene eseguita su un’origine di dati federata, Athena dividerà le invocazioni di Lambda che leggono i metadati e i dati in parallelo. Il numero di invocazioni parallele dipende dai limiti di concorrenza di Lambda presenti nel proprio account. Per esempio, se si dispone di un limite di 300 invocazioni di Lambda concorrenti, Athena sarà in grado di invocare 300 funzioni Lambda parallele per la lettura delle tracce. Per due query eseguite in parallelo, Athena invocherà due volte il numero di esecuzioni concorrenti. È possibile definire il proprio limite così da controllare i costi e il throughput per l’origine dei dati.
 
D: Quali connettori sono disponibili per le query federate di Athena? [anteprima]
Athena offre connettori per origini di dati open source per Apache HBase, Amazon DocumentDB, Amazon DynamoDB e Amazon CloudWatch Logs e CloudWatch Metrics. Inoltre, Athena offre un connettore JDBC generico che si connette a qualsiasi origine di dati conforme con JDBC e un connettore AWS Configuration Management Database (CMDB), il quale permette ai clienti di eseguire query sui metadati delle risorse AWS.
 
D: Come possono utilizzare l’SDK per le query federate? [anteprima]
È possibile utilizzare l’SDK per le query federate per creare il tuo connettore da utilizzare quando interroghi un’origine di dati utilizzando Athena. Per ciascun connettore, vengono fornite delle implementazioni di modello. Tali modelli possono essere utilizzati come fondamento per creare i propri connettori. Per cominciare a utilizzare i connettori, consulta la nostra documentazione.
 
D: Possono utilizzare le capacità per le query federate per operazioni di ETL? In cosa consiste il flusso di lavoro? [anteprima]
Tutti i risultati delle query di Athena vengono archiviati in una location di Amazon S3 impostata dall’utente. È possibile utilizzare le capacità per query federate di Athena per eseguire una query che scansiona le origini di dati di propria scelta e archivia i risultati ottenuti in S3 in una query SQL. Sono supportati i costrutti SQL comuni quali JOIN, clausole Filter, ecc. Inoltre, è possibile definire le proprie funzioni utilizzando la funzionalità di UDF di Athena e pre- o post-elaborare i set di dati ottenuti.
 
D: Verrà rilasciato anche il supporto per le SDK in linguaggi di programmazione diversi da JAVA? [anteprima]
Per favore, indicaci quali linguaggi di programmazione vorresti che siano supportati inviandoci un’e-mail all’indirizzo athena-feedback@amazon.com.
 
D: Quali sono i limiti conosciuti per l’SDK per le query federate? [anteprima]
In fase di anteprima, l’SDK per le query federate supporta solamente le letture e le funzioni Lambda basate su JAVA.

Machine learning [anteprima]

D: Quali casi d’uso Athena supporta per il machine learning incorporato? [anteprima]
I casi d’uso per il machine learning di Athena variano in base a settori diversi, così come negli esempi a seguire. Gli analisti di dati per i rischi finanziari possono eseguire analisi “what if” e simulazioni Monte Carlo. Gli analisti aziendali possono eseguire regressioni lineari o modelli di previsione per predire i valori futuri, così da poter creare dashboard più ricchi e lungimiranti per predire i profitti. Gli analisti di marketing possono utilizzare modelli di clustering k-means per poter determinare i diversi segmenti di clienti. Gli analisti di sicurezza possono utilizzare modelli di regressione logistici (bivariante o multivariante) per rilevare anomalie e individuare gli incidenti di sicurezza a partire da vari registri.
 
D: Quali modelli di ML possono essere utilizzati con Athena? [anteprima]
Athena può richiamare qualsiasi modello di machine learning distribuito su Amazon SageMaker. Ciò permette di avere la flessibilità di addestrare il proprio modello utilizzando dati proprietari, o di utilizzare un modello pre-addestrato e distribuito su SageMaker. Per esempio, un modello di analisi del cluster è molto probabile che sia addestrato a partire dai propri dati, perché è necessario categorizzare le nuove tracce nelle stesse categorie utilizzate per le tracce precedenti. Invece, per predire eventi sportivi in tempo reale, è possibile utilizzare un modello disponibile a livello pubblico, poiché i dati di addestramento utilizzati possono essere già nel dominio pubblico. I modelli di previsione specifici per settore o dominio saranno tipicamente addestrati su dati proprietari in SageMaker, mentre i modelli di ML indifferenziati potrebbero utilizzare dati esterni.
 
D: Posso addestrare il mio modello di ML utilizzando Athena? [anteprima]
Non è possibile addestrare e distribuire i propri modelli di ML su SageMaker utilizzando Athena. È possibile addestrare il proprio modello di ML o utilizzare un modello esistente pre-addestrato distribuito su SageMaker utilizzando Athena. Per maggiori informazioni sui passaggi per addestrare un modello su SageMaker, consulta la relativa documentazione.
 
D: Posso eseguire l’inferenza su modelli distribuiti su altri servizi quali Comprehend, Forecasting o modelli distribuiti sul mio cluster EC2? [anteprima]
Athena supporta solo il richiamo di modelli di ML distribuiti su SageMaker. Accettiamo feedback su quali altri servizi desideri utilizzare con Athena. Inviaci un’e-mail con il tuo feedback all’indirizzo athena-feedback@amazon.com.
 
D: Quali sono le implicazioni in termini di prestazioni con l’utilizzo delle query di Athena con l’inferenza di SageMaker? [anteprima]
Miglioriamo costantemente le prestazioni delle nostre funzionalità e servizi. Per ottimizzare le prestazioni delle tue query di ML di Athena, raccogliamo le righe in batch quando viene invocato il tuo modello di ML di SageMaker per l’inferenza. Al momento, non supportiamo sovrascritture per le dimensioni del batch di righe.
 
D: Quali funzionalità sono supportate dal ML di Athena? [anteprima]
Athena offre capacità di inferenza di ML (previsione) all’interno di un’interfaccia SQL. Inoltre, è possibile chiamare una UDF (presente anche nell’anteprima) per invocare la logica di pre- o post-elaborazione sul set di risultati ottenuto. Gli input possono includere qualsiasi colonna, traccia o tabella; inoltre, è possibile raggruppare più chiamate in batch per migliorare la scalabilità. È possibile eseguire l’inferenza nella fase di selezione o nella fase di filtraggio. Per ulteriori informazioni, consulta la documentazione.
 
D: Quali modelli di ML posso utilizzare? [anteprima]
Amazon SageMaker supporta diversi algoritmi di ML. È possibile creare un modello di ML proprietario e distribuirlo su Amazon SageMaker. Per esempio, un modello di analisi del cluster è molto probabile che sia addestrato a partire dai propri dati, perché è necessario categorizzare le nuove tracce nelle stesse categorie utilizzate per le tracce precedenti. Invece, per predire eventi sportivi in tempo reale, è possibile utilizzare un modello disponibile a livello pubblico, poiché i dati di addestramento utilizzati possono essere nel dominio pubblico.
 
Ci aspettiamo che i modelli di previsione specifici per settore o dominio saranno tipicamente addestrati su dati proprietari in SageMaker, mentre i modelli di ML indifferenziati (quali la traduzione automatica) potrebbero utilizzare dati esterni.

Sicurezza e disponibilità

D: Come si controlla l'accesso ai dati?
Amazon Athena consente di controllare l'accesso ai dati mediante le policy di AWS Identity and Access Management (IAM), le liste di controllo degli accessi (ACL) e le policy dei bucket Amazon S3. Con le policy di IAM, è possibile fornire agli utenti di IAM controllo granulare sui bucket S3. Controllando l'accesso ai dati in S3, è possibile limitare il numero di utenti che possono eseguire le query con Athena.
 
È possibile eseguire query dei dati crittografati in Amazon S3 con Athena?
Sì, è possibile eseguire query di dati crittografati mediante crittografia sul lato server con chiavi di crittografia gestite da Amazon S3, crittografia sul lato server con AWS Key Management Service (KMS) – Managed Keys e crittografia sul lato client con chiavi gestite da KMS. Inoltre, Amazon Athena si integra con KMS e fornisce l'opzione di crittografia dei set di risultati.
 
D: Athena è altamente disponibile?
Sì. Amazon Athena è un servizio con disponibilità elevata che esegue query utilizzando risorse di calcolo che si trovano in diverse strutture e, in base alla disponibilità di queste, instrada automaticamente le query. Athena usa Amazon S3 come datastore, rendendo i dati altamente disponibili e durevoli. Amazon S3 fornisce un'infrastruttura durevole per memorizzare i dati più importanti ed è progettato per garantire una durabilità degli oggetti pari al 99,999999999%. I dati vengono archiviati in modo ridondante in più strutture e in più dispositivi all'interno di ogni struttura.
 
D: Posso fornire l'accesso tra account al bucket S3 di qualcun altro?
Sì, è possibile fornire l'accesso tra account ad Amazon S3.

Prezzi e fatturazione

D: In che modo viene calcolato il prezzo di Amazon Athena?
Il prezzo di Amazon Athena viene calcolato per query e l'importo varia a seconda della quantità di dati controllati dalla query stessa. In Amazon S3 è possibile archiviare i dati in formati diversi. Con la compressione, il partizionamento o la conversione dei dati in formati di storage colonnari è possibile ridurre i costi perché i dati in scansione sono in quantità inferiore. Se i dati vengono convertiti in formato colonnare, Athena è in grado di leggere solo le colonne necessarie per l'elaborazione della query. Visita la pagina dei prezzi di Athena per maggiori dettagli
 
D: Perché il costo del servizio è inferiore se uso un formato colonnare?
Il prezzo di Amazon Athena viene calcolato in base alla quantità di dati controllati per ciascuna query. Se i dati sono compressi, Amazon Athena deve controllare meno dati. La conversione dei dati in formati a colonne permette invece ad Athena di leggere solo le colonne necessarie per l'elaborazione. Anche il partizionamento dei dati consente ad Athena di ridurre la quantità di dati in scansione. In questo modo si ottiene una riduzione dei costi e prestazioni ottimizzate. Per maggiori dettagli dai un'occhiata a un esempio di prezzi.
 
D: In che modo posso diminuire i costi?
È possibile risparmiare dal 30 al 90% sui costi delle query e migliorare le prestazioni con la compressione, il partizionamento e la conversione dei dati in formati colonnari. Ciascuna di queste operazioni consente di ridurre la quantità di dati che Amazon Athena deve controllare per eseguire una query. Amazon Athena supporta Apache Parquet e Apache ORC, due dei formati di dati colonnari open source più diffusi. Nella console di Athena è possibile visualizzare la quantità di dati controllati per ogni query.
 
D: Con Amazon Athena mi vengono addebitate anche le query non riuscite?
No, per le query non riuscite non viene addebitato alcun costo.
 
D: Con Amazon Athena mi vengono addebitate anche le query annullate?
Sì, se una query viene annullata manualmente, verrà addebitata la quantità di dati controllati fino al momento dell'annullamento della query stessa.
 
D: Ci sono altri costi aggiuntivi associati ad Amazon Athena?
Amazon Athena esegue le query sui dati direttamente da Amazon S3, per cui i dati in origine vengono fatturati secondo le tariffe di S3. Quando Amazon Athena esegue una query, i risultati vengono archiviati in un bucket S3 a scelta dell'utente e vengono fatturati i costi S3 standard per i risultati ottenuti. È consigliabile monitorare questi bucket e usare policy del ciclo di vita per verificare i dati conservati.
 
D: Sono previsti costi di utilizzo per il catalogo dati di AWS Glue?
Sì, i costi di utilizzo del catalogo dati di AWS Glue vengono addebitati separatamente. Fai clic qui per ulteriori informazioni sulle tariffe del catalogo dati di Glue.
Immagine pagina web
Visita la pagina dei prezzi

Scopri le opzioni dei prezzi.

Ulteriori informazioni 
Account-signup image
Registrati per creare un account gratuito

Ottieni accesso istantaneo al piano gratuito di AWS. 

Registrati 
Toolbox image
Inizia subito nella console

Inizia subito a utilizzare Amazon Athena nella Console di gestione AWS.

Accedi