商业智能阶段的加载方法

问题描述

晚安, 将原点传递到商业智能中的阶段库时的查询加载方法为总 或总计 + 增量,

我正在考虑删除所有数据并重新加载它,但如果它是一个非常大的数据库并且许多记录将不是最佳选择。良好做法有何建议?

我会感谢您的意见,

非常感谢,

解决方法

我正在考虑删除所有数据并重新加载它,但如果是 一个非常大的数据库和许多记录不会是最佳的。做什么 好的做法建议?

这取决于。

许多公司更喜欢Delete-Truncate 模式,因为它易于实施,而且只有在验证某些条件(硬件、DBA..)时,数据量才不是问题。 >

增量加载(或 Up-Sert 模式) 通常用于使两个系统之间的数据保持同步。它们用于将源数据重复加载到目的地的情况,例如每晚或全天。

增量数据加载的好处: 它们通常运行得更快,因为它们接触的数据更少。假设没有瓶颈,移动和转换数据的时间与接触的数据量成正比。如果您接触一半的数据,运行时间通常会以类似的比例减少。

增量数据加载的缺点: 可维护性:在满载情况下,如果出现错误,您可以重新运行整个负载,而无需在清理/准备方面做太多其他工作。对于增量加载,文件通常需要按顺序加载。因此,如果您对一批有问题,其他人会排在后面,直到您纠正为止。

TRUNCATINGINSERTING 是两个操作,而 UPDATEing 是一个操作,使得 TRUNCATE 和 INSERT 花费(理论上)更多的时间。

还有易于使用的因素。如果先 TRUNCATE 然后 INSERT,则必须手动跟踪每个列值。如果你更新,你只需要知道你想改变什么。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...