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. 在操作Centos系统时经常出现You have new mail in /var/spool/mail/root提示怎么回事?

    例如,在命令窗口中输入date查看时间,下面会出现一行提示 实际上,该功能为Linux操作系统核对系统资源状态并汇总,默认发送到root用户的/var/spool/mail/root目录,并在标准输出 ...

  2. J03-Java IO流总结三 《 FileInputStream和FileOutputStream 》

    1. FileInputStream    FileInputStream是一个文件输入节点流,它是一个字节流,它的作用是将磁盘文件的内容读取到内存中. FileInputStream的父类是Inpu ...

  3. Kubernetes使用GlusterFS实现数据持久化

    k8s中部署有状态应用等需要持久化数据的应用,必不可少得用存储,k8s支持很多中存储方案,我司目前使用的存储有glusterfs(分为容器化和裸机方式).nfs供应用选用,本次就简单实战下gluste ...

  4. DOM时钟

    使用JS使时钟运动 DOM运动,主要操作css3中transform:rotate(): 计时器setInterval(),setTimeout(),如何防止时钟偷停; 时钟的时针.分针.秒针的运动的 ...

  5. java泛型---通配符,泛型嵌套

    package generic; import java.util.ArrayList; import java.util.List; /** * ? -->通配符,类型不确定,用于声明 变量| ...

  6. 第7章—SpringMVC高级技术—处理multipart形式的数据

    处理multipart形式的数据 MultipartResolver 用于处理文件上传,当收到请求时 DispatcherServlet 的 checkMultipart() 方法会调用 Multip ...

  7. 命令行创建Android应用,命令行生成签名文件,命令行查看签名信息,对APK包签名并编译运行

    一.命令行创建Android应用 android create project -n HelloWorld -t android-22 -p HelloWorld1 -k org.crazyit.he ...

  8. 为镜像添加SSH服务

    操作Docker容器介绍了一些进入容器的办法,比如attach.exec等命令,但是这些命令都无法解决远程管理容器的问题.因此,当需要远程登录到容器内进行一些操作的时候,就需要SSH的支持了. 如何自 ...

  9. Nodejs学习笔记(六)—Node.js + Express 构建网站预备知识

    前言 前面经过五篇Node.js的学习,基本可以开始动手构建一个网站应用了,先用这一篇了解一些构建网站的知识! 主要是些基础的东西... 如何去创建路由规则.如何去提交表单并接收表单项的值.如何去给密 ...

  10. 关于Win8快速启动失效解决

    注册表修改HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 下BootExecute值为  autocheck空格 ...