I prezzi di Amazon Athena sono calcolati in base alle query effettivamente eseguite. I costi addebitati dipendono dalla quantità di dati scansionati da ciascuna query. Per ridurre in modo significativo i costi e migliorare le prestazioni, puoi comprimere, partizionare o convertire i dati in un formato a colonne, perché queste operazioni consentono di ridurre la quantità di dati che Athena dovrà scansionare per completare l'esecuzione della query.

Amazon Athena è disponibile al pubblico

Nozioni di base su Amazon Athena
  • 5 USD per TB di dati scansionati.  

Puoi risparmiare dal 30% al 90% sui costi di query e ottenere migliori prestazioni comprimendo, partizionando e convertendo i tuoi dati in formati a colonne.

I costi vengono calcolati sul numero di byte scansionati da Amazon Athena approssimati al MB intero più vicino; il volume minimo di dati per ciascuna query è di 10 MB. Non è previsto alcun costo per le istruzioni DDL (Data Definition Language) quali CREATE/ALTER/DROP TABLE, le istruzioni di gestione delle partizioni o le query con errori. I costi delle query annullate viene calcolato in base alla quantità di dati scansionati.

La compressione dei dati consente ad Athena di scansionare una quantità inferiore di dati. La conversione dei dati in formati a colonne permette invece ad Athena di leggere solo le colonne necessarie per l'elaborazione. Athena supporta Apache ORC e Apache Parquet. 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. Nella console di Athena viene visualizzato il volume di dati scansionati da ciascuna query. Per ulteriori informazioni, consulta l'esempio di prezzi di Athena.

Amazon Athena esegue le query direttamente sui dati in Amazon S3. Non sono previsti costi aggiuntivi per l'esecuzione delle query con Athena. Saranno però addebitati i costi standard di S3 per storage, richieste e trasferimento di dati. 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 il catalogo dati di AWS Glue viene utilizzato con Athena, saranno addebitate le tariffe standard del catalogo dati di AWS Glue. Per ulteriori informazioni, fai clic qui.

Supponiamo di avere una tabella con 3 colonne di dimensioni equivalenti, memorizzata in Amazon S3 come file di testo non compresso delle dimensioni totali di 3 TB. Per eseguire una query su una singola colonna della tabella, Amazon Athena dovrà scansionare l'intero file, perché i formati di testo non possono essere divisi.

  • Il costo di questa query sarebbe di 15 USD. 3 TB scansionati, 3 * 5 USD/TB = 15 USD

Se comprimi il file con GZIP, il rapporto di compressione può essere di 3:1. In questo caso, la scansione sarebbe solo su un file di 1 TB. La stessa query sul file compresso costerebbe 5 USD. Athena scansionerà comunque l'intero file, ma poiché le dimensioni sono tre volte inferiori, sarà addebitato solo un terzo della prima scansione.

Se comprimi il file e lo converti in un formato a colonne, ad esempio Apache Parquet, ottieni un'ulteriore compressione con rapporto 3:1, senza modificare lo spazio occupato in Amazon S3 (1 TB). In questo caso, però, siccome Parquet adotta un formato a colonne, Amazon Athena può leggere solo la colonna interessata dalla query. Nel nostro caso, la query farà riferimento a una sola colonna, però Athena dovrà leggere solo la colonna in questione e potrà ignorare due terzi del file. Athena scansionerà quindi solo un terzo del file, equivalente a 0,33 TB di dati in S3.

  • Il costo di questa query sarebbe di 1,67 USD. La compressione e la divisione in colonne hanno consentito di ridurre i costi, ognuna, a un terzo.
    Dimensioni del file = 3 TB / 3 = 1 TB. Dati scansionati per una colonna singola = 1 TB / 3 = 0,33 TB. Prezzo per 0,33 TB = 0,33 * 5 USD/TB = 1,67 USD