Pig
所有文档

          百度MapReduce BMR

          Pig

          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
          上一篇
          Sqoop
          下一篇
          Hue