hadoop入门十四(pig)

来源:互联网 发布:男士休闲短靴 知乎 编辑:程序博客网 时间:2024/05/17 06:43

pig 一大打野猪

Pig是基于hadoop的一个数据处理的框架。
相比Java的MapReduce api,Pig为大型数据集的处理提供了更高层次的抽象,与MapReduce相比,Pig提供了更丰富的数据结构,一般都是多值和嵌套的数据结构。Pig还提供了一套更强大的数据变换操作,包括在MapReduce中被忽视的连接Join操作。
Pig包括两部分:

用于描述数据流的语言,称为Pig Latin。

  • 用于执行Pig Latin程序的执行环境,当前有两个环境:单JVM中的本地执行环境和Hadoop集群上的分布式执行环境。
  • Pig内部,每个操作或变换是对输入进行数据处理,然后产生输出结果,这些变换操作被转换成一系列MapReduce作业,Pig让程序员不需要知道这些转换具体是如何进行的,这样工程师可以将精力集中在数据上,而非执行的细节上。
    这里写图片描述

pig框架

这里写图片描述

pig是轻量级的语言 将 pig Latin 语言映射成Map-reduce.
hive更加贴近。

安装

这里写图片描述
下载解压 编辑环境变量
linux的环境变量
这里写图片描述
检测环境变量:

set //检查环境变量

进入grunt shell

pig -x local  

pig的工作模式

  • 本地模式:所有文件和执行的过程都在本地;一般用于测试程序
  • Mapreduce模式:实际工作的模式

配置pig的mapreduce模式

这里写图片描述
1.设置完成后重新登陆使得环境变量生效
这里写图片描述
找到namenode 等等
2.修改hosts
这里写图片描述
3.启动rrunt shell
这里写图片描述
4.Pig的参考文档
这里写图片描述

pig的运行方式

  • 脚本
  • Grunt
  • 嵌入式

Grunt

  • 自动补全机制 //只能实现命令补全
  • autocomplete文件 //需要补全的单词 放里头
  • Eclipes插件 PigPen

Grunt shell

ls cd cat copytolocal
执行操作系统命令:sh /usr/xxxxxx/jps
这里写图片描述

Pig数据模型

  • Bag:表(若干个 Tuple)
  • Tuple:行 记录(理解为 无序的集合)
  • Filed:属性
  • Pig不要求同一个bag里面的各个tuple有相同数量或者相同类型的field

对比着记忆的话:区别:表的数据类型没有要求,有差别。

Pig Latin的常用语句

  • Load:
  • Foreach:
  • filter:
  • dump:
  • store:

工作两年以后 一定要学会套路
Git是一门技术
GitHub是一个服务
Github的源码在github的代码托管呢。

可以使用shell执行git命令
git权威指南
Google
solr:os项目 docs
maven jacaee github git clone mvn shell


1.权威指南前三章的东西
2.如何使用git
3.个人在工作中的协调的模型(个人基于java项目的实际协同方式)

何为Git:就是一个工具 版本控制
首先 我不会使用UI 图形化的工具固然很强大 但是没有命令行爽

模块责任化
那么写DAO Service 层 如果有耦合 版本永远要一致
推上去 拉下来
当某个时刻 发现大家开发都完成了。管理人员,可以拿到项目测试功能,或者规范。

原创粉丝点击