2021SC@SDUSC


目录

一、Pig是什么?

二、Pig的特点

三、Pig安装部署

四、组内分工


一、Pig是什么?

Pig 是Apache平台下的一个免费开源项目,是MapReduce的一个抽象。它是一个工具,用于分析较大的数据集,并将其表示为数据流。常与Hadoop一起使用,可以使用Pig在Hadoop中执行所有的数据处理操作。

Pig提供的一种SQL-LIKE语言叫Pig Latin,该语言的编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。

二、Pig的特点

  • 丰富的运算符集 - 它提供了许多运算符提供各种操作。

  • 易于编程 - Pig Latin与SQL类似,是SQL-LIKE。

  • 优化 执行- Apache Pig中的任务自动优化其执行。

  • 可扩展性 - 用户可以通过已有操作开发自己的功能来实现。

  • 用户定义函数 - Pig提供了在其他编程语言(如Java)中创建用户定义函数的功能,并且可以调用或嵌入到Pig脚本中。

  • 处理各种数据 - Apache Pig分析各种数据,将结果存储在HDFS中。

三、Pig安装部署

Pig开源库网址:https://pig.apache.org/

  • 1.下载Apache Pig0.17

  • 2.解压

    $ tar zxvf pig-0.17.tar.gz 
  • 3.进入配置Pig文件

    $ vim /etc/profile
  • 4.配置Pig环境

    export PIG_HOME = /home/Hadoop/Pig
    export PATH  = PATH:/home/Hadoop/pig/bin
    export PIG_CLASSPATH = $HADOOP_HOME/conf
  • 5.检验安装

    $ pig –version

四、组内分工

Apache Pig 架构

Parser(解析器)

最初,Pig脚本由解析器处理,它检查脚本的语法,类型检查和其他杂项检查。解析器的输出将是DAG(有向无环图),它表示Pig Latin语句和逻辑运算符。在DAG中,脚本的逻辑运算符表示为节点,数据流表示为边。

Optimizer(优化器)

逻辑计划(DAG)传递到逻辑优化器,逻辑优化器执行逻辑优化,例如投影和下推。

Compiler(编译器)

编译器将优化的逻辑计划编译为一系列MapReduce作业。

Execution engine(执行引擎)

最后,MapReduce作业以排序顺序提交到Hadoop。这些MapReduce作业在Hadoop上执行,产生所需的结果。

我主要负责backend(后端)中的Execution engine库的代码分析

山东大学软件工程应用与实践——Pig代码综述相关推荐

  1. <2021SC@SDUSC>博客(5)山东大学软件工程应用与实践JPress代码分析(四)

    2021SC@SDUSC 前言 在前面三篇文章中,我对 JPress 项目的基础框架 JFinal 和 JBoot 在使用层面进行了拆解与分析.在接下来的文章中,我将在代码层面对 JPress 项目中 ...

  2. <2021SC@SDUSC>博客(9)山东大学软件工程应用与实践Jpress代码分析(8)

    2021SC@SDUSC Lucene和ElasticSearch 在上一篇博客中提到的Elasticsearch是一个基于Lucene搜索引擎为核心构建的开源,分布式,RESTful搜索服务器.这里 ...

  3. 山东大学软件工程应用与实践——GMSSL开源库(四)——SM9数字签名算法及验证的源代码分析

    2021SC@SDUSC 目录 一.引言 二.密钥的生成数字签名与签名验证相关代码 1.判定函数 2.签名的初始化函数 3.签名执行函数 4.真正的签名函数 5.签名验证初始化函数 6.签名验证执行函 ...

  4. 2021SC@SDUSC山东大学软件学院软件工程应用与实践--Ebiten代码分析 源码分析(三)

    2021SC@SDUSC 目录 一.概述 二.代码分析 1.Update() 2.Draw() 3.Layout() 一.概述 本文将介绍ebiten在RunGame函数中逐帧执行的Update()方 ...

  5. 2021SC@SDUSC山东大学软件学院软件工程应用与实践--Ebiten代码分析 源码分析(四)

    2021SC@SDUSC 目录 一.概述 二.代码分析 1.graphics.QuadVertices() 2.mipmap.Mipmap() 3.i.mipmap.DrawTriangles() 一 ...

  6. 2021SC@SDUSC山东大学软件学院软件工程应用与实践--YOLOV5代码分析(四)general.py-2

    2021SC@SDUSC 目录 前言 is_writeable函数 is_docker函数 is_colab函数 is_pip函数 is_ascii函数 file_size函数 check_onlin ...

  7. 2021SC@SDUSC山东大学软件学院软件工程应用与实践--YOLOV5代码分析(八)plots.py-1

    2021SC@SDUSC 前言 这篇分析plot.py文件,就如其名称一样,主要是一些用以展示的代码,也不是核心代码 外部库 from copy import copy from pathlib im ...

  8. 2021SC@SDUSC山东大学软件学院软件工程应用与实践--YOLOV5代码分析(十三)metrics.py-1

    2021SC@SDUSC 前言 这篇分析metrics.py文件,这个文件是用来计算评估指标,包括mAP.混淆矩阵.IOU相关的函数. fitness函数 def fitness(x):# Model ...

  9. 山东大学软件工程应用与实践——GMSSL开源库(一) ——WINDOWS下GMSSL的安装与编译的超详细保姆级攻略

    2021SC@SDUSC GMSSL简介 GmSSL是一个开源的密码工具箱,支持SM2/SM3/SM4/SM9/ZUC等国密(国家商用密码)算法.SM2国密数字证书及基于SM2证书的SSL/TLS安全 ...

最新文章

  1. 坚持学习打卡的人,将来会变成什么样?
  2. MySQL加索引语句不加锁:ALGORITHM=INPLACE, LOCK=NONE
  3. [react] 怎样有条件地渲染组件?
  4. linux date 常用格式,5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令...
  5. 知乎超万赞回答:中国有哪些「无心插柳柳成荫」的事情?
  6. 搜索 —— 启发式搜索 —— 模拟退火
  7. graph-easy使用简介
  8. dataguard日志传输模式解析_日志系统:从ELK到EFK的演进
  9. 可供创业团队技术开发参考的10条经验
  10. web 流程图工具_要什么第三方流程图制作软件,微软的Visio 2016不香吗?
  11. 【控制control】动力学基础
  12. 笔记 android 知乎,字节跳动团队发布Android Framework笔记,知乎上已获万赞
  13. T检验、F检验和统计学意义(P值或sig值)
  14. 胡灵 c语言,清华作业们男女主角现身
  15. Mac OS下FileVault encryption 使用原理与简介
  16. 一个简单的格式化信函生成器
  17. python access violation_Python x64下ctypes动态链接库出现access violation的原因分析
  18. 【Android SDM660源码分析】- 03 - UEFI XBL GraphicsOutput BMP图片显示流程
  19. MySQL日期差,时间差,使用DATEDIFF、TIMESTAMPDIFF函数
  20. i.MX - RT1052调教总结

热门文章

  1. 网络基础之邮件传输协议
  2. ❤️大家中秋节快乐❤️接下来请欣赏Python Opencv实战之图像阈值和模糊处理,万字实战,收藏起来吧~
  3. DDR2 ip调试问题集合
  4. 国家二级c语言程序设计技巧,国家二级C语言机考程序设计题技巧.doc
  5. PaddleHub--飞桨预训练模型应用工具{风格迁移模型、词法分析情感分析、Fine-tune API微调}【一】
  6. “话端午 做彩粽 包香包 传美德”端午节主题活动
  7. 华科计算机学院导师吕新桥,华中科技大学计算机学院导师和科研方向.doc
  8. 茄子快传 java,GitHub - liefyuan/KuaiChuan: 仿茄子快传的一款文件传输应用
  9. Xbox One 与PS4的终极PK
  10. h264 rtp FU-A