Amazon Athena es un servicio de análisis interactivo y sin servidor basado en marcos de código abierto que permite analizar petabytes de datos en el lugar donde se encuentran. Con Athena, puede utilizar SQL o Apache Spark y no es necesario configurar ni administrar ninguna infraestructura. El esquema de precios es sencillo: usted paga en función de los datos procesados o de los cálculos utilizados.
Para comenzar, cree un grupo de trabajo que le permitirá especificar el motor de consulta, el directorio de trabajo en Amazon Simple Storage Service (S3) para guardar los resultados de la ejecución, los roles de AWS Identity and Access Management (IAM) (si es necesario) y las etiquetas de los recursos. Puede utilizar los grupos de trabajo para separar usuarios, equipos, aplicaciones o cargas de trabajo, establecer límites a la cantidad de datos que puede procesar cada consulta o todo el grupo de trabajo y hacer un seguimiento de los costos. En función del grupo de trabajo que cree, puede (a) ejecutar consultas basadas en SQL y pagar por la cantidad de datos analizados o cálculo utilizado, o (b) ejecutar el código Python de Apache Spark y pagar una tarifa por hora por la ejecución de su código.
Consultas SQL
Consultas SQL con capacidad aprovisionada
Apache Spark
Costos adicionales
Athena hace consultas en los datos directamente desde Amazon S3. La realización de consultas en sus datos con Athena no conlleva cargos de almacenamiento adicionales. Se le cobran las tarifas estándar de S3 por el almacenamiento, solicitudes y la transferencia de datos. De forma predeterminada, los resultados de las consultas se almacenan en el bucket de S3 que elija y se facturan según las tarifas estándar de S3.
- S3 factura cuando sus cargas de trabajo leen, almacenan y transfieren datos. Esto incluye las consultas completadas correcta e incorrectamente. De forma predeterminada, los resultados de las consultas SQL y los resultados de los cálculos de Spark se almacenan en el bucket de S3 que elija y se facturan según las tarifas estándar de S3. Consulte los precios de Amazon S3 para obtener más información.
- Si usa el Catálogo de datos de AWS Glue con Athena, se cobrarán las tarifas estándar del catálogo de datos. Para obtener más información, visite la página de precios de AWS Glue.
- Athena factura las consultas SQL en orígenes de datos federados (datos no almacenados en S3) por terabyte (TB) analizado por todos los orígenes de datos y se redondea al megabyte más cercano con un mínimo de 10 megabytes por consulta, a menos que se utilice la capacidad aprovisionada. Estas consultas también invocan funciones de AWS Lambda en su cuenta y se cobran las tarifas estándar por el uso de Lambda. Las funciones de Lambda que invocan las consultas federadas están sujetas al nivel gratuito de Lambda. Visite la página de precios de Lambda para obtener más detalles.
Ejemplos de precios
Ejemplo 1: consulta SQL
Considere una tabla con 4 columnas del mismo tamaño, almacenada en Amazon S3 como archivo de texto sin comprimir con un tamaño total de 3 TB. Para hacer una consulta en los datos de una sola columna de la tabla, Amazon Athena tendrá que escanear todo el archivo, ya que los formatos de texto no se pueden dividir.
- La consulta costaría 15 USD. (El precio por 3 TB escaneados es 3 * 5 USD/TB = 15 USD)
Si comprime el archivo con GZIP, podrá experimentar una ganancia de 3:1 en la compresión. En ese caso, dispondría de un archivo comprimido de 1 TB. Realizar la misma consulta en este archivo costaría 5 USD. Athena tiene que volver a escanear todo el archivo, pero como su tamaño es tres veces inferior, solo paga un tercio en comparación con el caso anterior. Si comprime su archivo y lo convierte a un formato de columnas como Apache Parquet, lo que proporciona una compresión de 3:1, seguiría teniendo 1 TB de datos en S3. Sin embargo, en este caso, como Parquet tiene un formato de columnas, Athena puede leer solo la columna pertinente a la consulta ejecutada. Como la consulta en cuestión solo hace referencia a una única columna, Athena lee solamente esa columna, y puede evitar leer tres cuartos del archivo. Puesto que Athena solo lee un cuarto del archivo, escanea solo 0,25 TB de datos de S3.
- Esta consulta costaría 1,25 USD. Eso supone el triple de ahorro de la compresión y el cuádruple de ahorro por leer solo una columna.
(Tamaño del archivo= 3 TB/3 = 1 TB. Datos escaneados al leer una sola columna = 1 TB/4 = 0,25 TB. Precio por 0,25 TB = 0,25 * 5 USD/TB = 1,25 USD)
Ejemplo 2: consultas SQL con capacidad aprovisionada
Supongamos que su equipo ofrece una aplicación web que proporciona análisis de autoservicio a los usuarios que envían consultas durante el horario laboral y esperan que sus consultas se completen en un periodo predecible. La semana pasada, los usuarios de la aplicación enviaron un total de 10 000 consultas que analizaron 500 TB de datos. Desea utilizar la capacidad aprovisionada para que lo ayude a mantener una experiencia de usuario constante a medida que aumenta el número de usuarios. A partir del análisis de sus consultas, usted determina que 96 DPU son suficientes para su carga de trabajo actual.
- Para un día hábil, el costo de admitir esta carga de trabajo con capacidad aprovisionada se calcula como 96 DPU * 0,30 USD por hora de DPU * 12 horas al día = 345,60 USD.
Una mañana, se entera de que un nuevo grupo de usuarios de la aplicación completó la incorporación y, como resultado, espera que el volumen de consultas se duplique en cuanto al día anterior. Desea asegurarse de que los usuarios tengan un rendimiento similar al del día anterior, pero no espera que todos los usuarios envíen consultas al mismo tiempo. Dos horas después del inicio de la jornada, la capacidad aumenta en un 50 %, hasta 144 DPU.
- El costo de la carga de trabajo actual equivale al costo de 96 DPU durante 2 horas más 144 DPU durante 10 horas, o 96 DPU * 0,30 USD por hora de DPU * 2 horas + 144 DPU * 0,30 USD por hora de DPU * 10 horas = 489,60 USD.
Ejemplo 3: aplicación Apache Spark
Considere la posibilidad de utilizar un cuaderno en la consola de Athena para extraer las cifras de ventas del trimestre anterior y representarlas gráficamente para crear un informe. Inicia una sesión con un cuaderno. Su sesión dura 1 hora y envía 6 cálculos como parte de la sesión. Cada cálculo requiere la ejecución de 20 nodos de trabajo de 1 DPU y dura 1 minuto.
- DPU-horas de trabajo = cantidad de cálculos * DPU utilizadas por cálculo * tiempo de ejecución del cálculo = 6 cálculos * 20 DPU por cálculo * (1/60) horas por cálculo = 2,0 DPU-horas
- DPU-horas del controlador = DPU utilizadas por sesión * tiempo de sesión = 1 DPU por sesión * 1 hora por sesión = 1,0 DPU-horas
- DPU-horas totales = DPU-horas del trabajo + DPU-horas del controlador = 2,0 DPU-horas + 1,0 DPU-horas = 3,0 DPU-horas
- Cargos de aplicación de Spark = 0,35 USD por DPU-hora * 3,0 DPU-hours = 1,05 USD
Nota: S3 cobrará aparte por almacenar y leer los datos y los resultados de la ejecución.
Recursos de precios adicionales
Calcule fácilmente los costos mensuales en AWS
Contacte con los especialistas de AWS para obtener un presupuesto personalizado
Más información sobre cómo empezar a usar Amazon Athena.
Comience a crear con Amazon Athena en la consola de administración de AWS.