上云无忧 > 文档中心 > 百度智能云MapReduce开源组件介绍 - Pig
百度智能云MapReduce开源组件介绍 - Pig

文档简介:
Pig简介: 本文以分析Web日志统计每天的PV和UV为例,介绍如何在百度智能云平台使用Pig。 Pig是基于Hadoop的大规模数据分析平台,把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。
*此产品及展示信息均由百度智能云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

Pig简介

本文以分析Web日志统计每天的PV和UV为例,介绍如何在百度智能云平台使用Pig。

Pig是基于Hadoop的大规模数据分析平台,把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。Pig适用于大量的并行进程,因此可处理大规模数据集,而且Pig为复杂的海量数据并行计算提供了一个简单的操作和编程接口,便于写入和维护,可为实现不同的目的创建自己的进程。

Pig的数据类型,不仅支持包、元组和映射等高级概念,还支持简单的数据类型,如int、long、float、double、chararray和bytearray。

程序准备

您可以直接使用样例程序。

lines = LOAD '${INPUT}'; fields = FOREACH lines GENERATE FLATTEN(REGEX_EXTRACT_ALL($0,
 '(\\S+)\\s+-\\s+\\[(.*?)\\]\\s+\\"(.*)\\"\\s+(\\d{3})\\s+(.*)\\s+\\"(.*)\\"\\s+\\"
(.*)\\"\\s+(.*)\\s+\\"(.*)\\"\\s+(\\S+)\\s+(\\S+)\\s+(\\S+)')); access_logs = FOREACH fields
 GENERATE $0 AS remote_ip, ToString(ToDate($1, 'dd/MMM/yyyy:HH:mm:ss Z'), 'dd/MMM/yyyy') AS date; 
groups = GROUP access_logs BY date; pv = FOREACH groups GENERATE group, COUNT(access_logs); STORE pv INTO '${OUTPUT}';

创建集群

  1. 准备数据,请参考数据准备。
  2. 准备百度智能云环境。
  3. 登录控制台,选择“产品服务->MapReduce BMR”,点击“创建集群”,进入集群创建页,并做如下配置:

    • 设置集群名称
    • 设置管理员密码
    • 关闭日志开关
    • 选择镜像版本“BMR 1.0.0(hadoop 2.7)”
    • 选择内置模板“hadoop”。
  4. 请保持集群的其他默认配置不变,点击“完成”可在集群列表页可查看已创建的集群,当集群状态由“初始化中”变为“空闲中”时,集群创建成功。

运行Pig作业

  1. 在“产品服务>MapReduce>MapReduce-作业列表”页中,点击“创建作业”,进入创建作业页。
  2. 配置Pig作业参数,具体如下:

    • 作业类型:选择“Pig作业”。
    • 作业名称:输入作业名称,长度不可超过255个字符。
    • bos脚本地址:可输入样例程序路径bos://bmr-public-data/apps/pig/AccessLogAnalyzer.pig。
    • bos输入地址:可输入样例数据路径bos://bmr-public-data/logs/accesslog-1k.log
    • bos输出地址:输入bos://{yourbucket}/output,该路径必须具有写权限且路径中所指定的目录不能在bos上存在,例如,输出路径为bos://test/sqooptest,则sqooptest目录在bos上必须不存在。
    • 失败后操作:继续。
    • 应用程序参数:无。
  3. 在“集群适配”区,选择适配的集群。
  4. 点击“完成”,则作业创建完成。运行中的作业状态会由“等待中”更新为“运行中”,当作业运行完毕后状态会更新为“已完成”。

查看结果

可以去bos://{yourbukcet}/output路径下查看输出。如果使用系统提供的输入数据和程序,可以看到如下结果:

03/Oct/2015    139
04/Oct/2015    375
05/Oct/2015    372
06/Oct/2015    114

相似文档
  • Hue简介: 本文以网站日志分析来介绍可Web访问的Hue服务。开发者可以在Web界面中通过SQL语句就能分析海量日志,大大降低了使用门槛。 Hue为Hadoop数据分析提供了图形界面系统,仅使用浏览器便能够在Hadoop平台上导入数据、处理数据以及分析数据。
  • Ranger简介: Apache Ranger 提供集中式的权限管理框架,可以对Hadoop生态中的HDFS/Hive/YARN 等组件提供细粒度的权限访问控制,并且提供了Web UI页面方便管理员进行操作。
  • Presto简介: Presto是一个分布式SQL查询引擎,用于查询分布在一个或多个不同数据源中的大数据集。Presto通过使用分布式查询,可以快速高效的完成海量数据的查询,并提供了Web UI页面方便用户查看任务查询详情与服务运行状态。
  • Zeppelin简介: zeppelin 是一个交互式数据分析工具,可支持spark、sql等数据分析工具(详细介绍,请参考zeppelin 官网)。 本文将介绍如何在zeppelin上链接配置hiveserver2,来介绍zeppelin上sql的基本使用。
  • Flink简介: Apache Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Flink的运行时本身也支持迭代算法的执行。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部