本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
2018 年 1 月 19 日
发布时间:2018 年 01 月 19 日
Athena 使用 Presto(一种开源分布式查询引擎)运行查询。
对于 Athena,没有要管理的版本。我们已经以透明方式将 Athena 中的基础引擎升级到一个基于 Presto 0.172 版的版本。在您的末端不需要执行任何操作。
通过升级,您现在可以使用 Presto 0.172 函数和运算符
此版本的主要更新,包括社区提供的修补程序,包括:
-
支持忽略标题。您可以在定义表时使用
skip.header.line.count
属性,以允许 Athena 忽略标题。对于使用 LazySimpleSerDe 和 OpenCSVSerDe 的查询,支持此功能,对于 Grok 或 Regex SerDes 则不支持此功能。 -
在
STRING
函数中支持CHAR(n)
数据类型。的范围是CHAR(n)
,而[1.255]
的范围是VARCHAR(n)
。[1,65535]
-
支持关联子查询。
-
支持 Presto Lambda 表达式和函数。
-
改进了
DECIMAL
类型和运算符的性能。 -
支持筛选聚合,例如
SELECT sum(col_name) FILTER
,其中id > 0
。 -
DECIMAL
、TINYINT
、SMALLINT
和REAL
数据类型的下推谓词。 -
支持定量比较谓词:
ALL
、ANY
和SOME
。 -
增加了 函数:、
arrays_overlap()
、 array_except()
、、 levenshtein_distance()
、codepoint()
、、 skewness()
和Telcome kurtosis()
。typeof()
-
增加了接受时区参数的
from_unixtime()
函数的变体。 -
增加了
bitwise_and_agg()
和 bitwise_or_agg()
聚合函数。 -
增加了
xxhash64()
和 to_big_endian_64()
函数。 -
向
json_extract()
和 json_extract_scalar()
函数中添加了对转义双引号或反斜杠的支持 (将反斜杠与 JSON 路径下标一起使用)。这会更改任何使用反斜杠的调用的语义,因为反斜杠以前被视为普通字符。
有关函数和运算符的完整列表,请参阅本指南中的 SQL 查询、函数和运算符,以及 Presto 0.172 函数
Athena 并非支持所有 Presto 功能。有关更多信息,请参阅限制。