问题标签 [scd]

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 投票
1 回答
186 浏览

oracle - 缓慢变化的维度连接性能

一般概述:我有一个包含大约 8000 万条记录的 Oracle 表“产品”,我想提高使用该表的连接的性能。在大多数情况下,我们对(表)“产品”中具有(列)“valid_until”日期(值)“mm/dd/9999”的记录的一小部分感兴趣。

可能的解决方案:

  • 分区'mm/dd/9999'并使用分区交换来快速加载新数据。
  • 在“valid_until”日期使用索引。

你们还有其他可能的 Oracle 解决方案或想法吗?

0 投票
2 回答
6231 浏览

jaxb - JAXB 生成的特定类型的类实现了自定义接口

我正在开发一个使用 XJC 从 XSD 生成 Java POJO 的应用程序。有几十种模式,而且这个数字还会增长。应用程序还需要能够处理同一模式的不同版本,这意味着我将有多个定义通用类型的模式。我正在尝试自定义绑定,以便某些核心类型实现通用接口。JAXB2 Basics 的继承插件似乎可以满足我的需要,但我似乎无法确定正确的语法。

这是我的架构的相关部分:

...这就是我的自定义绑定文件的样子:

我使用的是scd方法,因为在所有展示如何使用继承插件的“传统”绑定示例中,都指定了schemaLocation。我想避免因为我们的大量(并且不断增长的)模式而必须指定schemaLocation 。我不想每次添加新模式时都必须更改绑定文件。所以,scd似乎可以满足这个要求。

但是,当我使用上述绑定运行构建时,我得到了这个:

如果我注释掉继承:实现行并取消注释xjc:superInterface行,错误就会消失并且构建成功完成,但是我的AddressType类没有实现 ValidatableAddress 类型。

继承插件可以与scd一起使用吗?xjc:superInterface 可以仅限于某些元素吗?

干杯。

0 投票
0 回答
290 浏览

postgresql - Talend tPostgreSQLSCD 缺失数据

我正在使用 Talend 组件 tPostgreSQLSCD 来更新或插入数据库表。组件似乎没有任何问题,只是发生了一个奇怪的错误。

基本上,该作业通过批处理文件运行,因此我看不到控制台输出,但经过大量测试后,我可以看到所有行都从我的 tMap 传递到我的 SCD 组件。只是所有的行都没有插入到实际的表中。在平均 8000 行中,每天早上不会插入 500 行。但是,当该作业在早上单独运行时,不会出现问题,并且将行输入到数据库中。

其他人是否发生过此问题,或者是否有人对此可能的解决方案有任何见解。

任何建议都非常感谢。如果需要更多信息,请询问。

谢谢

SCD 组件

0 投票
1 回答
994 浏览

sql-server - SSIS 渐变维度历史属性

这是一个简单的 SCD,具有可用的类型 2(历史性)更改。

在图像中,当一行被更新时,存在两个不同的行,一个沿着“新输出”路径行进,一个沿着“历史属性插入输出”行进。

沿着“历史属性插入输出”的路径,“派生列”添加一列(或替换列信息),以便可以将 RowisCurrent(例如)更改为 False。

在“新输出”路径下,该行在“派生列 1”处选取“真”的 RowisCurrent 状态。

我不明白“联合所有”的目的是什么。为什么“OLE DB 命令”和 Union All 之间有联系?

如果过期的行在“OLE DB 命令”处更新,则正在传递的内容,并且不会在将“派生列 1”处的 RowisCurrent 设置为“True”之前将其写入数据库“插入目的地”?

在此处输入图像描述

0 投票
0 回答
267 浏览

ssis - SSIS 模糊查找(查找有效值范围)

我想知道是否有人有一个很好的解决方案来尝试在模糊查找转换中针对一系列值查找值。

“值范围”是指日期范围(例如查找表中的开始和结束日期)或比较范围(例如与记录中的确切门牌号相比的门牌号的高值和低值)。

或者,如果有解决方案如何通过条件解决仅针对有效值的模糊查找。

我正在使用 ssis 2008

例子:

我的销售数据示例:

我的价目表

我的销售数据有点脏(来源多种多样)——这就是我想使用 FUZZY 查找的原因。

我想对我的价目表进行模糊查找,但仅针对有效价格。

所以查找结果后应该是这样的

但如果我使用模糊,我无法在使用模糊查找之前指定条件。

在此先感谢,马丁

0 投票
1 回答
86 浏览

ssas - 管理具有渐变维度的 PerformancePoint 筛选器

只是一点背景信息:

我有一个维度表,它使用 SCD2 来跟踪我们公司中的用户变化(团队变化、职位变化等)见下面的例子:

一些用户维度列

我已经构建了一个 Analysis Services Cube 并为维度创建了所有必要的层次结构,并且在导航和向下钻取事实表时效果很好。

SSAS 层次结构

我遇到的问题是 PerformancePoint 仪表板上的过滤器。当我使用用户维度表时,它有多个用户实例,它在列表中显示重复项。我可以理解为什么在 Dimension 上引用了代理 ID。但是,如果我选择 A 团队的第一个实例,我将看到他们在特定时期的所有销售额,如果我选择第二个实例,我将看到他们在不同时期的所有销售额。

1 个重复团队名称的示例

处理此类行为的最佳方法是什么?理想情况下,我希望看到按字母顺序排列的不同团队列表,当我选择团队名称时,它会随着时间的推移显示他们的所有数据。

我考虑过使用 MDX 查询过滤器,但我想看看是否有什么我没有想到的。

我意识到这不是一个简单而快速的问题,但任何帮助将不胜感激!

0 投票
0 回答
479 浏览

informatica - 使用动态缓存 Informatica 的 SCD 类型 2

我正在尝试在 informatica 中实现 SCD type2,但我发现很难实现这一点,原因是源中的多个记录具有相同的键。如果有多个记录,我必须使用动态缓存,当我这样做时,它在查找时无法识别正确的记录,因为在执行动态查找时我没有计算代理键。所以,这就是发生的事情:

我的源有 3 条相同键的记录,而目标中没有任何内容。使用键执行动态查找,第一条记录被标识为插入,并将活动标志设置为“Y”。然后查找第二条记录并将其标识为更新,并将活动标志设置为“Y”,将第一条记录设置为“N”。当第 3 条记录进来时,lookup 无法识别设置为“Y”的最新记录,而是再次获取第 1 条记录并将其设置为“N”,同时将第 3 条记录设置为“Y”。结果,我现在有 2 条活动记录,用于同一个键,但不符合 type-2 要求。

请帮助我如何实现这一目标。

0 投票
0 回答
139 浏览

ssis - SCD 还是迟到的事实?

我有一个星型模式,显示公司中的员工角色。最简单的是:

昏暗日期

昏暗的人

DimPaygroup

暗角

事实表如下所示:PersonID、RoleID、PaygroupID、StartDate、EndDate

如果它是当前角色,则 Enddate 设置为 31-Dec-2199
问题是我需要跟踪 Paygroup,因为这可以在不改变个人角色的情况下改变。

我最初的计划是通过在名为 PayGroupEndDate 的事实表中添加一个额外的列来将其视为迟到的事实。当支付组更改并添加新行时,这将得到更新。我不确定这是最好的解决方案。

是否可以通过使其成为一个缓慢变化的维度来更好地处理这个问题?

StartDate & EndDate 专门用于角色,即一个人开始和离开角色的数据。这就是事实表的本质。

一个人可以担任相同的角色并在工资组之间移动,这也需要进行跟踪,但我试图将其作为 SCD。

更新:我正在考虑为 PAYGROUP 创建一个新维度,而不是将其作为人员维度的属性。这样,当它发生变化时,将输入一条新记录。这是解决问题的简单方法吗?

0 投票
1 回答
327 浏览

database-design - Netezza/DataStage SCD 类型 2 问题

我在 Netezza/DataStage 中看到了 SCD 的一个问题,其中缓慢变化的维度在 UAT 中被遗漏,但在生产中被捕获。我看到的问题是;完全相同的行流入生产,其中一个字段的更改被捕获,旧记录已过期并添加新的“活动”记录,但在 UAT 中,同一字段的更改未被捕获。有人可以建议一些调查途径,即生产中的某些设置是否在 UAT 中未设置?有什么办法可以在最低级别(即数据库日志等)查看生产中的 SCD 发生了什么?我们真的不想重新构建 SCD,但如果有人可以提供一种方法,让我们对 SCD 所做的事情有一个低得多的了解,那就太好了。

编辑:错过 SCD 更新的这个问题似乎每次都发生在同一日期列上。日期是否需要任何特殊的 SCD 处理?

0 投票
3 回答
812 浏览

sql-server - 缓慢变化的维度 - 一天内运行多次时有效/到期日期损坏

我正在使用 Kimball 方法来缓慢改变我们数据仓库中的维度。我们遇到了在一天内多次更新记录并且 ETL 每 15 分钟运行一次的问题。因此,生效日期和到期日期变得一团糟。

例如:

看看最后一行的 EffectiveDate 是如何大于到期日期的 - 这不好:(

有没有其他人遇到过这种类型的问题 - 你是如何处理的?

我在 SSIS 中使用渐变维度工具