如何执行Apache Pig,执行模式有几种
Admin 2022-09-26 群英技术资讯 1036 次浏览
关于“如何执行Apache Pig,执行模式有几种”的知识有一些人不是很理解,对此小编给大家总结了相关内容,具有一定的参考借鉴价值,而且易于学习与理解,希望能对大家有所帮助,有这个方面学习需要的朋友就继续往下看吧。在本章中,我们将讨论如何执行Apache Pig。
你可以以两种模式运行Apache Pig,即Local(本地)模式和HDFS模式。
在此模式下,所有文件都从本地主机和本地文件系统安装和运行,不需要Hadoop或HDFS。此模式通常用于测试目的。
MapReduce模式是我们使用Apache Pig加载或处理Hadoop文件系统(HDFS)中存在的数据的地方。在这种模式下,每当我们执行Pig Latin语句来处理数据时,会在后端调用一个MapReduce作业,以对HDFS中存在的数据执行特定的操作。
Apache Pig脚本可以通过三种方式执行,即交互模式,批处理模式和嵌入式模式。
交互模式(Grunt shell) - 你可以使用Grunt shell以交互模式运行Apache Pig。在此shell中,你可以输入Pig Latin语句并获取输出(使用Dump运算符)。
批处理模式(脚本) - 你可以通过将Pig Latin脚本写入具有 .pig 扩展名的单个文件中,以批处理模式运行Apache Pig。
嵌入式模式(UDF) - Apache Pig允许在Java等编程语言中定义我们自己的函数(UDF用户定义函数),并在我们的脚本中使用它们。
你可以使用“-x"选项以所需的模式(local/MapReduce)调用Grunt shell,如下所示。
| Local模式 | MapReduce模式 |
|---|---|
Command(命令) - $ ./pig -x local |
Command(命令)- $ ./pig -x mapreduce |
Output(输出) - ![]() |
Output(输出)- ![]() |
这两个命令都给出了Grunt shell提示符,如下所示。
grunt>
你可以使用“ctrl+d"退出Grunt shell。
在调用Grunt shell之后,可以通过直接输入Pig中的Pig Latin语句来执行Pig脚本。
grunt> customers = LOAD 'customers.txt' USING PigStorage(',');
你可以在文件中编写整个Pig Latin脚本,并使用 -x command 执行它。我们假设在一个名为 sample_script.pig 的文件中有一个Pig脚本,如下所示。
student = LOAD 'hdfs://localhost:9000/pig_data/student.txt' USING
PigStorage(',') as (id:int,name:chararray,city:chararray);
Dump student;
现在,你可以在上面的文件中执行脚本,如下所示。
| Local模式 | MapReduce模式 |
|---|---|
| $ pig -x local Sample_script.pig | $ pig -x mapreduce Sample_script.pig |
注意:我们将详细讨论如何在批处理模式和嵌入模式中运行Pig脚本。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
RDD的创建可以通过2种方式, 通过并行化集合创建( 本地对象转分布式RDD )和通过读取外部数据源( 读取文件)创建,如下:
除了内置函数之外,Apache Pig还为 User Defined Function(UDF:用户定义函数)提供广泛的支持。使用这些UDF,可以定义我们自己的函数并使用它们。UDF支持六种编程语言,即Java,Jython,Python,JavaScript,Ruby和Groovy。
ORDER BY 运算符用于以基于一个或多个字段的排序顺序显示关系的内容。语法下面给出了 ORDER BY 运算符的语法。grunt> Relation_name2 = ORDER Relatin_name1 BY (ASC|DESC);
在Apache Pig中有以下String函数。S.N.函数 & 描述1ENDSWITH(string, testAgainst)验证给定字符串是否以特定子字符串结尾。2STARTSWITH(string, substring)接受两个字符串参数,并验证第一个字符串是否以第二个字符串开头。
大数据剖析技能有哪些?大数据时代,每天都有海量的数据产生,我们想要从中获取到对我们有用处的信息,大数据剖析有很大的帮助。因此这篇文章就给大家来简单的介绍一下大数据剖析技能,感兴趣的朋友就继续往下看吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008