1,如果是a::tags#'pic'作为参数,传递给另一个函数方法,需要转义多次,
二次调用函数,就是这个方法里,又调用了其他方方法,参数也是层层传递,需要转义两次,尤其是map里的函数,
C1 = two_use_cart_filter_by_clkloc_distinct_vid_and_ic(C,0,2,'vid','cvid','tags#\\\'pic\\\'','cpic') ;
一次调用函数,只需转一次即可
cx = get_distinct_data_by_field(cx,B::vid,'bvid','B::tags#\'pic\'','bpic') ;
2,在pig函数中,如果传入的变量join后有别名的标量,不要使用A:tags#'et'语法写,直接使用tags#'et'引用
3,在function脚本中,
注册变量,必须使用单引号引起来 ,如下
REGISTER '/home/lib/dhpig.jar';
REGISTER '/home/lib/event-log.jar';
在非函数脚本中,则不需要
4, 在a.pig脚本中,如果引用了一个函数脚本function.pig,则注意a脚本的参数名字,不能和function.pig脚本中函数名字一样
5,单引号里嵌套单引号,需要转义使用
6,在a.pig中,引用了一个b.pig 如果b.pig 里面 定义了一个函数,然后别名x,
在a.pig里面使用 x2 = getx()接收,此时需要注意,x2 不能够和b.pig里面的函数里面加载数据的schema的别名一样 ,如果getx里面
有这么一段代码:
bb = load 'xx' as (x2:chararray)
7, a和b通过join后的得到的一个结果集r,如果传给下一个函数使用时,需要采用r::a::xx引用
如果有扩展字段,可以使r::a::map#'field'引用
8, 在使用转换一些类型时候,如果默认不设置任何schema,那么它将会是bytearray类型,如果想进行一些join操作,或者union,cross操作时,
一定要确保两边的join键的字符类型一致
ho = join $a by bvik left outer , $b by okey; ,如果bvik和okey的字符类型不一致,那么将会出现如下异常:
int errCode = 1075;
String msg = "Received a bytearray from the UDF. Cannot determine how to convert the bytearray to string.";
所以在,进行join前,一定确保类型一致,如下面的pig语句:$11和$3是要明确声明所属类型的
mz = foreach mf generate CONCAT((chararray)$11,(chararray)$3) as vidic , $4 as gno:chararray ;
mp = group mz by vidic;
$ord = foreach mp generate group as okey , BagToString($1.$1,'#') as rfxnos ;
- 浏览: 1050263 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1441)
- 软件思想&演讲 (9)
- 行业常识 (250)
- 时时疑问 (5)
- java/guava/python/php/ruby/R/scala/groovy (213)
- struct/spring/springmvc (37)
- mybatis/hibernate/JPA (10)
- mysql/oracle/sqlserver/db2/mongdb/redis/neo4j/GreenPlum/Teradata/hsqldb/Derby/sakila (268)
- js/jquery/jqueryUi/jqueryEaseyUI/extjs/angulrJs/react/es6/grunt/zepto/raphael (81)
- ZMQ/RabbitMQ/ActiveMQ/JMS/kafka (17)
- lucene/solr/nuth/elasticsearch/MG4J (167)
- html/css/ionic/nodejs/bootstrap (19)
- Linux/shell/centos (56)
- cvs/svn/git/sourceTree/gradle/ant/maven/mantis/docker/Kubernetes (26)
- sonatype nexus (1)
- tomcat/jetty/netty/jboss (9)
- 工具 (17)
- ETL/SPASS/MATLAB/RapidMiner/weka/kettle/DataX/Kylin (11)
- hadoop/spark/Hbase/Hive/pig/Zookeeper/HAWQ/cloudera/Impala/Oozie (190)
- ios/swift/android (9)
- 机器学习&算法&大数据 (18)
- Mesos是Apache下的开源分布式资源管理框架 (1)
- echarts/d3/highCharts/tableau (1)
- 行业技能图谱 (1)
- 大数据可视化 (2)
- tornado/ansible/twisted (2)
- Nagios/Cacti/Zabbix (0)
- eclipse/intellijIDEA/webstorm (5)
- cvs/svn/git/sourceTree/gradle/jira/bitbucket (4)
- jsp/jsf/flex/ZKoss (0)
- 测试技术 (2)
- splunk/flunm (2)
- 高并发/大数据量 (1)
- freemarker/vector/thymeleaf (1)
- docker/Kubernetes (2)
- dubbo/ESB/dubboX/wso2 (2)
最新评论
发表评论
-
CDH与原生态hadoop之间的区别
2017-07-26 12:45 992需要认识的几个问题 ------------------- ... -
Cloudera的CDH和Apache的Hadoop的区别
2017-07-26 12:49 576目前而言,不收费的Hadoop版本主要有三个(均是国外厂商) ... -
大数据、云计算系统高级架构师课程学习路线图
2017-07-24 17:10 598大数据、云计算系统高级架构师课程学习路线图 大数据 ... -
Oozie简介
2017-07-24 12:17 1062在Hadoop中执行的任务有时候需要把多个Map/Reduc ... -
清理ambari安装的hadoop集群
2017-07-24 11:29 925本文针对redhat或者centos 对于测试集群,如果通 ... -
hawk大数据基础知识总结(2)
2017-05-13 15:13 505hawk 英[hɔ:k] 美[hɔk] n. 鹰; 霍克; ... -
hawk大数据基础知识总结(1)
2017-05-13 14:41 796一、大数据概述 1.1大 ... -
ambari是什么
2017-05-11 19:52 648Apache Ambari是一种基于Web的工具,支持Apa ... -
数据仓库中的Inmon与Kimball架构之争
2017-05-11 13:40 696对于数据仓库体系结构的最佳问题,始终存在许多不同的看法,甚至 ... -
Hive的meta 数据支持以下三种存储方式
2017-05-04 13:48 900测试环境下Hive总出问题 ... -
大数据要学习知识
2017-05-02 17:18 49201 技术层面 1.紧贴 ... -
Spark Streaming简介
2017-05-02 16:28 7451.1 概述 Spark Streaming 是Spark ... -
pentaho套件
2017-04-28 15:52 831有人统计过,在整个数据分析过程里,收集、整理数据的工作大致占全 ... -
Impala:新一代开源大数据分析引擎
2017-04-22 10:48 729大数据处理是云计算中非常重要的问题,自Google公司提出M ... -
Weka是什么
2017-04-10 13:17 1070Weka的全名是怀卡托智 ... -
解密Apache HAWQ ——功能强大的SQL-on-Hadoop引擎
2017-04-10 12:04 841一、HAWQ基本介绍 HAWQ ... -
Kettle的使用
2017-04-06 12:11 600Kettle是一款国外开源 ... -
clouder manager端口7180没有打开为什么
2017-03-27 10:56 1184修改 clouder-manager.repo新建内容我们需要 ... -
Impala与Hive的比较
2017-03-19 13:09 7871. Impala架构 Impala是Clo ... -
Cloudera Manager、CDH零基础入门、线路指导
2017-03-19 12:53 1267问题导读:1.什么是cloudera CM 、CDH?2.C ...
相关推荐
此外,使用Pig可以避免一些常见的问题,如数据倾斜问题。 - **缺点**:虽然Pig简化了开发流程,但在某些特定情况下,MapReduce可能会提供更好的性能优化和控制能力。 #### 三、Pig的应用场景 - **数据清洗**:Pig...
总结起来,`pig.jar`和`pigunit.jar`是Pig平台的核心组成部分,分别负责Pig Latin的执行和测试。Java编程在这里扮演了扩展Pig功能的角色,允许开发者用Java实现自定义逻辑。通过Ant进行编译管理,整个流程变得更加...
总结,Apache Pig-0.17.0 提供了一个强大而灵活的平台,用于处理大规模数据。正确安装并配置Pig,结合Pig Latin的使用,可以极大地提高数据处理的效率和便捷性。通过不断的实践和学习,你将能更好地掌握Pig的潜力,...
总结,"pig-0.9.2.tar.gz"是一个重要的数据处理工具,它通过Pig Latin语言简化了Map-Reduce的开发,使得非Java开发者也能轻松应对大数据挑战。通过深入理解和熟练使用Pig,我们可以更高效地挖掘和利用大规模数据,...
Twitter就是一个实际的例子,它使用Pig来处理大量数据。Pig之所以受到青睐,是因为它简化了数据处理流程,降低了编程的复杂性,并且相较于传统编程语言,可以减少大量的代码量。 在配置Pig语法高亮时需要注意的是,...
六、使用Pig Latin进行数据处理 Pig Latin是Pig的编程语言,用户可以通过编写简单的语句来处理数据。例如,以下是一个简单的Pig Latin脚本,用于统计文本文件中单词的数量: ``` grunt> data = LOAD 'input.txt' AS ...
### Apache Pig的基础概念及用法总结 #### 一、引言 Apache Pig是一种高级的数据流语言,用于在Hadoop平台上处理大规模数据集。它通过提供一种抽象层,简化了复杂的大规模数据处理任务,使用户能够更加专注于数据...
总结,Pig和Hive都是强大的大数据处理工具,它们提供了抽象层,使得开发者无需直接编写MapReduce代码,从而更加专注于业务逻辑。理解并熟练运用Pig Latin和HiveQL,能够有效提升大数据分析项目的工作效率和灵活性。...
无论是对Hive还是对Pig的使用,都需要在Hadoop生态系统中进行,这要求使用者对整个大数据处理平台有全面的了解。随着技术的不断发展,大数据分析的工具和方法也在持续进化,掌握并能够灵活运用这些工具对于数据分析...
例如,在处理大规模的日志文件时,使用Pig相比直接使用Hadoop能够显著提高效率。这不仅节省了宝贵的时间资源,也降低了错误率和维护成本。 #### 总结 Pig Latin及其支持系统Pig为数据处理领域带来了一股清新的变革...
总结以上知识点,Apache Pig提供了一种有效的方式来处理和分析大数据,它基于Hadoop并使用类SQL的Pig Latin语言来简化MapReduce编程。Hortonworks是推动Hadoop生态系统发展的关键团队,提供了Hortonworks Data ...
接着,可以通过添加Apache的官方仓库,使用apt-get命令来安装Pig。安装完成后,配置Pig的环境变量,包括HADOOP_HOME和PIG_HOME,并将Pig的bin目录添加到PATH变量中,这样就可以在终端直接运行Pig命令了。 **使用...
Pig Latin 解决了 MapReduce 的这些问题,它提供了一种高级抽象的数据流语言。Pig Latin 的语句通常是逐步执行的,每一步都对应一个数据转换操作,如过滤(FILTER)、分组(GROUP)和聚合(AGGREGATE)。这种编程...
总结来说,Pigo是一个纯Go实现的面部检测库,它的优点在于轻量、高效且不依赖外部库,特别适合在资源有限的环境中进行人脸识别。开发者可以通过简单的API接口快速集成到自己的项目中,实现面部检测功能。对于需要在...
总结,Hive和Pig都是Hadoop生态系统中的重要工具,它们为大数据处理提供了方便的接口,使得数据分析工作更为高效。在实际应用中,可以根据数据的特性和需求选择适合的工具,或者结合两者的优势进行数据处理。
总结来说,通过学习如何使用Java实现Pig Latin,开发者不仅可以深入理解字符串操作和条件逻辑,还能提升对面向对象编程的理解。这种练习有助于提高编程技能,同时增加了对语言转换规则的趣味性认知。
通过上述内容,我们不仅了解了Pig的基本概念和使用方法,还学会了如何在实际环境中搭建Pig环境以及如何利用Pig进行数据分析。这对于希望深入学习Hadoop生态系统并掌握大数据处理技术的学习者来说是非常有价值的。
总结来说,这个“pig(猪脸数据集)”是一个专为猪脸检测设计的资源,它包含丰富的标注信息,适合用于训练和评估目标检测模型,尤其是基于YOLO的系统。对于任何致力于改进动物识别技术,或者在农业、畜牧业等领域应用...