AI 助理
备案 控制台
开发者社区 阿里云开发者学堂 文章 正文

网站流量日志分析—数据入库—ODS 建表操作|学习笔记

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习网站流量日志分析—数据入库—ODS 建表操作

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

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


网站流量日志分析—数据入库—ODS 建表操作


整个建表需要创建事实表、维度表以及点击流模型表,当中来说,建表难度不大,唯一需要强调一点,就是表当中有哪些字段哪些模型,一定要跟数据对应上。

这个表为了方便发现是一个 partitioned 是一个分区表,今天的数据导过来之后,后面过段时间再去分析,如果说每隔一周分析一次,是不是把数据按照周来分析比较好,同样的要每天分析一次的数据表要为天,所以小技巧要注意到。

接下来具体操作,首先来到数仓当中建立一个新的数据库,打开服务器,当连接之后首先创建一个新的数据库叫做 IT 黑马 ,创建好数据库之后,使用切换的数据库,在这当中没有任何的数据。

image.png

首先创建一下原始数据表叫做 ODS 表。打开网站流量日志分析项目资料,当中有一个第三步数据入库 ETL ,当中有一个 ods-create sql,打开它,

drop table if exists ods-weblog-origin

create table ods-weblog-origin(

valid string,

remote-addr string,

remoye-user string,

time-local string,

request string,

status string,

body-bytes -sent string,

http-referer string,

http-user –agent string,

partitioned by (datestr string)

row format delimited

fields terminated by ‘\001’;

第一个表叫做原始日志数据表,再次强调,原始数据表对应的是 mr 处理完的数据,而不是买点采集的数据,这个表有 vaild 校验是否合法,是否有效,用户的IP ,用户的标识,时间,请求页面,状态码,发送的数据量,协议从哪来的以及终端信息,后面是一个分区时段,根据日期来进行分区,后面指定的是分割 row 01, 数据中也是0,所以写不写没有太多的问题。

接下来把表创建一下,上面第一条语序表示删除这个表,如果之前在操作可以删除,现在是新的库不需要执行它,把下面表复制过来,粘贴回车,这样就创建好第一个 ODS 原始数据表,

drop table if exists ods-click-pageviews;  

create table ods-weblog-origin(

valid string,

remote-addr string,

remote-user string,

time-local string,

request string,

status string,

body-bytes-sent-string,

http-referer string,

http-user-agent string,

partitioned by (datestr string)

row format datinited

fileds terminated by’\001’;

接下来还要把点击流模型创建,第一个叫做点击流模型的 pageview 模型表,还有一项专注的是绘画识别,绘画停留几步和停留时间,所以有这些字段信息,还要打开进来的数据,结合数据确定一下,有 SOH,IP, 时间,步骤号,步骤停留时间等等,发现有所谓的 SOH ,用户标识,停留的时间,time-local,visit-step 等等,这些字段是数据当中确定的,因此一定要心细。也是一个分区表,点击流模型数据来自于原始数据的一个梳理,它是业务上的延伸扩展,是1号数据,点击流模型也是1号,建立顺序表与它保持一致,分割符是杠01,接下来复制,点击流第一个模型叫做 pageview,复制它来到当中做一个粘贴与之执行。

drop table if exists ods-click-stream-visit;

create table ods-click-stream-visit(

session string,

remote-addr string,

intime string,

outtime string,

inpage string,

referal string

pagevisitioned  int)

partitioned by (datestr string)

riw formatdelimited

fields terminated by’\001’’’;

第二个点击流模型叫做 visit 表,它是点击流当中针对每个筛型做了一个起始和结尾情况的聚举,当中有这些字段,有绘画,用户进入时间,离开时间,进入页面离开页面,这就是点击流模型的 visit 模型表,创作数据表叫做 ods-click –stream-visit,这里有一个小技巧需要强调一下,在企业当中叫做什么名字,没有强制规定,但通常叫做以简短的英文表示该表的名字,不要用汉语拼音,更不要用中文,这样看起来易于别人的维护和阅读理解,创建好之后还是保持一样也是个分区表,分区阶段也是日期,因为在数据当中可以发现日期的字段,这里收集的数据是2018年11月1号的数据,所以说建立分区的时候要以日期20181101为分区字段,这是 visit 表模型复制一下创建,复制完成之后来到 have 当中右键粘贴,

drop table if exists t-dim-time;

create table t-dim-time(date key-int,year string,day string,month string,day string,hour string ) row format delimited flieds terminated by’

维度表的数据,在项目当中,以一个维度表为例,叫做时间维度,等下去分析数据的时候,可以从不同的时间维度来开展,时间,小时,月份等等,因此看一下维度表有哪些字段,第一个有一个无意义的主键( int year month day hour)可以想象一下,后面分析每一天确定天跟表进行关联就可以分析相关的指标。根据逗号来分割,之后说到为什么用逗号,需要看数据怎么生成来的,这是非常普通的时间维度表。

把这个表创建,创建完之后,使用命令叫做 show tables 看在数仓当中就存在原始的日志表和时间维度表以及两个点击流模型表,这个表现在当中当然没有数据,是创建表的结构,这样完成了第一步操作去创建 ODS 表的结构。

创建 ods 层表

表名通常以剪短的英文表示,不用汉语拼音甚至中文;

建表的时候表的字段顺序类型要和数据保持一致,心细;

通常企业中采用分区表进行优化,方便后续查询管理。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
云课程笔记
目录
相关文章
zzy的aly
|
6天前
|
PyTorch 算法框架/工具
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
本文介绍了PyTorch中的F.softmax()和F.log_softmax()函数的语法、参数和使用示例,解释了它们在进行归一化处理时的作用和区别。
zzy的aly
93 1
Pytorch学习笔记(七):F.softmax()和F.log_softmax函数详解
糜终
|
12天前
|
数据采集 机器学习/深度学习 存储
使用 Python 清洗日志数据
使用 Python 清洗日志数据
糜终
19 2
zzy的aly
|
6天前
|
数据可视化
Tensorboard可视化学习笔记(一):如何可视化通过网页查看log日志
关于如何使用TensorBoard进行数据可视化的教程,包括TensorBoard的安装、配置环境变量、将数据写入TensorBoard、启动TensorBoard以及如何通过网页查看日志文件。
zzy的aly
28 0
lsug6eziqmdfk1111
|
9天前
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
lsug6eziqmdfk1111
20 0
1288912195458132
|
2月前
|
jenkins 持续交付
jenkins学习笔记之三:使用jenkins共享库实现日志格式化输出
jenkins学习笔记之三:使用jenkins共享库实现日志格式化输出
1288912195458132
41 1
jenkins学习笔记之三:使用jenkins共享库实现日志格式化输出
路边两盏灯
|
2月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
路边两盏灯
107 1
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
莫登耀
|
1月前
|
SQL 人工智能 运维
在阿里云日志服务轻松落地您的AI模型服务——让您的数据更容易产生洞见和实现价值
您有大量的数据,数据的存储和管理消耗您大量的成本,您知道这些数据隐藏着巨大的价值,但是您总觉得还没有把数据的价值变现出来,对吗?来吧,我们用一系列的案例帮您轻松落地AI模型服务,实现数据价值的变现......
莫登耀
163 3
游客mldfis24krfue
|
2月前
|
存储 监控 网络协议
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
游客mldfis24krfue
61 2
土木林森
|
2月前
|
数据库 Java 监控
Struts 2 日志管理化身神秘魔法师,洞察应用运行乾坤,演绎奇幻篇章!
【8月更文挑战第31天】在软件开发中,了解应用运行状况至关重要。日志管理作为 Struts 2 应用的关键组件,记录着每个动作和决策,如同监控摄像头,帮助我们迅速定位问题、分析性能和使用情况,为优化提供依据。Struts 2 支持多种日志框架(如 Log4j、Logback),便于配置日志级别、格式和输出位置。通过在 Action 类中添加日志记录,我们能在开发过程中获取详细信息,及时发现并解决问题。合理配置日志不仅有助于调试,还能分析用户行为,提升应用性能和稳定性。
土木林森
44 0
土木林森
|
2月前
|
开发者 前端开发 编解码
Vaadin解锁移动适配新境界:一招制胜,让你的应用征服所有屏幕!
【8月更文挑战第31天】在移动互联网时代,跨平台应用开发备受青睐。作为一款基于Java的Web应用框架,Vaadin凭借其组件化设计和强大的服务器端渲染能力,助力开发者轻松构建多设备适应的Web应用。本文探讨Vaadin与移动设备的适配策略,包括响应式布局、CSS媒体查询、TouchKit插件及服务器端优化,帮助开发者打造美观且实用的移动端体验。通过这些工具和策略的应用,可有效应对屏幕尺寸、分辨率及操作系统的多样性挑战,满足广大移动用户的使用需求。
土木林森
43 0

阿里云开发者学堂

热门文章

最新文章

  • 1
    Oracle自动清理日志脚本
  • 2
    POCO日志组件Tips
  • 3
    打开haproxy的日志
  • 4
    shell脚本之日志拆分和监听
  • 5
    【阿里巴巴Java编程规范学习 三】Java异常日志规约
  • 6
    A complete log of this run can be found in:npm ERR! C:AppData\Roaming\npm-cache\_logs
  • 7
    年度回顾:阿里云Elasticsearch 在泛日志场景的核心能力建设
  • 8
    SQL Server-聚焦事务对本地变量、临时表、表变量影响以及日志文件存满时如何收缩(三十一)
  • 9
    使用elk+redis搭建nginx日志分析平台(转)
  • 10
    仿酷狗音乐播放器开发日志十一——CTreeNodeUI的bug修复
  • 1
    聊聊日志硬扫描,阿里 Log Scan 的设计与实践
    341
  • 2
    Python中精通异常日志记录
    39
  • 3
    MySQL通过 bin-log 恢复从备份点到灾难点之间数据
    280
  • 4
    Linux ContOS7 日志管理(rsyslog)
    55
  • 5
    Android 截屏 录屏 与获取log
    46
  • 6
    查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
    53152
  • 7
    中间件应用日志记录和监控
    179
  • 8
    mongoDB查看数据的插入日志
    370
  • 9
    neo4j如何查看日志信息
    272
  • 10
    Springboot整合与使用log4j2日志框架【详解版】
    540
  • 相关课程

    更多
  • 基于MongoDB构建实时日志分析平台
  • 日志服务SLS实现云产品可观测
  • 日志服务 SLS 可观测数据分析平台介绍
  • 大数据知识图谱系列—基于ELK+Flink日志全观测最佳实践
  • 场景实践-基于阿里云Quick BI 对MOOC网站日志分析
  • 相关电子书

    更多
  • PostgresChina2018_赖思超_PostgreSQL10_hash索引的WAL日志修改版final
  • Kubernetes下日志实时采集、存储与计算实践
  • 日志数据采集与分析对接
  • 相关实验场景

    更多
  • 通过日志服务实现云资源OSS的安全审计
  • 如何将OSS数据导入至SLS中进行分析
  • 日志服务之使用Nginx模式采集日志
  • 使用DAS实现数据库自动SQL优化
  • 使用DAS实现数据库自动SQL限流
  • 使用Count功能批量创建资源
  • 下一篇
    AI助理化繁为简,速取代码参数——使用python SDK 处理OSS存储的图片

    玻璃钢生产厂家铸铜玻璃钢彩绘雕塑制作上海玻璃钢关公雕塑北海玻璃钢泡沫雕塑价格范围商场美陈策划方案免费平凉玻璃钢雕塑哪里有淄博玻璃钢卡通雕塑河南安阳玻璃钢雕塑厂家价格玻璃钢佛像雕塑哪个信誉好商场美陈策划ppt许昌玻璃钢雕塑厂长春徐州玻璃钢雕塑丹阳商场主题美陈成都大型商场美陈绍兴抽象玻璃钢雕塑淮北广场玻璃钢雕塑广东公园玻璃钢雕塑生产厂家北京艺术商场美陈市场价云南公园玻璃钢雕塑定制商场玻璃钢花盆设计临澧玻璃钢雕塑厂家大型商场美陈供货商淮南卡通玻璃钢雕塑厂玻璃钢雕塑更好看高质量的玻璃钢花盆大连玻璃钢雕塑设计施工株洲玻璃钢雕塑怎么收费玻璃钢果篮雕塑单价恩施景观玻璃钢雕塑江苏商场主题创意商业美陈品牌玻璃钢雕塑租赁郑州香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

    玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化