为什么数据工程师正在远离 AWS Athena

在这篇快速文章中,我们将讨论数据工程师决定将其数据分析工作负载从 Amazon Athena 迁移的 5 个主要原因。

虽然 AWS Athena 的无服务器架构意味着用户不需要扩展、预置或管理任何服务器,但在性能、定价和一些技术限制方面,无服务器方法需要权衡取舍。

什么是 AWS Athena 和替代品?

首先是替代品。Presto是一个开源分布式 SQL 查询引擎,旨在针对从数据湖到传统关系数据库的各种数据源进行 PB 级交互式分析。

Ahana Cloud for Presto 在 AWS 中提供完全托管的 Presto 云服务,具有广泛的原生 Presto 连接器支持、IO 缓存和针对您的工作负载的优化配置。

AWS Athena是一种基于 Presto 构建的无服务器交互式查询服务,开发人员使用它来查询基于 AWS S3 的数据湖和其他数据源。

虽然 AWS Athena 有一些好处,但也有一些缺点。

  1. 需要并发和分区

Athena 最大并发限制为 20-25 个查询,具体取决于区域,用户必须请求增加配额。一些用户认为最大并发数接近 3。AWS Athena 用户每个账户最多只能同时运行 5 个查询,而 Athena 将每个账户限制为 100 个数据库。使用 Hive 目录时,Athena 的分区限制是每个表 20K 分区。如果您在查询之前有一个复杂的查询,这些查询是对延迟更敏感的工作负载,例如将结果提供给面向用户的仪表板,这些限制就会带来挑战。

2. 需要性能可预测性

使用 AWS Athena 时,用户无法控制 AWS 分配给 Athena 以运行您的查询的底层服务器的数量。由于 Athena 服务是共享的,因此性能特征可能会经常发生实质性的变化。一分钟可能有 50 台服务器,接下来只有 10 台服务器。

3. 需要更多数据源连接器

Athena 不使用本机 Presto 连接器,因此您需要使用 AWS 提供的有限选项或使用 AWS Lambda 服务构建您自己的选项。

4. 需要控制底层引擎

AWS Athena 的无服务器特性可能使其易于使用,但这也意味着用户无法控制添加更多会话、资源、调试等。

5. 需要价格可预测性

AWS Athena 根据扫描的数据量按查询计费,这使得它在规模上效率低下且成本高昂。成本难以控制和预测,导致部分用户收到账单时“震惊”。如果一个查询扫描 1 TB,那么几秒钟的费用为 5 美元。

另一方面,Ahana 是云原生的,在 Amazon Elastic Kubernetes (EKS) 上运行,通过其自动化集群管理、更高的弹性、速度和易用性帮助您降低运营成本。另外,Ahana 是即用即付的定价方式——只为你使用的东西付费。使用相同的示例,$5 可以让您运行一个包含 r5.xlarge 实例的 6 节点集群一小时,或者运行数百个查询,而不仅仅是一个。

结论

AWS Athena 无服务器架构使入门变得非常容易,但是,该服务有许多不同的限制可能会导致问题,并且许多数据工程团队已经花费了数小时来尝试诊断它们。由于这些限制,AWS Athena 可能运行缓慢并增加运营成本。

Ahana Cloud for Presto 是 Presto 的第一个完全集成的云原生托管服务,它简化了各种规模的云和数据平台团队为其数据分析师和科学家提供自助式 SQL 分析的能力。而这一切都不受 AWS Athena 的限制。

此外,Ahana Cloud 在 AWS 中可用。一探究竟。

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章