Dwh 简明教程

Data Warehousing - Data Marting

Why Do We Need a Data Mart?

以下是创建数据市集的原因列表:

  1. 分区数据以实施 access control strategies.

  2. 通过减少要扫描的数据量来加速查询。

  3. 将数据细分为不同的硬件平台。

  4. 以适合用户访问工具的形式构建数据。

Note − 不要出于任何其他原因建立数据市集,因为数据市集的运营成本可能非常高。在建立数据市集之前,请确保数据市集策略适合你的特定解决方案。

Cost-effective Data Marting

按照以下步骤使数据市集具有成本效益:

  1. Identify the Functional Splits

  2. 识别用户访问工具需求

  3. Identify Access Control Issues

Identify the Functional Splits

在此步骤中,我们确定组织是否有自然的职能划分。我们寻找部门之间的划分,并确定各部门使用信息的方式是否与组织的其余部分隔离。我们举个例子。

考虑一个零售组织,其中每个商家负责最大化销售一组产品。为此,以下是有价值的信息 -

  1. 每日销售交易

  2. 每周销售预测

  3. 每日库存位置

  4. 每日股票变动

由于商家对他们不经手的产品不感兴趣,所以数据市集是处理的产品组感兴趣的数据的一个子集。下图显示了面向不同用户的数仓。

data marting

以下是在确定功能划分时需要考虑的问题 -

  1. 部门结构可能发生变化。

  2. 产品可能从一个部门切换到另一个部门。

  3. 商家可以查询其他产品的销售趋势,以分析销售情况。

Note - 我们需要确定使用数据市集的业务优势和技术可行性。

Identify User Access Tool Requirements

我们需要数据市集来支持 user access tools ,它们需要内部数据结构。此类结构中的数据不受数据仓库控制,但需要定期填充和更新。

有些工具直接从源系统填充,但有些工具不能。因此,需要识别超出工具范围的额外需求,以备将来使用。

Note - 为了确保所有访问工具中数据的一致性,不应直接从数据仓库填充数据,而是每个工具都必须有自己的数据市集。

Identify Access Control Issues

应该制定隐私规则,以确保只有经过授权的用户才能访问数据。例如,零售银行机构的数据仓库可确保所有帐户都属于同一法人实体。隐私法可能会迫使你完全禁止访问不属于特定银行的信息。

数据市集允许我们在数据仓库内物理分离数据段,从而构建一个完整的墙。为了避免可能的隐私问题,可以从数据仓库中删除详细数据。我们可以为每个法人实体创建数据市集,并通过数据仓库加载,同时提供详细的帐户数据。

Designing Data Marts

数据市集应设计为数据仓库中星型雪花模式的较小版本,并且应与数据仓库的数据库设计相匹配。它有助于控制数据库实例。

designing datamart

摘要以与在数据仓库内设计相同的方式进行数据市集。汇总表有助于利用星型雪花模式中的所有维度数据。

Cost of Data Marting

数据市集的成本度量如下 -

  1. Hardware and Software Cost

  2. Network Access

  3. Time Window Constraints

Hardware and Software Cost

虽然数据集市创建在相同硬件上,但需要一些额外的硬件和软件。为了处理用户查询,它需要额外的处理能力和磁盘存储。如果在数据仓库中存在详细信息和数据集市,那么我们将面临额外的存储和管理复制数据的花费。

Note − 数据集市比聚合花费更高,因此它应当用作一种附加策略,而不是备选策略。

Network Access

数据集市可能位于数据仓库的不同位置,因此我们应当确保局域网或广域网有能力处理在 data mart load process. 内传输的数据量

Time Window Constraints

数据集市加载进程消耗可用时间窗口的程度取决于转换的复杂性和运送的数据量。确定有多少个数据集市取决于 −

  1. Network capacity.

  2. Time window available

  3. 传输的数据量

  4. 用于将数据插入数据集市的机制