The following are known limitations in Amazon Athena.
- User-defined functions (UDF or UDAFs) are not supported.
- Stored procedures are not supported.
- Currently, Athena does not support any transactions found in Hive or Presto. For a full list of keywords not supported, see Unsupported DDL.
The following tips and tricks might help you avoid surprises when working with Athena.
Use backticks if table or column names begin with an underscore. For example:
CREATE TABLE `_myUnderScoreTable` ( `_id` string, `_index`string, ...
Enclose table names that include numbers in quotation marks. For example:
CREATE TABLE "Table123" `_id` string, `_index` string, ...
In the LOCATION clause, use a trailing slash for your folder or bucket, NOT filenames or glob characters. For example:
s3://path_to_bucket s3://path_to_bucket/* s3://path_to_bucket/mySpecialFile.dat
If you are interacting with Apache Spark, then your table column names must be lowercase. Athena is case-insensitive but Spark requires lowercase table names.
Athena table names cannot contain special characters, other than underscore (_).