1.  参考说明

参考文档:

http://pig.apache.org/docs/r0.17.0/start.html#build

2.  安装环境说明

2.1.  环境说明

CentOS7.4+ Hadoop2.7.5的伪分布式环境

主机名

NameNode

SecondaryNameNode

DataNodes

centoshadoop.smartmap.com

192.168.1.80

192.168.1.80

192.168.1.80

Hadoop的安装目录为:/opt/hadoop/hadoop-2.7.5

3.  安装

3.1.  Pig下载

http://pig.apache.org/releases.html#Download

[root@server1 ~]# mkdir /opt/mongodb

[root@server1 ~]# chown -R mongodb:mongodb
/opt/mongodb/

3.2.  Pig解压

将下载的pig-0.17.0.tar.gz解压到/opt/hadoop/pig-0.17.0目录下

4.  配置

4.1.  修改profile文件

vi
/etc/profile

export PIG_HOME=/opt/hadoop/pig-0.17.0

export PATH=$PATH:$PIG_HOME/bin

4.2.  将JDK升级为1.8版本

将JDK切换成1.8的版本,并修改所有与JAVA_HOME相关的变量

4.3.  修改pig的配置文件

vi
/opt/hadoop/pig-0.17.0/conf/pig.properties

exectype=mapreduce

4.4.  修改mapred-site.xml以启用jobhistory

vi
/opt/hadoop/hadoop-2.7.5/etc/hadoop/mapred-site.xml

<property>

<name>mapreduce.jobhistory.address</name>

<value>192.168.1.80:10020</value>

</property>

5.  启动Hadoop

5.1.  启动YARN与HDFS

cd
/opt/hadoop/hadoop-2.7.5/sbin

start-all.sh

5.2.  启动historyserver

cd
/opt/hadoop/hadoop-2.7.5/sbin

mr-jobhistory-daemon.sh start historyserver

6.  应用Pig工具

6.1.  导入文件到HDFS中

hadoop
fs -mkdir -p /input/ncdc/micro-tab

hadoop
fs -copyFromLocal sample.txt /input/ncdc/micro-tab/sample.txt

6.2.  启动运行Pig的交互式Shell环境

cd
/opt/hadoop/pig-0.17.0/bin

pig

6.3.  运行任务

grunt> records = load
'/input/ncdc/micro-tab/sample.txt' as (year:chararray, temperature:int,
quality:int);

grunt> dump records;

6.4.  退出

grunt> \q

6.5.  显示模式

cd
/opt/hadoop/pig-0.17.0/bin

pig

grunt> records = LOAD
'/input/ncdc/micro-tab/sample.txt' as (year:chararray, temperature:int,
quality:int);

grunt> DUMP
records;

grunt> DESCRIBE records

records:
{year: chararray,temperature: int,quality: int}

grunt>

6.6.  过滤数据

grunt> filter_records =
FILTER records BY temperature != 9999 AND quality IN (0, 1, 4, 5,
9);

grunt> DUMP
filter_records;

6.7.  分组记录

grunt> grouped_records =
GROUP filter_records BY year;

grunt> DUMP
grouped_records;

grunt> DESCRIBE
grouped_records;

grouped_records: {group: chararray,filter_records:
{(year: chararray,temperature: int,quality: int)}}

grunt>

6.8.  计算最大值

grunt> max_temp = FOREACH
grouped_records GENERATE group, MAX(filter_records.temperature);

grunt> DUMP
max_temp;

6.9.  查看执行过程

grunt> ILLUSTRATE max_temp;

Pig安装与应用的更多相关文章

  1. 大数据之pig安装

    大数据之pig安装 1.下载 pig download 2. 解压安装 mapreduce模式安装: 1:设置HADOOP_HOME,如果pig所在节点不是集群中的节点,那就需要把集群中使用的hado ...

  2. Pig安装及简单使用(pig版本0.13.0,Hadoop版本2.5.0)

    原文地址:http://www.linuxidc.com/Linux/2014-03/99055.htm 我们用MapReduce进行数据分析.当业务比较复杂的时候,使用MapReduce将会是一个很 ...

  3. Hadoop:pig 安装及入门示例

    pig是hadoop的一个子项目,用于简化MapReduce的开发工作,可以用更人性化的脚本方式分析数据. 一.安装 a) 下载 从官网http://pig.apache.org下载最新版本(目前是0 ...

  4. Hadoop之Pig安装

    Pig可以看做是Hadoop的客户端软件,使用Pig Latin语言可以实现排序.过滤.求和.分组等操作. Pig的安装步骤: 一.去Pig的官方网站下载.http://pig.apache.org/ ...

  5. Pig安装

    环境: hadoop-2.4.1.jdk1.6.0_45.pig-0.12.1   1.下载pig并解压 tar -xzvf pig-0.12.1.tar.gz 2.设置环境变量 export PIG ...

  6. pig安装配置

    pig的安装配置很简单,只需要配置一下环境变量和指向hadoop conf的环境变量就行了 1.上传 2.解压 3.配置环境变量 Pig工作模式 本地模式:只需要配置PATH环境变量${PIG_HOM ...

  7. 阿里云ECS服务器部署HADOOP集群(五):Pig 安装

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建. 1 环境介绍 一台阿里云ECS服务器:master 操作系统:CentOS 7.3 Hadoop ...

  8. pig安装配置及实例

    一.前提 1. hadoop集群环境配置好(本人hadoop版本:hadoop-2.7.3) 2. windows基础环境准备: jdk环境配置.esclipse环境配置 二.搭建pig环境 1.下载 ...

  9. hadoop,hbase,pig安装

    注意端口,办公网只能访问8000-9000的端口 pig的一些lib文件版本 /home/map/hadoop/lib下一些98.5的lib没删除

随机推荐

  1. MFC多线程技术

    MFC中有两类线程,分别称之为工作者线程和用户界面线程.二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环. 工作者线程没笑消息机制,通常用来执行后台计算和维护任务,如 ...

  2. 【BZOJ4184】shallot 线性基

    题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=4184 此题如果我们不考虑删除元素这一个操作,那么就是一道裸的线性基题. 但是此题会删除 ...

  3. Vundle,Vim 的 Bundle(转)

    长久以来,我管理 Vim 配置的方式都非常原始—— zip 打包,然后发到邮箱上.偶尔会发生忘记备份,或者配置混淆的状况,不过由于懒筋发作,竟然这个方案就这么用了两年. 终有一天,我觉得这个方法太笨了 ...

  4. Java基础知识01

    1. String,StringBuffer和StringBuilder的区别? String:final修饰,String对象创建后不可修改:StringBuffer和StringBuilder对象 ...

  5. 开发工具 -- PyDev的使用

    1.创建PyDev工程 2.创建源文件夹src 3.新建.py文件 其他注意事项 1.设置字体大小 2.显示行号Ctrl + F10 3.编码设置为UTF-8 4.最好将工程创建到默认工作空间 5.总 ...

  6. protocol buffers的编码原理

    protocol buffers使用二进制传输格式传递消息,因此相比于xml,json来说要轻便很多. 示例:假设定义了一个Message message Test1 { required int32 ...

  7. python mysql uitl

    from traceback import format_exc import pymysql as MySQLdb class MySQLUtils(object): def get_db_conn ...

  8. HTTP协议常用标准状态码含义

     HTTP协议常用标准状态码含义 状态码    含义 备注 200 请求已完成 2XX状态码均为正常状态码返回. 300 多种选择 服务器根据请求可执行多种操作.服务器可根据请求者 (User age ...

  9. docker 创建elasticsearch集群镜像

    搞了2天终于搞好了 更新: 2017/2/15: 更改elasticsearch.yml中绑定ip, 可开启集群效果 //: supervisord.conf 加入 autostart=true, 开 ...

  10. onkeydown事件

    <img src="images/hot.jpg" alt="" id="imgId" class="img1"/ ...