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 层 如果有耦合 版本永远要一致
推上去 拉下来
当某个时刻 发现大家开发都完成了。管理人员,可以拿到项目测试功能,或者规范。