• pig概述


    pig概述
    pig是一个用于并行计算的高级数据流语言和执行框架;
    类sql、文件处理框架;
    有一套和sql类似的执行语句,处理的对象是HDFS上文件
    Pig的数据处理语言是数据流方式的,一步一步的进行处理;

    Pig基本数据类型:int、long、float、double、chararry、bytearray
    复合数据类型:
    Map([open#apache])、Tuple(类似于数组,(19,2))、Bag(Tuple的集合,{(19,2), (18,1)})

    pig运行模式
    pig运行模式有两种:本地式和分布式
    pig -x local
    pig 等价于 pig -x mapreduce
    quit 退出

     

    注意事项
    load:加载hdfs上的文件,不支持加载本地文件,这点和hive的load不同;
    pig load 既可以是目录也可以说文件。如果是文件的话,就是load该文件夹下所有的文件。

    filter:过滤where
    大小写敏感:表名、字段名、PigStorage, COUNT, SUM;其余的大小写是不敏感的
    STORE:pig处理结果存储到HDFS系统上
    DUMP :将pig处理结果展现在控制台上


    空判断:
    pig:id is not null
    hive:not id is null 或者not id in (1,2,3)
    d = foreach c generate aa::id as id, aa::name as name, b::score as score, aa::age as age;
    d = foreach c generate aa::id as id, name as name, score as score, age as age;
    如果a和b中都有id的话,a或者b是不能去掉的, 如果某个字段只有某个表中有,可能省略表名不写

    使用场景
    文件数据源有很多个列,但是有一些是没用的, 先经过pig过滤掉一些非法的数据放到HDFS文件中,然后再由hive去处理 。

  • 相关阅读:
    POJ 2653 Pick-up sticks [线段相交 迷之暴力]
    POJ1556 The Doors [线段相交 DP]
    POJ 3304 Segments[直线与线段相交]
    POJ2318 TOYS[叉积 二分]
    挖坑
    HDU3488 Tour [有向环覆盖 费用流]
    BZOJ 3438: 小M的作物 [最小割]
    POJ 2125 Destroying The Graph [最小割 打印方案]
    网络流算法与建模总结
    CF266D. BerDonalds [图的绝对中心]
  • 原文地址:https://www.cnblogs.com/luogankun/p/3897102.html
Copyright © 2020-2023  润新知