zoukankan      html  css  js  c++  java
  • 数据处理框架:Pig

    Pig

    1. pig 是基于hadoop的一个数据处理框架.
    2. MapReduce是使用java开发的。Pig有一套自己的数据处理语言。Pig的数据处理过程要转化为MR 来运行。
    3. Pig的数据处理语言是数据流方式,类似于初中的数学题,需要一步一步解,最终得到结果。
    4. Pig基本数据类型:int、long、float、double、chararray、bytearray
      复合数据类型:Map、Tuple(类似于数组)、Bag(类似数据字典)
      Bag的数据类型如:{(‘age’,31),(‘name’,’张三’)}

    如何安装pig:

    1.把pig-0.11.1.tar.gz复制到/usr/local下
    2.使用命令tar -zxvf pig-0.11.1.tar.gz解压缩
    3.使用命令mv pig-0.11.1 pig 进行重命名
    4. 编辑文件vi /etc/profile 设置环境变量

     export $PIG_HOME=/usr/local/bin
     export PATH =......$PIG_HOME/bin....
    

    保存,然后执行source /etc/profile
    5. 编辑文件$PIG_HOME/conf/pig.properties,增加两行如下内容

    fs.default.name=hdfs://hadoop:9000
    mapred.job.tracker=hadoop:9001

    pig是基于hadoop框架的数据处理框架,所以需要跟hadoop 关联起来,上边的配置主要针对的是Namenode 和 JobTracker

    如何使用pig:

    对wlan数据如何使用pig进行分析处理
    1. 把待处理的数据上传到HDFS中
    2. 把HDFS中的数据转换为pig可以处理的模式
    按照以下图里的格式进行转化:
    这里写图片描述

    A = LOAD ‘/wlan’ AS (t0:long, msisdn:chararray, t2:chararray, t3:chararray, t4:chararray, t5:chararray, t6:long, t7:long, t8:long, t9:long, t10:chararray);
    A是别名 ,方便引用。

    如何查看是否加载进去?
    DUMP A ;
    3.把里面的有用的字段抽取出来
    B = FOREACH A GENERATE msisdn, t6, t7, t8, t9;

    Pig是一步一步来的,如果业务比较复杂,通过sql无法一步解决,用pig非常方便。

    DUMP B;
    这里写图片描述
    4.分组数据
    C = GROUP B BY msisdn;
    因为有的手机号有重复,所以我们根据手机号进行分组。

    DUMP C;

    这里写图片描述
    5.流量汇总
    D = FOREACH C GENERATE group, SUM(B.t6), SUM(B.t7), SUM(B.t8), SUM(B.t9);

    分组之后的名字,当我们就叫group.

    DUMP D;
    这里写图片描述
    6.结果在pig中, 存储到HDFS中
    STORE D INTO ‘/wlan_result’;
    这里写图片描述
    7.进入hdfs进行查看,是否保存到这里。
    这里写图片描述

    其中有一个文件是不为空,查看该文件是否是我们刚才在pig 里的处理结果。
    这里写图片描述

    我们还可以使用pig对处理结果进行排序
    E = ORDER D BY group ;
    DUMP E ;
    Pig 还有很多用法,具体可以参看官方文档。

  • 相关阅读:
    页面元素定位-CSS元素基本定位
    自动化测试理论知识以及相关框架
    flask自学
    关于测试报告的一些理解
    jenkins、k8s、docker学习
    常用装饰器
    正则
    pycharm设置展示运行结果行数以及python一些好用的模块
    python相关知识点3,线程锁、单例模式
    python相关知识点2(各种内置方法)
  • 原文地址:https://www.cnblogs.com/bigdata1024/p/8387445.html
Copyright © 2011-2022 走看看