zoukankan      html  css  js  c++  java
  • 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去处理 。

  • 相关阅读:
    Swift # Apple Pay集成
    GitHub Top 100 简介
    一些常用算法
    CocoaPods 建立私有仓库
    安装 CocoaPods & Alcatraz
    iOS程序 # 启动过程
    Apache & WebDav 配置(二)
    SVN & Git (二)
    SVN & Git (一)
    poj 3169 Layout (差分约束)
  • 原文地址:https://www.cnblogs.com/luogankun/p/3897102.html
Copyright © 2011-2022 走看看