Skip to main content
QUICK REVIEW

[论文解读] Apache Hive: From MapReduce to Enterprise-grade Big Data Warehousing

Jesús Camacho-Rodríguez, Ashutosh Singh Chauhan|arXiv (Cornell University)|Jan 1, 2019
Cloud Computing and Resource Management参考文献 38被引用 6
一句话总结

本文展示了 Apache Hive 如何通过集成 ACID 事务、基于 Calcite 的基于成本的优化器、通过 Tez 和 LLAP 实现的低延迟运行时,以及跨多种存储系统的联邦查询功能,从一个批处理导向的 ETL 工具演变为企业级数据仓库。结果是一个可扩展、交互式且符合 SQL 标准的系统,能够在 TB 级数据上实现亚秒级延迟的现代分析工作负载处理。

ABSTRACT

Apache Hive is an open-source relational database system for analytic big-data workloads. In this paper we describe the key innovations on the journey from batch tool to fully fledged enterprise data warehousing system. We present a hybrid architecture that combines traditional MPP techniques with more recent big data and cloud concepts to achieve the scale and performance required by today's analytic applications. We explore the system by detailing enhancements along four main axis: Transactions, optimizer, runtime, and federation. We then provide experimental results to demonstrate the performance of the system for typical workloads and conclude with a look at the community roadmap.

研究动机与目标

  • 将 Apache Hive 从批处理 ETL 工具现代化为功能完整的全栈企业级数据仓库系统。
  • 解决大数据环境中对低延迟、交互式 SQL 查询日益增长的需求。
  • 为可更新的数据仓库工作负载提供完整的 ACID 事务支持。
  • 通过联邦机制统一查询执行,跨越异构存储系统。
  • 提升查询优化、运行时效率和系统可扩展性,以满足企业工作负载需求。

提出的方法

  • 将 Apache Calcite 集成为核心查询优化器,以支持基于成本的优化和高级 SQL 功能。
  • 将执行引擎从 MapReduce 替换为 Apache Tez,以降低延迟并提高查询执行的灵活性。
  • 引入 LLAP(低延迟分析处理)作为持久的内存内运行时层,用于缓存数据并避免容器启动开销。
  • 通过支持相关子查询、完整性约束和高级 OLAP 函数,扩展 SQL 支持,实现完整的 SQL-99 兼容性。
  • 通过基于 Hive 元存储构建的事务管理器实现 ACID 事务支持,采用快照隔离机制。
  • 通过扩展存储处理器并利用 Calcite 的关系代数,增强联邦功能,实现谓词下推和操作下推至外部系统。

实验结果

研究问题

  • RQ1如何在保持与 Hadoop 兼容性及可扩展性的前提下,扩展 Hive 以支持 ACID 事务?
  • RQ2在大数据环境中,为实现低延迟和交互式分析,需要哪些架构变更?
  • RQ3如何有效集成基于成本的优化器到 SQL-on-Hadoop 系统中,以提升查询性能?
  • RQ4哪些机制能够实现在统一 SQL 接口下跨多个存储系统的无缝查询联邦?
  • RQ5Hive 如何在不牺牲其核心可靠性与可扩展性的前提下,从批处理工具演变为功能完整的全栈企业数据仓库?

主要发现

  • 通过 LLAP,Hive 在 TB 级数据上实现了平均亚秒级查询延迟,支持交互式和即席查询。
  • 与 Calcite 的集成使高级优化技术(如查询重优化和物化视图重写)成为可能,显著提升了查询性能。
  • 通过 Hive 元存储实现的快照隔离机制,成功实现了 ACID 事务支持,支持插入、更新、删除和合并操作。
  • 联邦查询功能通过谓词下推和统一 SQL 接口,实现了对 Kafka、HBase 和云存储等系统中数据的无缝访问。
  • 通过向量化执行和列式存储的运行时优化,在基准工作负载中将处理时间减少了高达 10 倍。
  • 社区路线图包括多语句事务、用于基数估计的改进统计反馈,以及支持多引擎兼容性的元存储独立部署。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。