专栏首页木东居士的专栏小案例:数据仓库搭建中的流量日志维度表案例

小案例:数据仓库搭建中的流量日志维度表案例

关于作者:小姬,某知名互联网公司产品专家,对数据采集、生产、加工有所了解,期望多和大家交流数据知识,以数据作为提出好问题的基础,挖掘商业价值。

0x00 前言

我将整理文章分享数据工作中的经验,因为业务内容上的差异,可能导致大家的理解不一致,无法体会到场景中的诸多特殊性,不过相信不断的沟通和交流,可以解决很多问题。前面我们分析了职场基本功、数据指标体系,少量的数据仓库内容,今天我们来就工作中经常遇到的数据维护问题,聊一下流量日志的维度表搭建思考。

历史导读:

小进阶:数据指标体系和数据治理的管理

小诀窍:不妨尝试从交付质量上打败对手

小尝试:基于指标体系的数据仓库搭建和数据可视化

以下,Enjoy:

0x01 问题场景描述

0x01 我遇见的问题场景描述

前面文章中我们提到过《基于指标体系的数据仓库搭建和数据可视化》,强调了指标体系对数据数据仓库搭建和数据可视化的必要性和重要性。例如我们的指标体系如下:

表头:

日期、城市、品类、页面、访问人数、订单数、交易金额

在这个指标体系,依然会存在很多问题,以维度“页面”为例,我们知道在遍历枚举页面值的时候,常常因为埋点数据的历史“包袱”和规则的不稳定因素,导致很多意想不到问题的。

场景举例

1.某产品页面 A 最初上线页面埋点

  • id:page1234
  • name:x业务频道页

2.x 时间页面 A 迭代优化,由于信息不对称,页面 A 采用新的埋点

  • id:page2345
  • name:x频道推荐页

3.在 x+n 时间页面 A 继续迭代优化,复用在不同的终端系统内,再次因为信息不对称,页面 A 的埋点信息再次更新

  • id:page3456
  • name:x业务频道推荐页

备注:埋点数据历史id、name不一致,数据可视化中需要做归一处理;

0x02 数据埋点维度表

基于场景问题的存在,通常要专门维护数据埋点维度表,将种种的“数据埋点”问题,以人工的方式“清洗数据”,比如将以上的场景举例问题翻译为维表数据如下:

说明:

1.将历经3次变动更新的埋点映射为统一的“union_page_id”,进行统一的命名规范“x业务频道推荐页”。 2.以快照的形式保持历史记录,例如2018-10-25更新数据数据的时候只有2条保持为快照,后续每次更新保留一次快照,可以最大限度的在数据回溯和数据问题排查的时候起到作用。

采用“人工清洗”数据的方式也存在很大的成本和困难,尤其是面对动辄数千上万的数据埋点信息,这些数据埋点可能已经积累了数年,历经数百人的沉淀。因此,我们在清洗每条数据的时候理解每条埋点的字符串背后的信息是非常很难的,所以“清洗”埋点数据也必将是一个长期的运营方案行为。

0x03 数据埋点“清洗”运营思考

认知层面

读者可能像我一样在数据埋点范围内并不能做到一家之言,因此,我认为在开始数据埋点“标准化清洗”前最重要的是针对当前的埋点问题进行梳理和整理,以报告的形式汇报或是分享,让相关人员产生共识:

  • 埋点的问题严重性和必要性,做与不做之间的问题和收益是什么;
  • 埋点的数据问题非短期项目性、非一次性,需要有长期的运营策略坚持,阶段性的看到受益或者沉淀。

执行层面

在没有充足资源投入情形下,建议以核心的埋点数据为首期目标,以知识库的形式沉淀内容,定期的想消费使用数据的群体“广播”分享。

在这个阶段期望达到2个目的:

  • 解决核心的埋点数据问题,快速让数据消费者受益,拉拢支持方;
  • 让事情跑起来,以实际战斗结论检验方案效果,为后续产品系统化做准备。

如果前期运营的得当,在足够的受益和支持方前提下,最终数据的管理工作还是要推动工具化建设的。很多人会将其理解为埋点元数据管理,再次强调几点格外的注意事项:

  • 管理数据基本强调的是依据标准规范SOP执行动作,数据埋点在此基础上还有多思考怎么搭建内容知识库,首先的根据是让内容从0-1,然后才是从1-9的提升。这个过程“运营”的特点是,避免让少数人参与内容的生成,而是鼓励有能力建设内容的人在日常工作中能够不断的贡献知识点,这方面参照“维基百科”词条的搭建。
  • 高质量内容的建设不是目的,根本的方向还是让人消费“内容”,元数据管理系统基本的受众人群是比较有限的,所以我们在做类似工具的时候,要充分考虑知识的分享渠道和广播场景,怎么能做到将内容广播出去,让人消费是重点。

FAQ

1.上面的提到的维表数据怎么使用?

小姬:数据埋点日志记录了用户访问的page_id等埋点数据信息,以日志中的page_id关联维度表中的page_id,获取union_page_id做去重处理(会关联出多条数据,然后做归一化),最终展示的是union_page_name 。

2.数据埋点维表中需要记录埋点页面的终端或者APP吗?

小姬:不需要,我们记录的iOS,Android,x_app,xx_app以数据埋点的流量日志为准即可,流量日志中实际存在即代表存在,这有利于让我们及时的发现问题,校验数据埋点维表的数据及时性和准确性。

本文分享自微信公众号 - 木东居士(Data_Engineering),作者:小姬

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 《七天数据埋点之旅》第六天 埋点管理和验收

    埋点管理是埋点设计的组织方式,可以细分为面向开发者的管理、面向监控者的管理和面向使用者的管理。本节节介绍面向使用者的管理。通过本节的学习,你将获得以下方面的认知...

    木东居士
  • 《七天数据埋点之旅》第二天:埋点之前

    关于作者:我是水大人,资深潜水员,一个基于开发、面向分析、走向全栈的饱经摧残的数据新手,爱折腾不爱玩,爱总结爱思考的老兵,错了改改了又错的惯犯。

    木东居士
  • 《七天数据埋点之旅》指引篇

    数据埋点是一份上手容易精通难的典型例子,可以说人人都可以埋点,但是埋点质量差异巨大,而这份差异随着时间推移会加速放大。

    木东居士
  • 一个人的创业和创业思考

    因为凌帅一直币乎写作,还有一些人气,通过一天的努力,共发展会员159人,系统排名第4。

    凌帅出口
  • 一维条码之code93码的生成和打印

    一维条码code93码支持的字符集有44个,(0-9)十个数字,(A-Z)二十六个英文大写字母,以及八个特殊字符:“空格符”、“-”、“.”、“*”、“$”、“...

    中琅软件
  • Gradle的快速入门

    1.基础知识: Gradle提供了:构建项目的框架。但是其中起作用的是Plugin。 Gradle在默认情况下提供了很多常用的Plugin。例如:构建Java的...

    用户1134788
  • 浅谈csrf

    CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常...

    C4rpeDime
  • Android开发中遇到的一些小问题

    经过搜索,发现如果是要访问“www.baidu.com”这样的网址或者纯文字时,会报ActivityNotFoundException错误。

    提莫队长
  • Dubbo源码-Dubbo是如何随心所欲自定义XML标签的

    JackieZheng
  • 《vue+vant+node+mongoDB+koa2》电商项目实战连载(3)

    通过 <van-col span="4"> ,span的数字来控制某个容器的宽度。

    web前端教室

扫码关注云+社区

领取腾讯云代金券