数盟公开课PIG基础知识.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PIG基础知识 Pig简介 什么是Pig? Pig是一个基于Hadoop的大规模数据分析平台,它提供的SQL-LIKE语言叫Pig Latin,该语言的编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。Pig为复杂的海量数据并行计算提供了一个简单的操作和编程接口。 Pig来啦 简单例子: 所有被20到25岁网民访问的Top5网址列表 惨不忍睹的MapReduce 今天JAVA MR用了吗? 引自:/upload/2013-12/13121711124848.pdf Pig部署设置 安装 下载 解压tar zxvf pig-0.1x.x.tar.gz 设置 加入profile,PATH 修改配置文件 在perties中加入 =hdfs://namenode:9000 mapred.job.tracker=namenode:9001 命令行执行:export HADOOP_HOME=/home/hadoop/hadoop-1.0.xxx export PIG_CLASSPATH=$HADOOP_HOME/conf Pig命令行 本地模式 pig –x local 集群模式 pig 执行脚本 pig -f xxx.pig Pig基础命令 PIG中使用HDFS 列目录 Pig基础命令 PIG中使用HDFS 从本地复制文件到HDFS。 从本地复制文件到HDFS Pig基础命令 load加载数据文件 变量 =load ‘hdfs 路径文件目录或文件名 USING PigStorage(‘:) Pig基础命令 有结构的load加载数据文件 变量 =load ‘hdfs 路径文件目录或文件名 USING PigStorage(‘:) as (xxxxxx) Pig基础命令 DUMP输出 Pig基础命令 STORE存储文件 Pig数据类型 基本数据类型 Int long float 对应java.lang Chararray 对应String Bytearray 对应byte[] 复杂数据类型 Map [‘name’#’rtt’,’age’#5} Bag {(Tuple),()} Tuple (‘ddd’,5) Pig语法 FILTER (by) grunt pass = load /tmp/passwd USING PigStorage(:) as (user:chararray,per:chararray,uid:int,gid:int,desc:chararray,homedir:chararray, shell:chararray ); user = filter pass by uid 500; Pig语法 FOREACH GENERATE grunt describe pass; pass: {user: chararray,per: chararray,uid: int,gid: int,desc: chararray,homedir: chararray,shell: chararray} grunt users = foreach pass generate user; grunt describe users; users: {user: chararray} grunt dump users; Pig语法 DISTINCT grunt describe pass; pass: {user: chararray,per: chararray,uid: int,gid: int,desc: chararray,homedir: chararray,shell: chararray} grunt shells = foreach pass generate shell; grunt distict_shell = distinct shells; Pig语法 SAMPLE grunt s_pass = sample pass 0.1; grunt dump s_pass; Pig语法 LIMIT grunt l_user = limit user 10; Pig语法 JOIN u_s= foreach pass generate user,shell; u_h= foreach pass generate user,homedir; describe s_u; s_u: {user: chararray,shell: chararray} describe s_h; s_h: {user: chararray,homedir: chararray} u_s_h = join s_h by user, s_

文档评论(0)

a13355589 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档