文档章节

【数据架构解读】基于阿里云数加StreamCompute和MaxCompute构建的访问日志统计分析

_夜枫
 _夜枫
发布于 2017/04/05 22:57
字数 977
阅读 23
收藏 0

【场景】

用户搭建网站会不断的产生访问日志(Nginx,Apache访问日志)。为了从访问日志中挖掘出更多价值,本文主要阐述如果利用阿里云数加从沉睡中的访问日志中获取更有价值的数据,包括用于实时统计和展示网站访问的一系列指标,例如PV,UV,设备,地理,状态码,爬虫,网络流量等指标。

 

【具体分析需求】

用户想根据访问日志来实时统计和展示网站访问重要指标,需要设计到流式计算和离线计算,那么阿里云数加·StreamCompute更好的可以解决日志的实时计算场景,而阿里云数加·MaxCompute则更好的来处理批量数据,适合于离线数据计算。

 

那么如何来使用阿里云数加来构建一个高可用的数加架构两者计算场景都可以满足?

 

【日志字段】

 

  • 日志格式:

 

$remote_addr - $remote_user [$time_local] “$request” $status $body_bytes_sent”$http_referer” “$http_user_agent” [unknown_content];

 

 

 

 

 

  • 日志字段说明:

字段名称

字段说明

$remote_addr

发送请求的客户端IP地址

$remote_user

客户端登录名

$time_local

服务器本地时间

$request

请求,包括HTTP请求类型+请求URL+HTTP协议版本号

$status

服务端返回状态码

$body_bytes_sent

返回给客户端的字节数(不含header)

$http_referer

该请求的来源URL

$http_user_agent

发送请求的客户端信息,如使用的浏览器等

 

 

 

 

  • 真实的访问日志数据示例如下:

 

 

192.168.1.101 - - [17/Mar/2016:10:28:30 +0800] "GET /fonts/fontawesome-webfont.woff?v=4.2.0 HTTP/1.1" 0.021 1207 304 0 "https://sls.console.aliyun.com/css/lib.css" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"

 

【数据架构】

根据实时计算场景和批量计算的场景要求,笔者尝试从如下数据架构来满足:

70cc05e5dc752d96db0b87710bb1c6559e1bbb70

 

如上数据架构图,用户可根据红色箭线来完成实时数据处理场景,根据蓝色箭线来完成离线数据处理需求。

 

  • 实时处理逻辑:Logstash-->DataHub-->StreamCompute-->AnalyticDB-->DataV,笔者做出来的最终效果图如下:
  • e4fb3549f5d41fae8c6f9ff70ebffb45d336d1eb

 

 

  • 离线计算逻辑:Logstash-->DataHub(DataConnector)-->MaxCompute-->大数据开发套件Data IDE -->Quick BI.效果图如下:
  • b12fe6facb600c9a6dd8ad6ca33dac610dd2ea9c

 

用心的用户会发现笔者总体的架构是按照如下数据流逻辑来构建的:

eb07eac006aff1f3a660e975d3c85b20e0cbab33

 

  • 数据采集:笔者采用了自己熟悉的开源工具Logstash,当然用户也可以选择自己熟悉的比如Fluentd,都是开源中比较常用来做日志的并发采集。其中DataHub顾名思义为数据中枢,其实pub/sub系统,负责将实时采集的数据进行采集和消费。阿里云数加DataHub提供了Logstash和Fluentd Output插件,无缝支持讲日志数据写入到DataHub并由下游消费。具体文件详见:https://datahub.console.aliyun.com/intro/introduction.html
  • 数据存储:在实时计算中StreamCompute是没有存储的,因为流式数据场景就是无界的数据持续不断的写入,持续不断的计算并将结果输出给下游存储供消费。而在离线计算场景中,数据被DataHub 的归档功能给存储在MaxCompute,用来做批量计算。
  • 数据展现:两者都是讲最终处理好的数据写入到阿里云数加AnalyticDB中,其中AnalyticDB支持海量数据的毫秒级查询和分析,最终实时场景展示采用数据可视化DataV制作的实时指挥大屏,而离线采用了Quick BI制作的报表。

笔者也会根据架构图将详细的操作文档及代码共享给大家,敬请期待!也祝愿大家能够快速的针对自己网站的访问日志构建出分析结果。

本文转载自:https://yq.aliyun.com/articles/68500

_夜枫
粉丝 10
博文 506
码字总数 0
作品 0
朝阳
后端工程师
私信 提问
阿里巴巴大数据计算平台MaxCompute(原名ODPS)全套攻略(持续更新20171127)

概况介绍 大数据计算服务(MaxCompute,原名ODPS,产品地址:https://www.aliyun.com/product/odps)是一种快速、完全托管的TB/PB级数据仓库解决方案。MaxCompute向用户提供了完善的数据导入方...

隐林
2017/05/05
0
0
【大数据】odps数据迁移方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/binggetong/article/details/82762289 1、按迁移工具分类 一共分为2种:Tunnel批量数据通道、DataHub实时通道...

Elsa晓冰
2018/09/18
0
0
基于阿里云数加MaxCompute的企业大数据仓库架构建设思路

摘要: 数加大数据直播系列课程主要以基于阿里云数加MaxCompute的企业大数据仓库架构建设思路为主题分享阿里巴巴的大数据是怎么演变以及怎样利用大数据技术构建企业级大数据平台。 本次分享嘉...

阿里云云栖社区
2018/03/15
121
0
阿里云ACE共创空间——大数据方案体验1 日志服务

阿里云ACE共创空间——大数据方案体验1 日志服务 从阿里云官方文档介绍中,可以看到Log service日志服务主要包含三部分的内容: 1、 实时采集与消费LogHub 2、 查询分析Search/Analytics 3、...

xiyoumocao
2018/11/26
0
0
五步帮你实现用户画像的数据加工

企业最终的数据往往都隐藏在日志背后,如果从日志背后挖掘出有价值的信息,勾画出平台或网站的用户画像对精准化运营有着重要的帮助。阿里云技术专家祎休带来阿里在处理日志、构建数仓上的最佳...

Mr_zebra
2018/02/01
109
0

没有更多内容

加载失败,请刷新页面

加载更多

vue vue-router beforeRouteEnter

本文转载于:专业的前端网站➬vue vue-router beforeRouteEnter beforeRouteEnter (to, from, next) { // 在渲染该组件的对应路由被 confirm 前调用 // 不!能!获取组件实例 `thi...

前端老手
50分钟前
4
0
Spring Boot 2 实战:结合 Docker 容器化

1. 前言 Docker 是啥?好处是啥? 什么现在如果作为一名开发你还不知道甚至没有用过我都感觉你落伍了。Docker 是一种虚拟化的容器技术,目的为了打造持续集成、版本控制、可移植性、隔离性和...

码农小胖哥
54分钟前
4
0
Linux 常用查询句柄的命令(Too many open files)

摘要 查询命令 进程占用的句柄总数 lsof -n | wc -l 查看哪一个进程占用的句柄最多 lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more 第一列 是 占用句柄数; 第二列 是 进程号 PID;...

liangxiao
54分钟前
5
0
JavaScript权威指南笔记5

第五章、语句 0、概述 JS程序是一系列可执行语句的集合。 通过控制语句来改变语句的默认执行顺序。 控制语句:条件、循环和跳转(如return、break和throw) 2、复合语句 当多条语句被当做一条语...

_Somuns
今天
5
0
vmware安装ubuntu18.04总是 panic -not syncing:corrupted stack end detected inside schedule

Vmware 安装ubuntu 总是卡着不动, 提示panic -not synciong 网上提示很多办法,都试了效果不佳, 找到了完美解决办法 你的兼容模式重新选一下为6.0,兼容性对硬件有要求的 即可实现 成功安装...

dragon_tech
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部