什么是 Amazon Athena 及其工作原理?

已发表: 2021-10-26

什么是 Amazon Athena 及其工作原理? |封装技术

分析数据的过程在本质上有些复杂,并且包括用于简化许多可用工具的多个步骤。 亚马逊通过提供名为 Amazon Athena 的服务来帮助分析数据。

Amazon Athena 是一种无服务器分析工具,允许用户使用标准 SQL 语法从 S3 查询数据。 作为云计算领域的领导者,AWS 提供范围广泛的服务,与本地架构相比,这些服务可提供具有竞争力的性能和用于运行工作负载的经济实惠的解决方案。

AWS Athena 是分析领域的一项服务,专注于使用标准 SQL 语句检索存储在 S3 存储桶中的静态数据。 它可以被认为是一个强大的工具,可以帮助客户获得关于存储在 S3 上的数据的重要见解,因为它是无服务器的并且没有用于管理的基础架构。

什么是亚马逊雅典娜?

亚马逊于 2016 年 11 月 20推出了 Athena 作为一项重要服务。它是作为无服务器查询服务推出的,旨在使用存储在 Amazon S3 中的标准 SQL 更简单地分析数据。 只需在 AWS 管理控制台中单击几下,客户就可以轻松地将 Amazon Athena 指向存储在 Amazon S3 中的数据,同时使用标准 SQL 运行查询以在几秒钟内生成结果。

借助 Amazon Athena 的交互式分析服务,无需设置或管理基础设施,客户只需为他们想要运行的查询付费。 它在并行执行查询时自动扩展,即使使用庞大的数据集和复杂的查询,最终也能提供快速的结果。

Athena 使用称为 Presto 的分布式 SQL 引擎,它在运行 SQL 查询时很有用。 它基于称为 Hive 的流行开源技术,进一步有助于存储结构化、非结构化和半结构化数据。 Apache Hive 数据仓库软件有助于使用 SQL 对驻留在分布式存储中的大型数据集进行读取、写入和管理。

有一个简单的数据管道,其中来自不同来源的数据被提取并转储到 S3 存储桶中。 这是原始数据,这意味着尚未对数据应用任何转换。 此时,Amazon Athena 可用于在分析时连接到 S3 中的此数据。 这是一个简单的过程,因为您不需要设置任何数据库或外部工具来查询原始数据。 完成分析并找出所需结果后,可以使用 EMR 集群运行复杂的分析数据转换,同时对数据进行清理、处理和存储。

为什么要使用 Athena?

为什么要使用 Amazon Athena?

Athena 用户可以使用 AWS 密钥管理服务管理的密钥查询加密数据,并对查询结果进行加密。 事实上,Athena 还允许跨账户访问其他用户拥有的 S3 存储桶。 它使用托管数据目录来存储与搜索 Amazon S3 数据相关的信息和架构。

总而言之,交互式查询服务实际上是一种分析工具,可以帮助组织快速分析存储在 Amazon S3 中的重要数据。 它可用于处理非结构化、结构化和半结构化数据集。 使用 Athena,可以为数据集创建动态查询。 它与 AWS Glue 一起使用,为您提供了一种在 S3 中存储元数据的更好方法。

使用 AWS Cloud Formation 和 Athena,您可以使用命名查询来命名特定查询,然后也可以使用该名称调用它。 这是 AWS 的一项交互式服务,数据科学家和开发人员可以使用它来查看运行查询的表。 它有助于从 S3 获取数据,并使用 Athena JDBC 驱动程序将其加载到不同的数据存储中,以进行日志存储分析和数据仓库事件。

AWS Athena 的工作

Amazon Athena 与 S3 数据直接关联。 它用作运行查询的分布式 SQL 引擎,还使用 ​​Apache Hive 创建和更改表和分区。 与 Athena 合作所需的一些重要观点包括:

  1. 您必须拥有 AWS 账户
  2. 您应该允许您的账户将成本和使用情况数据导出到 S3 存储桶中。
  3. 您可以准备存储桶以供 Athena 连接。
  4. AWS 还会在每次写入存储桶时使用元数据创建清单文件。 事实上,它在称为 Athena 的技术 AWS 计费数据存储桶中创建了一个文件夹,其中仅包含数据。
  5. 为了简化设置,也可以使用称为 US-West-2 区域的区域。
  6. 最后一步是下载新用户的凭据,因为凭据有助于间接映射到数据库凭据。

亚马逊还提供了一个名为 Cost Explorer 的拖放工具,它附带一组预构建的报告,例如每月服务成本、预留实例使用情况等。如果您好奇,您应该尝试在服务上方重新创建查询成本和运营。 这其实也不是不可能的。 您可以在计算每个增长率、构建直方图、计算分数等的同时对原始数据进行切片。

使用 Amazon Athena 时需要注意的其他一些注意事项包括:

定价模式

Athena 的定价超过 5 美元,用于扫描从 S3 包围到最近的兆字节的 TB 数据,每次查询至少 10MB。

降低成本

诀窍是减少以三种方式扫描的数据,称为压缩数据、使用列数据和分区数据。

雅典娜的特点

在亚马逊提供的众多服务中,Athena 是最好的服务之一。 它具有使其适用于数据分析的多种功能。 其中一些功能包括:

  • 快速实施

Amazon Athena 不需要安装。 实际上只能使用 AWS CLI 从 AWS 控制台直接访问它。

  • 无服务器

它是无服务器的,因此最终用户不必担心配置、基础架构、扩展或故障。 雅典娜轻松搞定这一切。

  • 按查询付费

Athena 仅针对您运行的查询向您收费,即每次查询管理的数据量。 如果您压缩数据并相应地格式化,您实际上可以节省很多。

  • 安全的

使用 IAM 策略和 AWS 身份,Amazon Athena 提供对数据集的完全控制。 通过将数据存储在 S3 存储桶中,IAM 策略可以帮助管理对用户的控制。

  • 可用的

Amazon Athena 具有高可用性,用户可以全天候执行查询。

  • 快的

Amazon Athena 是一种快速分析工具,因为它可以通过将查询分解为简单的查询并并行运行它们并组合结果以提供所需的输出,从而在更短的时间内执行复杂的查询。

  • 一体化

Athena 的最佳功能之一是它可以轻松与 AWS Glue 集成,从而帮助用户创建统一的数据存储库。 这也有助于创建更好的数据版本控制,以及更好的表、视图等。

  • 联合查询

Amazon Athena 联合查询允许 Athena 对所有关系、对象、非关系和自定义数据源运行 SQL 查询。

  • 机器学习

开发人员可以使用 Amazon Sage Maker 在 Amazon Athena 中创建和部署机器学习模型。

AWS Athena 的优化技术

AWS Athena 的优化技术

在使用云服务时,需要注意使用尽可能少的资源的服务以及以具有成本效益的方式提供最佳结果的服务。 可以采取许多措施来优化 AWS Athena 中的查询,从而提高整体性能并控制成本。 Amazon Athena交互式分析服务的一些常见优化技术是:

  • 在 S3 中对数据进行分区

    在 S3 中存储数据的最常见做法之一是根据主要维度(例如日期维度和区域维度)创建单独的目录进行分区。 可用于按年、月、甚至日分区,将文件存放在每天的目录下。 另一方面,您也可以按可以存储数据的区域为一个目录下的类似区域进行分区。 通过分区,Athena 能够在每个查询中扫描更少的数据,从而使整个作业快速有效。

  • 数据压缩技术

    在压缩数据时,需要一个 CPU 在查询时进行压缩和解压缩。 尽管有不同的压缩技术可用,但与 Athena 一起使用的最流行的技术之一是 Apache Parquet 或 Apache ORC。 这是一种有助于使用列式数据库的默认算法压缩数据的技术。

  • 简化查询中的 JOIN 条件

    在跨多个维度查询数据时,需要将两个表中的数据连接起来进行分析。 加入的过程看起来很简单,但有时很复杂。 因此,始终建议将数据量大的表放在左侧,而将数据量少的表放在右侧。 这是数据处理引擎可以轻松地将右侧较小的表分发到工作节点的方式,同时从左侧表中流式传输数据并将两者连接起来。

在查询中使用选定的列

这是另一种强制优化技术,可大大减少运行 Athena 查询所花费的时间和金钱。 与从表名中指定选择相比,始终建议在选择查询中明确提及某人正在对其执行分析的列的名称。

优化查询中的模式匹配技术

很多时候需要根据数据中的模式而不是关键字来查询数据。 在 SQL 中,实现这一点的一种简单方法是使用 LIKE 运算符,其中可以提及模式并查询获取再次匹配模式的数据。 在 Amazon Athena 中,可以使用 REGEX 代替 LIKE 运算符来匹配模式,因为这样更快。

结论

随着数据成为公司发展的重要组成部分,获得洞察力和提取更多数据的过程变得越来越重要。 借助提供基于服务的分析服务(如 Amazon Athena)的公共云服务,许多企业可以获得更多洞察力,而不会出现其他分析工具可能出现的复杂情况。

作为最好的无服务器架构之一,Amazon Athena 使数据查询易于使用、设置和快速运行。 事实上,Athena 的按使用付费模式让整个事情都可以负担得起运行分析。 此外,由于 Athena 与 Amazon S3 一起使用并具有出色的可扩展性、可靠性和耐用性,因此这是运行分析工作负载的最佳套件之一。

如果您在实施和使用 Amazon Athena 方面需要任何支持,请随时与Encaptechno 的顾问联系 我们拥有一支训练有素的团队,可以在您使用 Amazon Athena 的整个过程中为您提供广泛的支持。