Amazon Athena позволяет платить только за выполняемые запросы. Плата начисляется за объем данных, обработанных при выполнении каждого запроса. Чтобы увеличить производительность и значительно сократить стоимость запросов, можно сжать данные, разбить их на разделы или преобразовать в табличный формат. Эти операции сокращают объем данных, необходимых для выполнения запроса.

Теперь сервис Amazon Athena доступен всем

Начало работы с Amazon Athena
  • 5 USD за один терабайт обработанных данных.  

Можно сжать данные, разбить их на разделы или преобразовать в табличный формат и сократить стоимость запросов на 30–90 %, а также увеличить производительность.

Плата начисляется по количеству байтов, обработанных Amazon Athena, с округлением до мегабайтов. Минимальный объем на каждый запрос – 10 МБ. Плата не взимается, если выполнение запроса завершилось с ошибкой, а также за выполнение команд языка определения данных (DDL), таких как CREATE/ALTER/DROP TABLE, и команд управления и разбиения на разделы. При отмене запросов плата начисляется в зависимости от объема обработанных данных.

Если сжать данные, сервис будет обрабатывать меньший объем. Если преобразовать данные в табличный формат, то сервис будет считывать данные только из требуемых столбцов. Athena поддерживает Apache ORC и Apache Parquet. При разбиении на разделы сервис также будет обрабатывать меньший объем. Это позволит снизить стоимость и улучшить производительность. Объем данных, обработанных при выполнении запроса, можно посмотреть в консоли Athena. Дополнительные сведения о ценах см. в разделе Пример расчета стоимости.

Поскольку запросы Amazon Athena выполняются непосредственно в Amazon S3, дополнительная плата за хранение данных не взимается. Плата по стандартному тарифу начисляется только за хранение данных в S3, запросы и передачу данных. По умолчанию результаты выполнения запросов сохраняются в выбранной корзине S3; за них также начисляется плата по стандартному тарифу.

При использовании каталога данных AWS Glue с Athena вы платите стандартным тарифам для каталога данных AWS Glue. Дополнительные сведения см. здесь.

Рассмотрим таблицу с тремя столбцами равного размера, сохраненную в Amazon S3 в виде несжатого текстового файла общим размером 3 ТБ. При выполнении запроса на извлечение данных из одного столбца таблицы будет обработан весь файл, поскольку данные в текстовом формате нельзя разделить.

  • Стоимость данного запроса составит 15 USD. (Стоимость обработки 3 ТБ данных составит 3 х 5 USD/1 TБ = 15 USD.)

Если сжать файл в формат GZIP, его размер можно уменьшить в 3 раза. Тогда сжатый файл будет иметь размер 1 ТБ. Теперь этот же запрос будет стоить 5 USD. Athena все равно будет обрабатывать весь файл, но поскольку его размер стал в три раза меньше, пользователь будет платить в три раза меньше.

Если сжать файл и преобразовать его в табличный формат, такой как Apache Parquet, его размер уменьшится в 3 раза, до 1 ТБ, как и в предыдущем случае. Но в этот раз, за счет табличного формата Parquet, для выполнения запроса Amazon Athena достаточно обработать только требуемый столбец. Поскольку в запросе указан только один столбец, Athena прочитает только его, т. е. третью часть файла. Таким образом, будет обработано 0,33 ТБ данных.

  • Стоимость данного запроса составит 1,67 USD. Стоимость снижается в три раза за счет сжатия и еще в три раза – за счет чтения только одного столбца.
    (Размер файла = 3 ТБ/3 = 1 ТБ. Объем обрабатываемых данных в одном столбце = 1 ТБ/3 = 0,33 ТБ. Цена за 0,33 ТБ = 0,33 х 5 USD/1 ТБ = 1,67 USD)