数仓面试常见问题:1.数仓基础与设计

大数据面试题--数仓 目录 数据仓库理论 数据分层 E T L 星形模型与雪花模型的区别? 维度建模(dimensional modeling): 数据仓库项目最重要或需要注意的是什么,以及如何处理? 关系建模与维度建模 拉链表: 维度表和事实表 数据仓库中的维度和粒度 维度建模步骤: 如何构建数据仓库? Flink面试题 Flink的重启策略: Flink集群规模 Flink 集群有哪些角色?各自有什么作用? TODO说说 Flink 资源管理中 Task Slot 的概念 说说 Fli 阅读详情

## 标题简述数仓的分层架构及其作用
数据仓库的分层架构主要是为了提高数据管理的可维护性、稳定性和可扩展性,同时确保数据的清晰流动和高效查询。常见的数据仓库分层架构通常包括以下几层:

  1. 数据源层(ODS,Operational Data Store)

作用:
存储原始数据,通常是从业务系统直接抽取的数据,不做或仅做少量清洗。 作为数据仓库的入口,主要用于短期存储,支持历史回溯。
特点:
数据格式多样(如 MySQL、PostgreSQL、Kafka、日志数据等)。
可能包含数据冗余,避免影响业务系统。

  1. 数据基础层(DWD,Data Warehouse Detail)

作用:
对原始数据进行清洗、标准化和结构化处理,构建标准的明细数据表。 保持数据的最大颗粒度,避免数据丢失,为后续数据分析提供支持。
特点:
采用标准化的数据模型(宽表、星型、雪花模型)。 一般按照时间、用户、业务等维度存储。 作为数仓的核心基础层,保证数据一致性和高可用性。

  1. 数据汇总层(DWM,Data Warehouse Middle)

作用:
对 DWD 层数据进行聚合,计算业务指标,减少计算开销,提高查询效率。 适用于大部分业务分析和报表需求。
特点:
通常按照业务需求进行数据建模,如用户行为分析、营销数据统计等。 可能按天、周、月等周期存储数据,减少重复计算。

  1. 数据应用层(ADS,Application Data Store)

作用:
提供面向特定业务场景的汇总数据,支持 BI 报表、数据分析、数据 API 供下游使用。 以高效查询和快速响应为目标,优化数据存储结构。
特点:
面向业务应用,数据结构优化为宽表,方便查询。 可能存储在 OLAP 数据库(如 ClickHouse、Druid)或 KV 存储(如 Redis)中,提升查询效率。

数仓分层的作用

  • 解耦业务系统与分析系统:避免对业务数据库的直接查询影响生产环境。
  • 提高数据质量:通过层层清洗和标准化,确保数据准确性、一致性、完整性。
  • 提升查询效率:数据逐层加工和聚合,减少重复计算,提高查询响应速度。
  • 便于管理和扩展:分层架构使得数据结构清晰,方便后续维护和优化。

这种分层架构能够很好地支持企业的数据分析、数据治理和业务决策需求,是现代数据仓库建设的重要基础。

数仓建模中,事实表和维度表有何区别?

在数据仓库建模中,事实表(Fact Table) 和 维度表(Dimension Table) 是核心组件,它们的主要区别如下:

1. 定义

  • 事实表:存储业务事件(事务)的度量值(数值型数据),通常包含可以被聚合(如求和、平均、计数等)的指标。
  • 维度表:存储业务事件的描述信息(文本或分类数据),提供业务分析的维度(如时间、地点、产品等)。

2. 数据特点

类别 事实表(Fact Table) 维度表(Dimension Table)
数据类型 数值型(度量数据) 字符型(描述数据)
数据粒度 细粒度,记录业务发生的事实 粗粒度,描述业务的属性
数据量 通常较大,数据不断增长 通常较小,数据相对稳定
主键 由多个外键组成的复合主键 业务主键(如用户ID、产品ID)

3. 作用
事实表:

大数据数仓工程师面试题精选-真实场景题 大数据数仓工程师面试题精选-真实场景题,整理从项目、技术栈、数仓建模、数据质量、数据治理、优化等多维角度企业真题,帮助各位同学成功上岸! 阅读详情

相关推荐

数据仓库面试题

数仓基础常见面试题

qq_41246557的博客 2648

数仓面试常见问题:4.ETL流程与调度

ETL 是数据仓库的入口,负责将来自不同来源的数据提取、清洗和整合,解决数据分散和格式不统一的问题,形成统一的分析数据源。

Piepis的博客 1042

day05_StarRocks统一数仓_业务开发

内容:姓名 、老家、大学,我上一家公司主要是做xxxxxx宏观​ 【主动】这样,我简单给您介绍一下我最近做的一个项目​ 【大多数面试官】嗯​ 【极少数面试官】这样,我来问几个问题​ 3-1:我们这个项目解决了什么问题?解决了之前业务上什么痛点(我们为什么要做这个项目,项目核心价值是什么)业务​ 3-2:我们这个项目的数据源是什么 ,数据源来源于哪里?​ 3-3:我们这个数据源是如何存储 (HDFS、StarRocks)

AGI爱好者_数仓&可视化&数据分析工程师_Vae’伯乐‘ 1099

最新数仓面试题_知行教育数仓项目

能否简介一下当前这个项目

Maynor的博客 3822

数仓面试基础知识

将数据仓库分为不同的层级,可以根据用户的需求和权限将不同层级的数据暴露给用户,实现对数据的灵活访问和控制,同时确保敏感数据的安全性。数据仓库中的数据通常具有不同的生命周期,分层可以帮助对数据进行更好地管理和归档,确保数据的可用性和长期保存。数仓模型是用于构建数据仓库的一种模型,它是一种综合各种数据源,建立集成的、主题导向的、高度可扩展且用于分析和报告的数据架构。综上所述,数仓分层有助于提高数据管理和使用效率,权限控制,提升数据仓库的性能和扩展性,支持数据的生命周期管理。

JanLEE 704

面试提问:数仓建模与数据分析之间到底是什么关系?

决定数据如何组织(星型、雪花型、宽表、范式化等)。

石榴姐yyds 1335

从0-1建设数仓遇到什么问题?怎么解决的?

这个应该算是比较高频的高级的面试题了,第一次听到这个面试题是几个月以前,朋友面试华为阿里滴滴啥的都有问到,近期老徐面微店蚂蚁美团都问到了,所以还是应该引起重视 在交流群发起这个话题的时候,有响应但是没啥答案,可能是因为大家都不是从0-1搭建数仓的,或者不是数仓方向的,所以大家都在等待有经验的人来讨论一下这个问题,等啊等,硬是没等到。 非常遗憾,我也没从0-1搭建过数仓,但是刚好遇到公司模型优化迁移以及数仓内部建设,所以就勉为其难来说说我的看法...

我的祖传代码 3068

Lmcache+vllm——KVcache卸载CPU/SSD探索

目前查看了vllm、Nvidia dynamo、mooncake都没有找到将kvcache卸载到SSD的方法,幸好lmcache支持。以下进行lmcache+vllm实践,对比将kvcache分别卸载到CPU-ram和SSD上的TTFT性能差异。目前的query只是单并发,对比的效果已经比较明显了,可能多并发下对存储的要求就会更高了。

weixin_43579058的博客 2655

从string一词感受从字母象形到语义生成的底层逻辑

从词源上看,个人认为,soft一词的含义主要来自于“柔软水滑或柔软光滑”这样的含义,是从这样的含义中逐渐窄化,最终主要用来指“柔软”之意,而光滑、水滑这样的含义或语义形象最终被淡化,所以,soft如果符合首字母象形原则,那么它主要的来源形象,应当是【水】,也就是说,soft一词和smooth(a.光滑的)、ski(滑雪)/skate(滑冰)、slip(滑倒)/slippers(拖鞋)、slide(滑动)是相通的,并最终和sea(海)、sweat(汗/汗水)这一类和水一直相关的单词也相通。

nshkfhwr的博客 1269

ZYNQ 系统的IEEE1588 实现方法

zynq IEEE588/PTP 实现方案(讨论稿)

姚家湾博客 1万+

网络攻防实验——网络监听

利用CAIN实现ARP监听。

Trieyes_of_feng的博客 3197

《PCI Express体系结构导读1》-- PCI简介

请先阅读完一遍此书再来看文章哦,这样效率更高~

HoneyIC的博客 152

Exchange Server 2013 运维系列——邮箱配额设置(管理中心)

邮箱配额需要设置三个参数: 1、发出警告限制:表示在向用户发出警告之前的最大存储限制。如果邮箱大小达到或超过指定值,Exchange 将向邮箱用户发送警告消息。 2、禁止发送限制:表示邮箱的“禁止发送”限制。如果邮箱大小达到或超过指定的限制,Exchange 将阻止邮箱用户发送新邮件,并显示一条描述性错误消息。 3、禁止发送和接收限制:表示此邮箱的“禁止发送和接收”限制。如果邮箱大小

白昼的技术专栏 1万+

★教程2:fpga学习教程入门100例目录【含程序操作讲解视频】

★基础入门 1.FPGA开发软件安装

FPGA/MATLAB学习教程/源码/项目合作开发 7万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

上一篇: 软件架构-4R架构定义
下一篇: 数仓面试常见问题:2.SQL与性能优化
piepis
博客等级 码龄10年 104粉丝 137原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

piepis

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值