繁体   English   中英

有Hive TEZ的时候Hive的LLAP有什么用?

[英]What is the use of Hive's LLAP when there is Hive TEZ?

在我们的项目中,我们将数据从 Greenplum 数据库加载到 HDFS(HIVE)。 最近,我了解到 Hive2 有一个新捆绑包“LLAP”。 我一直对 LLAP 的概念感到困惑。 LLAP 的确切用途是什么? 当我们已经有了 Hive 的 TEZ Engine 时,LLAP 有什么用呢? 我们项目中的一位开发人员告诉我,我们正在使用 Hive LLAP 将数据加载到 HDFS Hive 表中。 使用 LLAP 是一个好习惯吗? 如果不是,为什么不是?

任何人都可以让我对上述查询有所了解吗?

https://cwiki.apache.org/confluence/display/Hive/LLAP是了解 Hive Live Long And Process (LLAP) 的好地方。

正如链接所说

LLAP 在现有的、基于流程的 Hive 执行中工作,以保持 Hive 的可扩展性和多功能性。 它不会取代现有的执行模型,而是对其进行了增强。

LLAP 不是执行引擎(如 MapReduce 或 Tez)

相反,它提供了一个长期存在的守护进程(因此是首字母缩略词的 LL 部分)来代替与 DataNode 的交互,并且这个守护进程还提供缓存、预取和一些查询处理。 这允许守护程序本身在很大程度上处理简单的查询,而像往常一样在 YARN 容器中执行更复杂的查询。

该链接还显示了 Tez AM 如何能够超越所有这些,并提交通过 LLAP 操作的 Hive 任​​务,后者根据需要与 DataNode 进行交互。 在示例中,查询的初始阶段被推送到 LLAP,但大型 shuffle 在单独的容器中执行。

LLAP 节点是 Tez 和 Hadoop 数据节点之间的附加节点层(一个 LLAP 节点对应一个 Hadoop 数据节点),可以缓存数据并处理一些查询。 查询执行仍由 Tez 安排和管理。

LLAP 节点具有缓存数据的守护进程,如果一次又一次访问公共数据,这些守护进程可以加速查询。

简而言之,它提高了性能,您将在 hive 中使用 LLAP 获得非常好的查询性能。 Hive 也可以在没有 LLAP 的情况下工作,但速度可能会更慢。

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM