大数据面试题_数据仓库篇

文章目录

  • 大数据面试题_数据仓库篇
    • 离线数据仓库
      • 1、为什么要对数据仓库分层?
      • 2、数据建模用的哪些模型?
      • 3、你感觉数仓建设中最重要的是什么

大数据面试题_数据仓库篇

离线数据仓库

1、为什么要对数据仓库分层?

  1. 用空间换时间,通过大量的预处理来提升应用系统的用户体验(效率),因 此数据仓库会存在大量冗余的数据。
  2. 如果不分层的话,如果源业务系统的业务规则发生变化将会影响整个数据清 洗过程,工作量巨大。
  3. 通过数据分层管理可以简化数据清洗的过程,因为把原来一步的工作分到了 多个步骤去完成,相当于把一个复杂的工作拆成了多个简单的工作,把一个大的 黑盒变成了一个白盒,每一层的处理逻辑都相对简单和容易理解,这样我们比较 容易保证每一个步骤的正确性,当数据发生错误的时候,往往我们只需要局部调 整某个步骤即可。

2、数据建模用的哪些模型?

星型模型
星形模式(Star Schema)是最常用的维度建模方式。星型模式是以事实表为中心, 所有的维度表直接连接在事实表上,像星星一样。 星形模式的维度建模由一个事实表和一组维表成,且具有以下特点:
a. 维表只和事实表关联,维表之间没有关联;
b. 每个维表主键为单列,且该主键放置在事实表中,作为两边连接的外键;
c. 以事实表为核心,维表围绕核心呈星形分布;
雪花模型
雪花模式(Snowflake Schema)是对星形模式的扩展。雪花模式的维度表可以拥有 其他维度表的,虽然这种模型相比星型更规范一些,但是由于这种模型不太容易 理解,维护成本比较高,而且性能方面需要关联多层维表,性能也比星型模型要 低。所以一般不是很常用。
星座模型
星座模式是星型模式延伸而来,星型模式是基于一张事实表的,而星座模式是基 于多张事实表的,而且共享维度信息。前面介绍的两种维度建模方法都是多维表 对应单事实表,但在很多时候维度空间内的事实表不止一个,而一个维表也可能 被多个事实表用到。在业务发展后期,绝大部分维度建模都采用的是星座模式。

3、你感觉数仓建设中最重要的是什么

数仓建设中,最重要的是数据准确性,数据的真正价值在于数据驱动决策,通过数据指导运营,在一个不准确的数据驱动下,得到的一定是错误的数据分析,影响的是公司的业务发展决策,最终导致公司的策略调控失败。

你可能感兴趣的:(大数据面试,数据仓库,数据仓库,大数据,数据库)