gpt4 book ai didi

hadoop - 使用 Hadoop 配置 Pig 关系

转载 作者:可可西里 更新时间:2023-11-01 14:21:46 26 4
gpt4 key购买 nike

我无法理解 Hadoop 和 Pig 之间的关系。我了解 Pig 的目的是将 MapReduce 模式隐藏在脚本语言 Pig Latin 的背后。

我不明白的是 Hadoop 和 Pig 是如何联系在一起的。到目前为止,唯一的安装过程似乎假定 pig 与主 hadoop 节点在同一台机器上运行。事实上,它使用了 hadoop 配置文件。

这是因为 pig 只将脚本翻译成 mapreduce 代码并将它们发送到 hadoop 吗?

如果是这样,我该如何配置 Pig 才能将脚本发送到远程服务器?

如果不是,是否意味着我们总是需要在 pig 中运行 hadoop?

最佳答案

Pig 可以在两种模式下运行:

  1. 本地模式。在此模式下,根本不使用 Hadoop 集群。所有进程都在单个 JVM 中运行,文件从本地文件系统读取。要在本地模式下运行 Pig,请使用以下命令:

    pig -x local 
  2. MapReduce 模式。在此模式下,Pig 将脚本转换为 MapReduce 作业并在 Hadoop 集群上运行它们。这是默认模式。

    集群可以是本地的或远程的。 Pig 使用 HADOOP_MAPRED_HOME 环境变量在本地机器上查找 Hadoop 安装(参见 Installing Pig )。

    如果你想连接到远程集群,你应该在 pig.properties 文件中指定集群参数。 MRv1 示例:

    fs.default.name=hdfs://namenode_address:8020/
    mapred.job.tracker=jobtracker_address:8021

    也可以在命令行指定远程集群地址:

    pig -fs namenode_address:8020 -jt jobtracker_address:8021

因此,您可以将 Pig 安装到任何机器上并连接到远程集群。 Pig 包含 Hadoop 客户端,因此您无需安装 Hadoop 即可使用 Pig。

关于hadoop - 使用 Hadoop 配置 Pig 关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23832085/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com