除了pentaho中的插入/更新步骤之外,是否有任何步骤或逻辑可以保持SCD类型1?

时间:2014-12-19 13:29:32

标签: pentaho kettle pdi

是否有任何步骤或逻辑可以保持SCD类型1与插入/更新步骤不同。至于为大数据维护它,需要花费大量时间。 这是一个简单的步骤,其中从我们获得的表中获取max(更新时间)并获取该更新日期之后的数据,并根据插入/更新中的业务键简单地插入目标表中。 详细说明会有所帮助

1 个答案:

答案 0 :(得分:4)

对于纯维度控制,您可以使用组合查找/更新或维度查找/更新(更新类型=更新或穿透,它表现为SCD类型I)。

然而,他们总是会遇到同样的问题:往返DB,往往会让你感到速度快。它们通过缓存有所缓解,但可能还不够,具体取决于可能需要多少更新。

另一种方法是使用组合表输出+更新步骤,使用以下技巧:

  1. 在数据库上为作为SCD键的字段创建唯一索引;
  2. 尝试使用表格输出步骤插入所有记录。数据库中已存在的那些行将被拒绝。
  3. 在表输出后添加一个更新步骤,但不是用黑色连接“步骤的主输出”连接它,而是通过错误处理红色跃点连接它。
  4. 数据库中不存在的行将由Table输出插入而不进行任何查找。那些失败的(因为它们已经存在)将被发送到更新步骤。