【大数据面试】【数仓项目】分层:ODS层、DWD层、DWS层、ADS层构成、操作
一、ODS层
1、保持数据原貌,不做任何修改
2、数据压缩:LZO压缩,减少磁盘空间
3、创建的是分区表:可以防止后续的全表扫描
包括
用户行为:string line dt
ods_start;
ods_event(商品列表、商品详情、点击
广告
点赞、评论、收藏
…… )
业务数据:8张表(用户、支付、订单表、订单详情、商品表、商品一二三级分类……)
二、DWD层
1、ETL对数据的核心字段进行清洗【去重、去空】
2、ETL工具是什么
hive的hql
spark 的spark SQL
MR
Python
kettle(数据清洗框架)
3、清洗掉多少算正常?
万分之一
4、维度退化
商品表、三级分类、二级分类、一级分类 ==》 商品表
数仓建模思想:“维度建模”-星型模型、雪花模型、星座模型,尽量选择星型模型
目的:减少重复的join操作
新版数仓:省份+地区,退化到省份表
5、脱敏:
对身份证号、手机号、个人信息脱敏,如159****1165

ods层可以有不脱敏的数据,但这样的表有权限
6、压缩,优势:减少磁盘空间
7、列式存储,parquet:提高查询效率
8、分区表:
用户行为数据
ods_start:get_json_object()函数
ods_event:使用自定义UDF、自定义UDTF,以及额外的get_json_object()进行后续解析
业务数据
用户、支付、订单表、订单详情、商品表
三、DWS层
1、表的组成
用户行为宽表(用户id)、商品宽表、设备行为宽表(非登录用户的指标)
2、哪张宽表最宽
用户行为宽表
3、有多少个字段
60-100个
4、哪60个字段/哪100个字段
说30个以上即可
如用户行为:今天登录的次数、点赞的次数、评论次数、收藏次数、取消点赞次数、加入购物车次数、下单次数、取消下单次数、删除购物车次数、取消收藏次数、追加评论次数、支付次数、支付金额、下单金额、取消订单的商品数/金额、发货次数、退款次数、退款金额
5、流转G复活相关指标
流转
日活:100w
月活:大约是日活的2-3倍,300e
总注册的用户是多少:1000w-3000w之间,
GMV(公司机密)
日GMV:100w日活,10w人下单,一单50-100,10w订单大约是500w-1000w的流水
利润在10%-20%,利润大约在100w-200w之间【进货成本】
人员成本:程序员,1000
复购率:某日常用品复购(手纸、面膜、牙膏)10-20%
手表、显示器、电脑1%-2%
转化率:商品详情 ==》 加购物车 ==》 下单 ==》 支付
5%-10% 60-70% 90%-95%
留存率:1/2/3、周留存、月留存、
搞活动 10-20%
四、ADS层:分析指标
生产环境下大概在100-200个指标,说30个以上
日活、新增、留存、转化率、丢失、回流、连续三周活跃、七天内连续三天的活跃登录、GMV、复购率、复购率排行
要求可以现场手写指标【第六章】
【大数据面试】【数仓项目】分层:ODS层、DWD层、DWS层、ADS层构成、操作的更多相关文章
- CarbonData:大数据融合数仓新一代引擎
[摘要] CarbonData将存储和计算逻辑分离,通过索引技术让存储和计算物理上更接近,提升CPU和IO效率,实现超高性能的大数据分析.以CarbonData为融合数仓的大数据解决方案,为金融转型打 ...
- 面试系列二:精选大数据面试真题JVM专项-附答案详细解析
公众号(五分钟学大数据)已推出大数据面试系列文章-五分钟小面试,此系列文章将会深入研究各大厂笔面试真题,并根据笔面试题扩展相关的知识点,助力大家都能够成功入职大厂! 大数据笔面试系列文章分为两种类型: ...
- 新闻网大数据实时分析可视化系统项目——2、linux环境准备与设置
1.Linux系统常规设置 1)设置ip地址 使用界面修改ip比较方便,如果Linux没有安装操作界面,需要使用命令:vi /etc/sysconfig/network-scripts/ifcfg-e ...
- 新闻网大数据实时分析可视化系统项目——18、Spark SQL快速离线数据分析
1.Spark SQL概述 1)Spark SQL是Spark核心功能的一部分,是在2014年4月份Spark1.0版本时发布的. 2)Spark SQL可以直接运行SQL或者HiveQL语句 3)B ...
- 入门大数据---Spark车辆监控项目
一.项目简介 这是一个车辆监控项目.主要实现了三个功能: 1.计算每一个区域车流量最多的前3条道路. 2.计算道路转换率 3.实时统计道路拥堵情况(当前时间,卡口编号,车辆总数,速度总数,平均速度) ...
- GooseFS助力大数据业务数倍提升计算能力
前言 GooseFS是由腾讯云推出的一款分布式缓存方案,主要针对包括需要缓存加速的数据湖业务场景,提供基于对象存储COS服务的近计算端数据加速层. GooseFS 基于开源大数据缓存方案 Alluxi ...
- 数据仓库分层中的ODS、DWD、DWS
1.数据仓库DW 1.1简介 Data warehouse(可简写为DW或者DWH)数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源.为了决策需要而产生的,它是一整套包括了etl.调度 ...
- [java大数据面试] 2018年4月百度面试经过+三面算法题:给定一个数组,求和为定值的所有组合.
给定一个数组,求和为定值的所有组合, 这道算法题在leetcode应该算是中等偏下难度, 对三到五年工作经验主要做业务开发的同学来说, 一般较难的也就是这种程度了. 简述经过: 不算hr面,总计四面, ...
- Hadoop大数据面试--Hadoop篇
本篇大部分内容參考网上,当中性能部分參考:http://blog.cloudera.com/blog/2009/12/7-tips-for-improving-mapreduce-performanc ...
- 大数据面试(HR电话了解)
1什么是HA集群? 所谓HA,即高可用(7*24小时不中断服务) HA集群是hadoop高可用集群,即有两个namenode,一个active,一个stanby,active的name挂掉之后,sta ...
随机推荐
- Optional 常用方法总结
转载请注明出处: Optional 类是 JAVA 8 提供的判断程序是否为空提供的包装工具类:可以减少代码中的 是否为空的判断,以及减少 NullPointerExceptions:使得程序变得更为 ...
- VideoPipe可视化视频结构化框架开源了!
完成多路视频并行接入.解码.多级推理.结构化数据分析.上报.编码推流等过程,插件式/pipe式编程风格,功能上类似英伟达的deepstream和华为的mxvision,但底层核心不依赖复杂难懂的gst ...
- MyBatis之ResultMap的association和collection标签详解
一.前言 MyBatis 创建时的一个思想是:数据库不可能永远是你所想或所需的那个样子. 我们希望每个数据库都具备良好的第三范式或 BCNF 范式,可惜它们并不都是那样. 如果能有一种数据库映射模式, ...
- 追求性能极致:Redis6.0的多线程模型
Redis系列1:深刻理解高性能Redis的本质 Redis系列2:数据持久化提高可用性 Redis系列3:高可用之主从架构 Redis系列4:高可用之Sentinel(哨兵模式) Redis系列5: ...
- vue实现功能 单选 取消单选 全选 取消全选
vue实现功能 单选 取消单选 全选 取消全选 代码部分 <template> <div class=""> <h1>全选框</h1> ...
- 齐博x1 万能fun 调用任意数据表 任意字段就是这么任性调用
列举了几个常用的查询进行简单封装,虽然系统也有内置的但是很多人不大会就二次封装简化了一下. 这里只封装了一个条件 多个条件的自己再封装或者用标签解决比较好 这里只是说fun可以万能调用 1获取任意表的 ...
- 知识图谱-生物信息学-医学顶刊论文(Bioinformatics-2021)-MSTE: 基于多向语义关系的有效KGE用于多药副作用预测
MSTE: 基于多向语义关系的有效KGE用于多药副作用预测 论文标题: Effective knowledge graph embeddings based on multidirectional s ...
- JAVA系列之JVM内存调优
一.前提 JVM性能调优牵扯到各方面的取舍与平衡,往往是牵一发而动全身,需要全盘考虑各方面的影响.在优化时候,切勿凭感觉或经验主义进行调整,而是需要通过系统运行的客观数据指标,不断找到最优解.同时,在 ...
- 九、kubernetes命令行工具kubectl
为了方便在命令行下对集群.节点.pod进行管理,kubernetes官方提供了一个管理命令:kubectl kubectl作为客户端CLI工具,可以让用户通过命令行对Kubernetes集群进行操作. ...
- Python基础之模块:4、正则表达式和re模块
目录 一.正则表达式 1.正则表达式前戏 2.字符组 3.特殊符号 4.量词 5.贪婪匹配与非贪婪匹配 6.转义符 7.正则表达式实战 二.re模块 1.模块导入 2.常见操作方法 1.findall ...