问题标签 [data-warehouse]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
10627 浏览

sql-server - 将 OLTP 关系数据库转换为数据仓库模型

将典型实体关系 OLTP 数据库模型中的数据加载到 Kimball 星型模式数据仓库/集市模型中时采用了哪些常见设计方法?

  • 您是否使用暂存区执行转换然后装入仓库?
  • 如何在仓库和 OLTP 数据库之间链接数据?
  • 您在哪里/如何管理转换过程 - 在数据库中作为 sprocs、dts/ssis 包或来自应用程序代码的 SQL?
0 投票
2 回答
882 浏览

data-warehouse - 我在哪里可以在网上找到可以尝试使用数据仓库立方体的真实数据集?

我正在研究数据仓库,我必须为我的学习做一个最终项目。

我正在考虑为数据仓库做一个多维数据集。我在哪里可以在网上找到可以尝试做立方体的真实数据集?

0 投票
1 回答
3056 浏览

ssas - Analysis Services 2008 中多个层次结构中的属性

我设计了一个使用星型模式的相对简单的数据仓库。我有一个只有一个主键以及 CompanyID 和 Amount (实际测量)列的事实表。当然我也有一个维度表来代表事实表引用的公司。

现在我需要为公司创建一个单层层次结构(CompanyGroup)。这似乎是一项简单的任务,但问题是应该允许单个公司存在于多个 CompanyGroups 中。

我通过创建一个名为 CompanyHierarchy 的新维度表来对此进行试验,该表包含一个主键、GroupKey 和 CompanyKey。定义用户定义的层次结构,其中 GroupKey 是顶级,CompanyKey 是第二级会在处理维度时产生 CompanyKey属性的重复属性键已被发现错误。

所以,我不太确定如何从这个开始。如何在属性可以多次存在的维度中创建用户定义的层次结构?

我当前的多维数据集定义的屏幕截图可以在以下位置看到:

img132.imageshack.us/img132/6729/ssasm2m.gif

0 投票
6 回答
5660 浏览

data-warehouse - 数据仓库 - 如何链接维度

刚刚进入数据仓库,需要您的帮助来澄清一个困惑。假设我有员工维度和部门维度。如果我有一份报告要求我列出来自 dimEmployee 的字段(姓名、薪水、职位)和来自部门的字段(DeptNo、Desc、经理),我该怎么做。我是否创建一个事实表(无事实),它将成为这两个维度之间的连接表?还是我需要以不同的方式设计这两个表。每个人都在谈论事实和维度,但是我们甚至考虑过链接维度表吗?

感谢您的见解。

RK

0 投票
4 回答
8086 浏览

sql - 处理数据仓库中的空值

我想询问您关于在涉及数据仓库和 SSIS/SSAS 时处理 null 或空数据值的最佳做法的意见。

我有几个事实和维度表,它们在不同的行中包含空值。

规格:

1)处理空日期/时间值的最佳方法是什么?我应该在我的时间或日期维度中创建一个“默认”行,并在找到空值时将 SSIS 指向默认行吗?

2)处理维度数据中的空值/空值的最佳方法是什么。例如:我在“帐户”维度中有一些行在“帐户名称”列中有空(非 NULL)值。我应该将列内的这些空值或空值转换为特定的默认值吗?

3)与上面的第 1 点类似 - 如果我最终得到一个在某一维度列中没有记录的 Facttable 行,我该怎么办?如果发生这种情况,我是否需要每个维度的默认维度记录?

4)关于如何在 Sql server 集成服务 (SSIS) 中处理这些操作的任何建议或提示?要使用的最佳数据流配置或最佳转换对象会很有帮助。

谢谢 :-)

0 投票
1 回答
5919 浏览

ssis - 在 SSIS 中调用标量值函数

有没有办法从 SSIS 的派生列转换中执行标量值函数?

-设想-

我的源数据库中有一个函数可以根据记录的 UOM 列中的 UOM 值转换权重。我想在 ETL 过程中利用这个功能来确保我的体重测量值始终是磅。我可以从派生列中调用此函数吗?如果没有,我是否可以在数据流中使用另一个转换任务(试图避免暂存列)?

dbo.Tasks 表

dbo.MeasurementUnits 表

dbo.GetConvertedWeight 函数

示例函数调用

0 投票
1 回答
2313 浏览

c# - 在 C# 中以编程方式在 SSIS 中添加和连接数据流组件

SSIS 中的数据流组件是否有高质量的示例代码?

我特别需要以下内容:

  1. OLE DB 源
  2. 导出列转换
  3. 平面文件目标。

假设表模式由两列组成,即 varchar(2) 的 ID 和 varchar(20) 的描述。输出是 1 个字符的平面文件 ID(只获取 ID 的第一个字符)和 10 个字符的描述(只获取描述的前 10 个字符)。如果它是在 C# 中,那就太好了。

让我们假设我非常了解如何添加和连接控制流任务和连接管理器。

提前感谢您的专业知识。

编辑:

我们只有 SQL Server 2005,所以这个版本中的例子会很有帮助。但是如果能在 2008 年使用 ezAPI 真的很好。

0 投票
2 回答
535 浏览

data-warehouse - 数据仓库报告问题

我刚刚开始涉足数据仓库,我有一个问题我似乎无法弄清楚。

我有一家公司,有十家商店,每家都有一定的员工。在我的数据仓库中,我有一个代表商店的维度。员工维度是一个 SCD,具有开始/结束列,以及员工所在的商店。

我的事实表是基于员工(匿名)给商店经理的建议。此表包含建议类型(清洁度、工资问题等)、提交日期(时间维度表的外键)以及提交的商店。

我想做的是创建一个报告,显示给定年份的建议数量与员工数量的比率。因为员工人数会定期变化,所以我无法简单查询员工总数。

不幸的是,我在网上搜索了很多试图找到解决方案,但大多数示例都是基于零售的销售,这与我正在尝试做的不同。

任何帮助,将不胜感激。我确实在我的机器上安装了 AdventureWorksDW,因此如果有人提出使用它的建议,我可以将其用作参考点。

提前致谢!

0 投票
6 回答
4016 浏览

sql-server - 在数据仓库场景中使用 WITH(NOLOCK) 有什么缺点吗

我有一个 Kimball 风格的 DW(星型模型中的事实和维度 - 没有迟到的事实行或列,除了作为类型 2 缓慢变化维度的一部分过期外,没有列的维度发生变化),每天处理繁重的插入和更新行(新日期)以及每月和每日报告流程。事实表按日期分区,以便于旧数据的滚降。

我理解这WITH(NOLOCK)可能会导致读取未提交的数据,但是,我也不希望创建任何会导致 ETL 进程失败或阻塞的锁。

在所有情况下,当我们从 DW 中读取数据时,我们正在从事实表中读取一个不会更改的日期(事实表按日期分区)和维度表,这些数据表的属性不会因为它们链接到的事实而发生变化.

那么 - 有什么缺点吗?- 可能在执行计划或此类操作中SELECT- 仅在同一张表上并行运行的查询。

0 投票
3 回答
375 浏览

database - 主键和约束

在我(当然)从 OLTP 数据库构建的全新数据仓库中,我删除了所有 IDENTITY 列并将它们更改为 INT 列。

关于以下方面的最佳实践是什么,特别是因为仓库是非规范化的:

  1. 主键
    -> 这现在可能是一个复合键,因为几个表已经放在一起
    -> 我需要遵循 OLTP 的键结构吗?

  2. 约束
    -> 有一些约束(非空),位列的默认值(0)