暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

教科书一般不教!关于数据仓库的30个冷知识,敢来测测吗?

陈乔数据观止 2025-09-01
45

数据仓库冷知识快问快答(30题)

  1. 问题: 数据仓库(Data Warehouse)这个术语最早是由哪位计算机科学家在20世纪80年代末提出的?

    • A) 比尔·盖茨 (Bill Gates)
    • B) 詹姆斯·高斯林 (James Gosling)
    • C) 比尔·恩门 (Bill Inmon)
    • D) 莱纳斯·托瓦兹 (Linus Torvalds)
    • 答案:C) 
    • 解析: 比尔·恩门被誉为“数据仓库之父”,他在1988年首次系统性地提出了数据仓库的概念,定义为“面向主题的、集成的、非易失的、随时间变化的数据集合,用于支持管理决策”。
  2. 问题: 在ETL(抽取、转换、加载)流程中,“T”(转换)步骤最不可能涉及以下哪项操作?

    • A) 将日期格式从 MM/DD/YYYY
       统一为 YYYY-MM-DD
    • B) 计算每个订单的总金额(单价 x 数量)
    • C) 将销售数据从源数据库复制到目标数据库
    • D) 将“男”、“女”标准化为“M”、“F”
    • 答案:C) 
    • 解析: 复制是“抽取”(E) 和“加载”(L) 的核心,而“转换”(T) 专注于数据的清洗、标准化、计算、聚合等处理。复制本身不属于转换。
  3. 问题: 星型模式(Star Schema)中的“事实表”(Fact Table)通常存储什么类型的数据?

    • A) 描述性属性,如产品名称、客户地址
    • B) 可度量的业务事件,如销售额、订单数量
    • C) 数据库的元数据信息
    • D) 用户访问日志的原始文本
    • 答案:B) 
    • 解析: 事实表是星型模式的核心,存储具体的、可量化的业务指标(度量值),并通过外键关联到维度表(存储描述性属性)。
  4. 问题: 如果一个数据仓库的维度表设计得非常庞大(例如,包含数百万行),哪种技术最有助于提升基于该维度的查询性能?

    • A) 对事实表进行分片(Sharding)
    • B) 在维度表的关键属性上创建索引
    • C) 增加ETL流程的执行频率
    • D) 将维度表转换为事实表
    • 答案:B) 
    • 解析: 索引是加速数据库查询(尤其是WHERE、JOIN、ORDER BY)的常用技术。在维度表的常用筛选或连接字段(如产品ID、客户ID)上创建索引能显著提升查询速度。
  5. 问题: “缓慢变化维度”(Slowly Changing Dimension, SCD)类型2(SCD Type 2)的主要特点是?

    • A) 直接覆盖旧值,不保留历史
    • B) 添加新行,保留历史版本,并用有效日期或版本号标记
    • C) 在同一行添加新列存储新值
    • D) 完全禁止维度属性的变更
    • 答案:B) 
    • 解析: SCD Type 2是处理维度属性变化的标准方法,通过插入新记录并标记有效时间范围来完整保留历史信息,确保历史分析的准确性。
  6. 问题: 在数据仓库中,“数据集市”(Data Mart)通常与“企业级数据仓库”(EDW)的关系是?

    • A) 数据集市是EDW的子集,面向特定部门或主题
    • B) EDW是数据集市的子集
    • C) 数据集市和EDW完全独立,互不关联
    • D) 数据集市只存储原始日志数据
    • 答案:A) 
    • 解析: 数据集市通常是基于EDW构建的,聚焦于特定业务领域(如销售、财务),为特定用户群体提供更便捷、更聚焦的数据视图。
  7. 问题: OLAP(联机分析处理)立方体(Cube)的主要优势是什么?

    • A) 提供极快的复杂多维分析查询响应
    • B) 确保事务处理的原子性和一致性
    • C) 降低数据存储成本
    • D) 简化ETL流程
    • 答案:A) 
    • 解析: OLAP立方体预先计算和存储了各种维度组合下的聚合结果(如按年、月、地区、产品类别的销售额),使得“切片、切块、钻取、旋转”等分析操作非常迅速。
  8. 问题: 假设一个事实表记录了每笔订单的销售金额。如果要分析“每个客户每年的总消费额”,这个查询主要依赖于哪种数据库操作?

    • A) SELECT ... WHERE ...
    • B) INSERT INTO ... VALUES ...
    • C) UPDATE ... SET ...
    • D) SELECT ... GROUP BY ... SUM(...)
    • 答案:D) 

    • 解析: 分析“总消费额”需要对销售金额进行求和(SUM
      ),并按客户和年份进行分组(GROUP BY
      ),这是典型的聚合查询。
  9. 问题: 数据仓库中的“元数据”(Metadata)指的是?

    • A) 原始的、未经处理的业务数据
    • B) 关于数据的数据,如表结构、字段含义、ETL流程、数据血缘
    • C) 数据仓库服务器的硬件配置
    • D) 用户的登录密码
    • 答案:B)
    • 解析: 元数据是数据仓库的“地图”和“说明书”,它描述了数据的来源、结构、含义、转换规则和依赖关系,对数据治理和理解至关重要。
  10. 问题: 在现代云数据仓库(如Snowflake, BigQuery)中,“计算”和“存储”通常是?

    • A) 紧密耦合,无法分离
    • B) 完全分离,可以独立扩展
    • C) 存储依赖于计算资源
    • D) 计算资源固定不变
    • 答案:B) 
    • 解析: 这是云数据仓库的核心架构优势。存储(存放数据)和计算(执行查询)解耦,允许用户根据需要独立地增加或减少计算资源,实现弹性伸缩和成本优化。
  11. 问题: “数据湖”(Data Lake)与“数据仓库”(Data Warehouse)最根本的区别之一在于?

    • A) 数据湖只存储图片和视频
    • B) 数据湖存储原始、未处理的数据(结构化、半结构化、非结构化),而数据仓库存储经过清洗和结构化的数据
    • C) 数据仓库不能存储历史数据
    • D) 数据湖不需要ETL流程
    • 答案:B) 
    • 解析: 数据湖旨在以原始格式存储海量数据,Schema-on-Read(读时建模),灵活性高;数据仓库则强调Schema-on-Write(写时建模),数据经过ETL处理,结构清晰,更适合稳定、高性能的分析。
  12. 问题: 在数据仓库项目中,“数据治理”(Data Governance)不包括以下哪项?

    • A) 定义数据所有权和责任
    • B) 制定数据质量标准和规则
    • C) 管理用户对数据的访问权限
    • D) 直接编写所有ETL代码
    • 答案:D)
    • 解析: 数据治理是关于策略、标准、流程和责任的框架,确保数据的可用性、可理解性、一致性、完整性和安全性。编写ETL代码是具体的技术实现工作,通常由数据工程师完成,受治理框架的指导。
  13. 问题: 一个事实表的主键通常是?

    • A) 一个自增的代理键(Surrogate Key)
    • B) 一个或多个维度表的外键组合
    • C) 一个业务系统中的自然键(Natural Key)
    • D) 一个随机生成的UUID
    • 答案:B) 
    • 解析: 事实表的主键通常由关联的维度表的外键(如日期键、产品键、客户键)组合而成,这唯一标识了一次具体的业务事件(如某天某客户购买某产品的订单)。代理键有时也用于事实表,但复合外键是更基础的设计。
  14. 问题: “数据血缘”(Data Lineage)图主要用来追踪?

    • A) 数据库服务器的网络延迟
    • B) 数据从源头到最终报表的流动路径和转换过程
    • C) 用户查询的执行时间
    • D) 数据存储的物理位置
    • 答案:B) 
    • 解析: 数据血缘可视化了数据的“旅程”,展示数据从源系统经过哪些ETL作业、在哪些表中被处理,最终如何出现在报表或仪表板中。这对于影响分析、故障排查和合规审计至关重要。
  15. 问题: 在维度建模中,一个“退化维度”(Degenerate Dimension)指的是?

    • A) 已经废弃不用的维度表
    • B) 没有对应维度表的、存在于事实表中的业务标识符(如订单号、发票号)
    • C) 一个非常小的维度表
    • D) 一个包含大量空值的维度
    • 答案:B) 
    • 解析: 退化维度是事实表中的一个特殊字段,它本身是一个业务键(如订单号),但没有相关的描述性属性需要单独建模成维度表。它主要用于事实表的粒度定义和特定查询(如查单笔订单详情)。
  16. 问题: 为什么数据仓库通常不直接在生产OLTP(联机事务处理)数据库上进行复杂的分析查询?

    • A) OLTP数据库没有分析功能
    • B) 复杂分析会消耗大量资源,影响OLTP系统的性能和响应速度
    • C) 分析查询只能在数据湖中执行
    • D) OLTP数据库不支持SQL
    • 答案:B) 
    • 解析: OLTP系统(如订单系统)设计目标是高并发、低延迟的事务处理(增删改查单条记录)。复杂的分析查询(涉及大量数据扫描和聚合)会占用CPU、内存和I/O资源,可能导致OLTP系统变慢甚至不可用。因此需要将分析负载分离到专用的数据仓库。
  17. 问题: “数据质量”维度不包括以下哪项?

    • A) 准确性(Accuracy)
    • B) 完整性(Completeness)
    • C) 一致性(Consistency)
    • D) 数据存储的加密强度
    • 答案:D)
    • 解析: 数据质量主要关注数据本身是否可靠、可用,核心维度包括准确性、完整性、一致性、时效性、唯一性等。数据加密属于数据安全范畴,虽然重要,但不直接衡量“质量”。
  18. 问题: 在Kimball的维度建模理论中,构建数据仓库的第一步通常是?

    • A) 选择数据库软件
    • B) 选择服务器硬件
    • C) 选择业务过程(如处理订单、发货)
    • D) 设计事实表的主键
    • 答案:C) 
    • 解析: Kimball方法强调“自下而上”,从具体的、可量化的业务过程入手。确定了要分析的业务过程(如“处理订单”),才能定义相关的事实(销售额)和维度(时间、产品、客户、商店)。
  19. 问题: 一个事实表中,度量值(Measures)不可能是以下哪种类型?

    • A) 可加的(Additive),如销售额
    • B) 半可加的(Semi-additive),如账户余额(可按时间加,但按账户不能简单加)
    • C) 不可加的(Non-additive),如利润率
    • D) 纯文本描述,如“客户满意度高”
    • 答案:D) 
    • 解析: 事实表的度量值必须是数值型的,以便进行聚合计算(求和、平均等)。纯文本描述属于维度属性,应放在维度表中。
  20. 问题: “拉链表”(Zipper Table)是哪种缓慢变化维度技术的俗称?

    • A) SCD Type 0 (不变化)
    • B) SCD Type 1 (覆盖)
    • C) SCD Type 2 (新增行)
    • D) SCD Type 3 (添加新列)
    • 答案:C) 
    • 解析: “拉链表”是SCD Type 2的一种形象化称呼。它通过为每个维度实体的历史状态创建新记录,并用开始日期和结束日期(或有效日期)“拉链”起来,形成一条完整的历史记录链。
  21. 问题: 在数据仓库中,“粒度”(Granularity)指的是?

    • A) 数据存储的物理块大小
    • B) 事实表中一行数据所代表的业务事件的详细程度(如每笔订单 vs. 每天每个商店的总销售额)
    • C) 数据库索引的密度
    • D) ETL作业的执行频率
    • 答案:B) 
    • 解析: 粒度是事实表设计的核心。它决定了分析的最细级别。粒度越细(如每笔订单),灵活性越高,可聚合性越强;粒度越粗(如每天每产品类别的汇总),存储和查询可能更快,但分析灵活性降低。
  22. 问题: 为什么数据仓库中的日期维度表通常不是直接使用数据库的DATE类型字段,而是要建一个独立的日期维度表?

    • A) DATE类型在数据库中不存在
    • B) 独立的日期维度表可以方便地添加丰富的业务属性(如财年、季度、节假日标志、周几等),便于复杂分析
    • C) 为了增加数据库的复杂性
    • D) DATE类型无法进行比较
    • 答案:B) 
    • 解析: 虽然事实表有日期键,但独立的日期维度表可以包含is_holiday
      fiscal_quarter
      day_of_week_name
      weekend_flag
      等大量对分析有用的属性,避免在查询中进行复杂的日期计算。
  23. 问题: “数据虚拟化”(Data Virtualization)技术允许用户?

    • A) 物理复制所有数据到一个中心仓库
    • B) 通过一个统一的逻辑视图访问分散在不同源系统的数据,无需物理移动
    • C) 删除所有历史数据以节省空间
    • D) 将非结构化数据自动转换为结构化数据
    • 答案:B) 
    • 解析: 数据虚拟化提供了一个抽象层,让用户像查询一个数据库一样查询多个异构数据源(数据库、数据湖、API等),查询时才实时获取数据,减少了数据复制和延迟,适合敏捷分析。
  24. 问题: 在数据仓库的“维度建模”中,雪花模式(Snowflake Schema)相对于星型模式(Star Schema)的主要缺点是?

    • A) 查询性能可能更慢,因为需要连接更多的表
    • B) 数据冗余更多
    • C) 无法表示层次关系
    • D) 不支持事实表
    • 答案:A) 
    • 解析: 雪花模式对维度表进行了规范化,减少了数据冗余,但导致维度表被拆分成多个层级(如产品 -> 产品类别 -> 产品大类),查询时需要连接更多表,可能影响性能。星型模式牺牲一些冗余换取更快的查询速度。
  25. 问题: 一个数据仓库项目中,最可能负责定义“客户”维度的业务含义和属性的人是?

    • A) 网络管理员
    • B) 业务分析师(Business Analyst)
    • C) 操作系统工程师
    • D) 数据库硬件供应商
    • 答案:B) 
    • 解析: 业务分析师是业务部门与技术团队的桥梁。他们理解业务需求,负责定义关键业务实体(如客户、产品)的业务规则、属性和指标,确保数据模型能准确反映业务现实。
  26. 问题: “数据编织”(Data Fabric)是一种?

    • A) 新型的数据库存储引擎
    • B) 一种利用主动元数据、知识图谱和自动化,实现无缝数据集成、发现和管理的架构方法
    • C) 专门用于处理图像数据的技术
    • D) 一种过时的ETL工具
    • 答案:B)
    • 解析: 数据编织是近年来兴起的架构理念,旨在通过智能化的元数据管理和自动化,简化复杂数据环境(多云、混合云、数据湖仓)下的数据访问、集成和治理,提供一致的数据体验。
  27. 问题: 在云数据仓库中,“按需计费”(Pay-as-you-go)模式的主要优势是?

    • A) 固定成本,无需预算
    • B) 用户只为实际使用的计算和存储资源付费,成本更灵活可控
    • C) 免费使用所有功能
    • D) 无需进行任何性能优化
    • 答案:B) 
    • 解析: 云服务的按需计费模式消除了前期大规模硬件投资,用户可以根据业务负载动态调整资源,高峰时扩容,低谷时缩容,有效控制成本。
  28. 问题: “数据可观测性”(Data Observability)主要关注?

    • A) 数据中心的物理安全摄像头
    • B) 监控数据管道的健康状况,包括数据质量、新鲜度、 lineage、数据量等,及时发现和预警问题
    • C) 用户界面的美观程度
    • D) 数据库服务器的温度
    • 答案:B) 
    • 解析: 借鉴IT可观测性概念,数据可观测性通过监控关键指标(如数据延迟、空值率、模式变更、数据量突变),帮助数据团队了解数据系统的内部状态,快速定位数据中断或质量问题。
  29. 问题: 一个事实表记录了每笔销售订单。如果业务需求是分析“每个产品类别的月销售额”,这个查询最可能使用哪种聚合函数?

    • A) COUNT(*)
    • B) AVG(sales_amount)
    • C) SUM(sales_amount)
    • D) MIN(order_date)
    • 答案:C) 

    • 解析: “销售额”通常指总收入,需要对每笔订单的sales_amount
      进行求和(SUM
      ),并按产品类别和月份分组。
  30. 问题: “数据仓库即服务”(DWaaS)的主要交付模式是?

    • A) 供应商邮寄硬盘
    • B) 通过云平台提供托管的、可扩展的数据仓库解决方案
    • C) 提供开源软件下载
    • D) 派遣工程师驻场安装
    • 答案:B)
    • 解析: DWaaS是云服务的一种,如Amazon Redshift, Google BigQuery, Snowflake, Azure Synapse Analytics。供应商负责底层基础设施的管理、维护和扩展,用户通过网络访问,按需使用,简化了运维。

据统计,99%的大咖都关注了这个公众号👇

猜你喜欢👇

  1. 性能直接炸了!玩转 Hive 分区与分桶,查询效率轻松翻数十倍!

  2. Hive优化十大法则:让慢查询从2小时降到5分钟的秘籍

  3. 数据仓库分层设计:ODS/DWD/DWS/ADS到底该怎么划边界?

  4. 传统数仓 vs 数据湖 vs 湖仓一体:一场没有赢家的战争?

  5. ADS层设计指南:面向业务的指标聚合艺术

  6. 宽表设计避坑指南:哪些字段该加?哪些不该加?

  7. DWS层实战:宽表建模的10个经典场景!

  8. 为什么你的DWD层总是混乱?维度建模三件套拯救你!

  9. 数据仓库中的“一致性维度”是什么?为什么它能统一指标口径?(文末送福利)

  10. 数据仓库监控体系搭建:任务告警/资源调度的自动化方案

  11. 数据仓库架构设计:如何避免常见的陷阱?

  12. OLTP vs OLAP:数据仓库中两种核心处理模式的对比分析

  13. 实时数仓 vs  离线数仓:2025年企业如何选择?

数仓面试👇

  1. 数据仓库经典面试题附参考答案(建议收藏)

  2. 数据仓库面试必看:这5个技术问题让无数候选人当场崩溃!

  3. 大厂数据仓库面试必刷18题:90%的offer收割机都靠它!(建议收藏)

    扫码加入VIP社群🪐 所有资料都可以直接下载







    后台回复资料获取更多福利



    文章转载自陈乔数据观止,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论