- 产品›
- Amazon EMR›
- Amazon EMR 功能
Amazon EMR 上的 Apache Hive
概述
Apache Hive 是一个开源、分布式容错系统,可提供类似于数据仓库的查询功能。它让用户可以使用类似于 SQL 的接口读取、写入并管理 PB 级数据。
Amazon EMR 原生支持 Apache HBase,而且您可以通过亚马逊云科技管理控制台、亚马逊云科技 CLI 或 Amazon EMR API 快速而轻松地创建托管式 Apache Hive 集群。此外,您还可以利用其他 Amazon EMR 功能,包括与 Amazon DynamoDB 或 Amazon S3 直接连接以进行存储,与 Amazon Glue Data Catalog、Amazon Lake Formation、Amazon RDS 或 Amazon Aurora 集成以配置外部数据存储,以及通过 EMR 托管式扩缩在集群中添加或移除实例。
页面主题
功能与优点
全部打开您可以启动具有多个主节点的 EMR 集群,以支持 Apache Hive 的高可用性。如果主节点出现故障或者资源管理器或名称节点等关键进程崩溃,Amazon EMR 会自动故障转移到备用主节点。这意味着您可以在 EMR 集群上无中断地运行 Apache Hive。
Amazon EMR 支持为 Apache Hive 集群定义 EMR 托管式扩缩,以帮助优化资源的使用情况。使用 EMR 托管式扩缩,可以自动调整集群大小,从而以尽可能低的成本获得最佳性能。使用 EMR 托管式扩缩,您可以为您的集群指定最小和最大计算限制,而 Amazon EMR 将自动调整它们的大小,以实现最佳性能和最高资源利用率。EMR 托管式扩缩会持续对与在集群上运行的工作负载相关的关键指标进行采样。
Amazon EMR 6.0.0 增加了对 Hive LLAP 的支持,平均性能速度是 EMR 5.29 的 2 倍。现在,您可以在 Amazon EMR 上将 S3 Select 与 Hive 结合使用,以提高性能。S3 Select 允许应用程序从对象中检索一部分数据,因此减少了在 Amazon EMR 与 Amazon S3 之间传输的数据量。Amazon EMR 还可以快速处理复杂的 Apache Hive 查询。默认情况下,EMR 使用 Apache Tez,它的速度要快得多。Apache MapReduce 使用多个阶段,因此会将复杂的 Apache Hive 查询分解为四到五个任务。Apache Tez 专为更复杂的查询而设计,因此 Apache Tez 上的同一个任务会在一个任务中运行,这样就大大加快了任务的运行速度。
使用 Amazon EMR,您可以选择将元存储保留在本地或将其外置。EMR 可与 Amazon Glue Data Catalog 和 Amazon Lake Formation 集成,因此 EMR 可以直接从 Glue 或 Lake Formation 提取信息,以便填充到云存储。