Hue
所有文档

          百度MapReduce BMR

          Hue

          Hue简介

          本文以网站日志分析来介绍可Web访问的Hue服务。开发者可以在Web界面中通过SQL语句就能分析海量日志,大大降低了使用门槛。

          Hue为Hadoop数据分析提供了图形界面系统,仅使用浏览器便能够在Hadoop平台上导入数据、处理数据以及分析数据。

          创建集群

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

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

          Hue使用

          登录Hue Web界面

          1. 登录控制台,选择“产品服务->百度MapReduce BMR”,点击已创建的集群,进入该集群详情页。
          2. 在“相关应用”栏中点击“Hue Web UI”。

          3. 在弹出的认证页面中输入创建集群时设置的用户名和密码,并点击“登录”。

          4. 创建您登录Hue服务的用户名和密码,输入后点击“Create Account”后进入Hue Web界面。

          建表

          1. 在分析之前,首先需要根据网站日志建立一张Hive表。在Hue菜单栏中选择“Query Editors>Hive”,并输入以下SQL语句:

            DROP TABLE IF EXISTS access_logs;
            CREATE EXTERNAL TABLE access_logs(
                remote_addr STRING comment 'client IP',
                time_local STRING comment 'access time',
            request STRING comment 'request URL',
            status STRING comment 'HTTP status',
            body_bytes_sent STRING comment 'size of response body',
            http_referer STRING comment 'referer',
            http_cookie STRING comment 'cookies',
            remote_user STRING comment 'client name',
            http_user_agent STRING comment 'client browser info',
            request_time STRING comment 'consumed time of handling request',
            host STRING comment 'server host',
            msec STRING comment 'consumed time of writing logs'
            )
            COMMENT 'web access logs'
            ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'
            WITH SERDEPROPERTIES (
            "input.regex" = "([0-9\\.]+) - \\[([^\\]]+)\\] \"([^\"]*)\" ([\\d]+) ([\\d]*) \"([^\"]*)\" \"([^\"]*)\" ([\\S]+) \"([^\"]*)\" ([0-9\\.]+) ([\\S]+) ([0-9\\.]+)"
            )
            STORED AS TEXTFILE
            LOCATION "bos://datamart-bj/web-log-10k";
          2. 输入语句后点击执行按钮,Hive会重建access_logs表,然后通过正则表达式来解析日志文件。
          3. 成功创建access_logs表之后,点击左侧“Table”栏中的刷新按钮,找到access_logs表并预览示例数据:

          查询

          定了表之后,便可以进行查询了。

          • 若统计网页请求的结果,可使用以下语句:

            		SELECT status, count(1)
            		FROM access_logs
            		GROUP BY status
            
            	查询结果可切换到图表页,还可以以饼图的形式可视化数据,如下图所示:
            
            	![](https://doc.bce.baidu.com/bce-documentation/BMR/ScenarioTutorial-HueHive-1.PNG)
          • 若想了解网页访问量最大的时段,可使用下面的语句:

            		SELECT hour(from_unixtime(unix_timestamp(time_local, 'dd/MMMM/yyyy:HH:mm:ss Z'))) as hour, count(1) as pv
            		FROM access_logs
            		GROUP BY hour(from_unixtime(unix_timestamp(time_local, 'dd/MMMM/yyyy:HH:mm:ss Z')))
            
            	查询结果可切换到图表页,或以柱状图来更直观的查看结果:
            
            	![](https://doc.bce.baidu.com/bce-documentation/BMR/ScenarioTutorial-HueHive-2.PNG)

          在百度智能云,不仅可通过Hue使用Hive,还可通过Hue轻松制作地图的可视化效果,如下图所示,根据日志信息生成用户地图。欲了解详情,请联系bce@baidu.com。

          上一篇
          Pig
          下一篇
          Ranger