如何解决dwh oracle中完整表与增量表与增量表之间的区别是什么
我试图理解完整表 vs 增量表 vs 增量表的概念,原则上为了简化(更快的加载过程)每天的 ETL 加载,使用增量表是一个好习惯
完整表格
增量表
增量表
我在某处读过一些
使用增量加载来移动数据可以缩短 ETL 流程的运行时间并降低出现问题时的风险
有人可以帮我理解这个概念吗?
解决方法
- full,顾名思义,加载一切,整个源数据文件
- incremental - 或 delta (它们是同义词,不是两种不同的类型) - 意味着您只加载尚未加载的数据。这通常意味着已记录上次加载的时间。下一个加载会话加载在上次成功加载时间戳之后创建的数据
截至
- “缩短运行时间”:显然,如果您不必加载所有内容而只加载缺少的内容,则需要更少的时间
- “降低风险”:您不会弄乱已经加载的数据,它会保留在数据库中。如果出现问题,当前加载会话就会出错,因此您可以放弃所做的更改并重新开始
好吧,您没有为您的报价提供参考,但根据我的经验,它只有 50% 正确。
我读过:
使用增量加载来移动数据可以缩短 ETL 流程的运行时间 但会增加 出现问题的风险。 >
问题在于错误累积。如果您在满载中得到损坏或不完整的数据,您可以在下一次加载时将它们清除掉,并且很有可能新的加载是有效的。
与增量加载相反,错误仍然存在并且可以在时间内累积。
因此好的做法在实施增量加载时执行定期检查(每天、每月等),确保源和目标中的完整快照相同.
我的经验法则是 - 仅当满载不可行(即对于事务表和大维度)时才选择增量加载 .
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。