在-x local script.pig和script.pig之间执行Pig脚本区别

 12sadad 发布于 2023-01-30 18:40

目前我正在执行我的脚本:

/usr/bin/pig /somepath/myscript.pig

由于某种原因,猪在这个阶段总是挂着.

2014-01-28 16:49:31,328 [main] INFO  org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - 0% complete

如果我使用

`/usr/bin/pig -x local /somepath/myscript.pig`

由于某种原因抱怨路径:

Input(s):
Failed to read data from "file:///path_from_root_dir/tweets_extended_small.csv"

有什么区别,我应该如何在-x local模式中指定路径,以便我可以摆脱这个错误.

tweets_extended_small.csvHDFS,我在脚本中指的是这样的

... LOAD 'venues_extended_small.csv' USING ...

谢谢!

1 个回答
  • Pig基本上有两种执行模式

    1]本地模式

    2] Map-Reduce模式

    本地模式 - 在本地模式下运行Pig时,您需要访问一台机器; 使用本地主机和本地文件系统安装和运行所有文件.

    这里*所有文件*表示您要处理的所有文件以及您在pig Script中引用/使用的所有jar或任何内容.

    Mapreduce模式 - 当您在mapreduce模式下运行Pig时,您正在处理Hadoop集群和HDFS(Hadoop分布式文件系统).

    在这种情况下*所有文件* 都应该在HDFS中.

    所以在跑猪时,

    pig -x local script_name.pig

    "-x"指定必须运行脚本的模式.

    因此,在这种情况下,script_name.pig需要位于本地文件系统下.

    Mapreduce模式是默认模式; 在运行pig脚本时,您可以,但不需要使用-x标志(pig OR pig -x mapreduce)指定它.

    在你的情况下,

    将文件和脚本保留在本地计算机中.加载文件为,

    ... LOAD'/YOUR_PATH_TO_INPUT_CSV_FILE/venues_extended_small.csv'使用......

    然后将脚本移动到本地文件系统,然后运行该脚本.

    pig -x local'/YOUR_PATH_TO_PIG_SCRIPT/script.pig'

    在这种情况下,此链接可以帮助您.

    希望这可能对你有所帮助.谢谢.

    2023-01-30 18:46 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有