数据处理框架:Pig
Pig
- pig 是基于hadoop的一个数据处理框架.
- MapReduce是使用java开发的。Pig有一套自己的数据处理语言。Pig的数据处理过程要转化为MR 来运行。
- Pig的数据处理语言是数据流方式,类似于初中的数学题,需要一步一步解,最终得到结果。
- Pig基本数据类型:int、long、float、double、chararray、bytearray
复合数据类型:Map、Tuple(类似于数组)、Bag(类似数据字典)
Bag的数据类型如:{(‘age’,31),(‘name’,’张三’)}
如何安装pig:
1.把pig-0.11.1.tar.gz复制到/usr/local下
2.使用命令tar -zxvf pig-0.11.1.tar.gz解压缩
3.使用命令mv pig-0.11.1 pig 进行重命名
4. 编辑文件vi /etc/profile 设置环境变量
export $PIG_HOME=/usr/local/bin export PATH =......$PIG_HOME/bin....
保存,然后执行source /etc/profile
5. 编辑文件$PIG_HOME/conf/pig.properties,增加两行如下内容
fs.default.name=hdfs://hadoop:9000
mapred.job.tracker=hadoop:9001
pig是基于hadoop框架的数据处理框架,所以需要跟hadoop 关联起来,上边的配置主要针对的是Namenode 和 JobTracker
如何使用pig:
对wlan数据如何使用pig进行分析处理
1. 把待处理的数据上传到HDFS中
2. 把HDFS中的数据转换为pig可以处理的模式
按照以下图里的格式进行转化:
A = LOAD ‘/wlan’ AS (t0:long, msisdn:chararray, t2:chararray, t3:chararray, t4:chararray, t5:chararray, t6:long, t7:long, t8:long, t9:long, t10:chararray);
A是别名 ,方便引用。
如何查看是否加载进去?
DUMP A ;
3.把里面的有用的字段抽取出来
B = FOREACH A GENERATE msisdn, t6, t7, t8, t9;
Pig是一步一步来的,如果业务比较复杂,通过sql无法一步解决,用pig非常方便。
DUMP B;
4.分组数据
C = GROUP B BY msisdn;
因为有的手机号有重复,所以我们根据手机号进行分组。
DUMP C;
5.流量汇总
D = FOREACH C GENERATE group, SUM(B.t6), SUM(B.t7), SUM(B.t8), SUM(B.t9);
分组之后的名字,当我们就叫group.
DUMP D;
6.结果在pig中, 存储到HDFS中
STORE D INTO ‘/wlan_result’;
7.进入hdfs进行查看,是否保存到这里。
其中有一个文件是不为空,查看该文件是否是我们刚才在pig 里的处理结果。
我们还可以使用pig对处理结果进行排序
E = ORDER D BY group ;
DUMP E ;
Pig 还有很多用法,具体可以参看官方文档。
数据处理框架:Pig的更多相关文章
- 大数据处理框架之Strom: Storm----helloword
大数据处理框架之Strom: Storm----helloword Storm按照设计好的拓扑流程运转,所以写代码之前要先设计好拓扑图.这里写一个简单的拓扑: 第一步:创建一个拓扑类含有main方法的 ...
- 大数据处理框架之Strom:认识storm
Storm是分布式实时计算系统,用于数据的实时分析.持续计算,分布式RPC等. (备注:5种常见的大数据处理框架:· 仅批处理框架:Apache Hadoop:· 仅流处理框架:Apache Stor ...
- TensorFlow多线程输入数据处理框架(四)——输入数据处理框架
参考书 <TensorFlow:实战Google深度学习框架>(第2版) 输入数据处理的整个流程. #!/usr/bin/env python # -*- coding: UTF-8 -* ...
- tensorflow学习笔记——多线程输入数据处理框架
之前我们学习使用TensorFlow对图像数据进行预处理的方法.虽然使用这些图像数据预处理的方法可以减少无关因素对图像识别模型效果的影响,但这些复杂的预处理过程也会减慢整个训练过程.为了避免图像预处理 ...
- JSON数据处理框架Jackson精解第一篇-序列化与反序列化核心用法
Jackson是Spring Boot默认的JSON数据处理框架,但是其并不依赖于任何的Spring 库.有的小伙伴以为Jackson只能在Spring框架内使用,其实不是的,没有这种限制.它提供了很 ...
- Spark大数据处理框架入门(单机版)
导读 引言 环境准备 安装步骤 1.下载地址 2.开始下载 3.解压spark 4.配置环境变量 5.配置 spark-env.sh 6.启动spark服务 7.测试spark stay hungry ...
- Hadoop 1.0 和 2.0 中的数据处理框架 - MapReduce
1. MapReduce - 映射.化简编程模型 1.1 MapReduce 的概念 1.1.1 map 和 reduce 1.1.2 shufftle 和 排序 MapReduce 保证每个 red ...
- Spring 数据处理框架的演变
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 定量分析的成败在很大程度上取决于采集,存储和处理数据的能力.若能及时地向业务决策者提供深刻并可靠的数据解读,大数据项目就会有更多机会取得成功 ...
- 大数据处理框架之Strom:Flume+Kafka+Storm整合
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 storm-0.9 apache-flume-1.6.0 ...
随机推荐
- 配置nginx服务器 —— Nginx添加多个二级子域名
1.安装nginx centos/linux下的安装Nginx 2.安装好后进入Nginx目录中 在conf目录下建立一个vhost(ps:名字自己设定)文件夹 其中的$NGINXHOME为你的ngi ...
- Mysql5.7在CentOs环境下定时备份数据库
咱创建一个目录,专门用于存放Mysql的备份文件./data/mysql_bak.写个shell脚本,每分钟备份一次测试以下. 脚本代码: chmod /testdir/backup.sh //给脚本 ...
- B2B2C商品模块数据库设计
kentzhu: 在电子商务里,一般会提到这样几个词:商品.单品.SPU.SKU 简单理解一下,SPU是标准化产品单元,区分品种:SKU是库存量单位,区分单品:商品特指与商家有关的商品,可对应多个SK ...
- MySQL 日志的类型
日志文件对于一个服务器来说是非常重要的,它记录着服务器的运行信息,许多操作都会写日到日志文件,通过日志文件可以监视服务器的运行状态及查看服务器的性能,还能对服务器进行排错与故障处理,MySQl中有六种 ...
- Ubuntu下Maven配置与Maven项目创建教程
一. Ubuntu下Maven配置 windows下Maven配置参考http://www.cnblogs.com/LexMoon/p/JavaMaven.html ubuntu下Maven地址htt ...
- RotatedRect 类的用法
RotatedRect 以 Emgu.CV.Structure 为命名空间. 表示带有旋转角度的矩形. 结构说明 普通矩形的基本结构
- 我博客上的围棋js程序
作为一个围棋爱好者,就决定在博客里加个围棋js程序.于是,申请了博客的js权限,美化美化我的博客. 好在js的语法像C系的,看了看,写个程序应该还是可以的. 围棋里,设计好基本的数据结构: //a是1 ...
- python爬虫框架scrapy问题的解决
2016-09-24:今天的弄了一天的scrapy的环境的配置的,linux很多的学过的事情都忘记啦.理论和实践的结合还是非常的重要的,不光要学会思考,更要学会总结纪录.还要多多回忆的和复习.学习了不 ...
- DM6446的Bootloader
RBL(ARM ROM Boot Loader)在芯片出厂的时候就已经烧写到ROM里了,这不需要大家关心,上电后,RBL会自动从EMIFA EM_CS2 memory space (0x0200 00 ...
- 笔记︱支持向量机SVM在金融风险欺诈中应用简述
本笔记源于CDA-DSC课程,由常国珍老师主讲.该训练营第一期为风控主题,培训内容十分紧凑,非常好,推荐:CDA数据科学家训练营 欺诈一般不用什么深入的模型进行拟合,比较看重分析员对业务的了解,从异常 ...