我喜欢在Hadoop2.0上运行WordCount示例。我知道我们可以通过运行java程序(mapper&reducer)或使用简单的HiveQL来实现。
当我编写HiveQL来运行WorCount示例时,我的理解是HIVE将SQL转换为MapReduce程序并为我运行示例。
话虽如此,YARN架构表示,除了运行MapReduce应用程序外,现在YARN还允许用户使用非MapReduce的应用程序,如(HIVE、PIG、Impala等)。我不能把这里的点连起来。HiveSQL是MapReduce程序吗?
Hive是一个抽象程序。它将HiveQL转换为要与其他引擎一起执行的代码,其中MapReduce是最受欢迎的。例如,如果您正在运行Hortonworks,您也可以将执行引擎更改为Tez。
Cloudera还计划让HiveQL针对Spark执行。这就是3个执行引擎,所有这些引擎都将在YARN下运行。