网站流量日志分析—数据入库—宽表、窄表由来概述|学习笔记

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习网站流量日志分析—数据入库—宽表、窄表由来概述

开发者学堂课程【大数据分析之企业级网站流量运营分析系统开发实战(第三阶段)网站流量日志分析—数据入库—宽表、窄表由来概述】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/695/detail/12203


网站流量日志分析—数据入库—宽表、窄表由来概述


这个概念背后所反映的正是面向分析的最高标准,一切有利于分析即可。在搞清楚概念之前,首先想一下,之前经过操作已经把数据导入到 ods 当中,接下来经过 etl 把它导入到 dw 层即可完成最后的入库操作。当然在 etl 过程当中需要抽取什么字段,转化成什么字段是根据需求相关,如果它比较 不 etl 也行,所以说本质把握住清楚。为什么 etl 过程当中会出现窄表宽表,为了更好理解它,通过一个简单的需求去感受一下什么是宽表什么是窄表,有什么区别,什么好处。

统计分析今天每个小时有多少访问量,首先第一个,宽表窄表的引入,这时候要统计访问量,今天当然是数据的一天,在 origin 原始表当中,这当中正好是今天的20181101,要统计今天当中哪个小时背后需求,要根据小时 hour 进行分组, group by 分组之后统计每个组内的个数 count ,怎么统计不是重点,重点在于分组,要统计每个小时分组,在表当中有关小时的字段,

image.png

确定一下,能跟时间相关的就是这个字段叫做 time local ,发现这字段当中包含的属性很多,有年月日时分秒,需要跟当中的06这几个记录来到同一分组,不管是六点四十九分还是六点五十分,都属于六点,只要属于六点,就应该来到同一小时当中,如果在当下的数据当中要开展分析,因为数据小时如何在字段当中一部分,需要对字段进行截取,当下的情况 group by 当中并不能而是进行截取,叫做 substring ,这是个截取符号。如何截取,从一二三四五六七八九十空格十一,从第12位开始截取两位就是这里也需要做一个相关的具体操作从第12位开始截取两位叫做 time local 字段,如果这样写,在信任有什么问题,首先要解释下到底能不能截取出来,复制做测试,select from这个表origin原始日志表,这么操作到底问题在哪里,

image.png

截取出来的是06,截取字段一样来到同一个分组问题在哪里?首先这样可以做告诉你这样做没问题,但它缺点在于每一条记录在分组之前都需要进行所谓的结局操作,截取操作完成之后截取字段一样的才能来到同一个分组,那你想一下这个数据如果有100万需要截取100万次,有3就截取3次,那么为什么会造成这种原因,有个字段叫做 time local,看上去它是一个字段,实际上它里面包含的属性非常多,刚才易解读出来了里面有什么,有年月日时分秒左边这叫做日期右边叫做时间,比如说一个字段当中如何了很多个字段属性,那么根据里面某一个字段进行操作的时候,当然就需要进行截取,虽很简单,在描写一下为什么会写下的原因叫做表中的字段看似一个字段实则糅杂了多个属性在一起,就比如时间,看似是一个字段实则糅杂了年月日时分秒还有日期时间字段,那么后边分析是不是就要进行截取唯一不方便,那这时候明白原因之后,

下一个问题怎么解决,既然是多个属性结合在一起,那接下来就要进行拆分,把糅合在一起的属性拆分出来变成单独独立的新字段,比如拆除一个新的字段就叫做 hour,在分组说直接进行 group by hour,这样分组是非常方便就不需要截取了。所以解决它之后就产生了一个结果,原来表当中的字段一个拆分出来变成多个字段变多了,表的字段变多了,所以这个表成为什么,因为表的字段相比较之前变多了,所以把它称之为宽表,相对应原来没有拆分之前原来对应的表称之为叫做窄表,所以为什么有宽表窄表,原因就在这。

又因为字段变多之后,信息变得更加具体的变得更加详细了,比如这里想看年看年,先看月看月,也把宽表看成了一个什么,叫做明细表明细的单词叫做 detail明细详细表。所以再回头调剂,又因为变宽之后信息更加详细具体,所以也可以称之为叫作明细表。这就是这个标题支点的由来,为什么会有宽表窄表明细表,原因就在于此。表当中的字段组合在一起分析的时候需要截取效率极低不利于分析,为了分析方便给它做一个拆分,那么这时候感受到宽表数据是完全来自于窄表通过我们的窄表进行截取操作,那么这时候背后能够感觉到一个忧患点一个隐藏的忧患,这两份表的数据是不是完全重复,总和度极高,答案是非常正确的融合度极高几乎百分之百融入。那么为什么还可以允许它?说到树上领域的最高标准叫什么一切有利于分析即可为。宽表的出现叫做为了分析的方便,当为了分析方便就可以把宽表给它拆分出来变成所谓的明细表,这样即使两个表的数据冗余度很高那么也可以只要费一方面就可以操作。那么这就是宽表窄表的概念,什么宽字段变多了较宽什么窄以前的相对应的层次窄表。这就是我们宽表摘窄表一个概念描述。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
|
5月前
|
存储 Java 关系型数据库
基于JSP的九宫格日志网站
基于JSP的九宫格日志网站
|
6月前
|
监控 安全 前端开发
Nginx 访问日志中有 Get 别的网站的请求是什么原因?
Nginx 访问日志中有 Get 别的网站的请求是什么原因?
86 0
|
Shell Perl
检测网卡流量,并按规定格式记录在日志中
检测网卡流量,并按规定格式记录在日志中
84 2
|
6月前
|
存储 弹性计算 监控
日志服务SLS最佳实践:通过SLS数据加工从VPC flowlog中过滤出跨region CEN流量
本文就通过一个客户的实际案例开介绍如何使用在无法直接开启CEN flowlog的情况下,使用SLS的数据加工能力,从VPC flowlog的数据中过滤出客户需要的流量日志出来。
135 0
日志服务SLS最佳实践:通过SLS数据加工从VPC flowlog中过滤出跨region CEN流量
|
分布式计算
有一个日志文件visitlog.txt,其中记录了用户访问网站的日期和访问的网站地址信息,每行一条记录。要求编写mapreduce程序完成以下功能: 1、 将不同访问日期的访问记录分配给不同的red
有一个日志文件visitlog.txt,其中记录了用户访问网站的日期和访问的网站地址信息,每行一条记录。要求编写mapreduce程序完成以下功能: 1、 将不同访问日期的访问记录分配给不同的red
142 0
|
5月前
|
存储 SQL 多模数据库
多模数据库Lindorm再升级:对接Dataphin,打通数据治理“最后一公里”
Lindorm通过与Dataphin的深度整合,进一步解决了数据集成和数据治理的问题,为企业提供更加高效和更具性价比的方案。
多模数据库Lindorm再升级:对接Dataphin,打通数据治理“最后一公里”
|
4月前
|
安全 数据管理
DataphinV4.1大升级:支持Lindorm开启高性价比数据治理,迎来“公共云半托管”云上自助新模式
DataphinV4.1大升级:支持Lindorm开启高性价比数据治理,迎来“公共云半托管”云上自助新模式
|
5月前
|
数据采集 安全 API
DataphinV4.1大升级: 支持Lindorm开启高性价比数据治理,迎来“公共云半托管”云上自助新模式
Dataphin 是阿里巴巴旗下的一个智能数据建设与治理平台,旨在帮助企业构建高效、可靠、安全的数据资产。在V4.1版本升级中,Dataphin 引入了Lindorm等多项新功能,并开启公共云半托管模式,优化代码搜索,为用户提供更加高效、灵活、安全的数据管理和运营环境,提升用户体验,促进企业数据资产的建设和价值挖掘。
1552 3
DataphinV4.1大升级: 支持Lindorm开启高性价比数据治理,迎来“公共云半托管”云上自助新模式
|
5月前
|
存储 DataWorks 安全
DataWorks产品使用合集之没有使用独享资源组,如何将Lindorm中的数据导出或迁移到其他数据存储服务
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
47 0