我通过连接多个源表来创建一个配置单元表。由于数据量巨大,此连接需要大约3小时的时间。此配置单元表设计为截断和加载。下游进一步消耗此表。
我们计划每天刷新这个配置单元表4次,因为源表中的数据会不断更新。由于表加载是截短和加载的,每次大约有3小时没有数据在这个表中,因为连接查询需要花费大量的时间。由于这些数据将不适用于下游。
有人能建议我们如何继续截断和加载表,并且在表中的新数据加载期间,下游的旧数据仍然可用吗?
我通过连接多个源表来创建一个配置单元表。由于数据量巨大,此连接需要大约3小时的时间。此配置单元表设计为截断和加载。下游进一步消耗此表。
我们计划每天刷新这个配置单元表4次,因为源表中的数据会不断更新。由于表加载是截短和加载的,每次大约有3小时没有数据在这个表中,因为连接查询需要花费大量的时间。由于这些数据将不适用于下游。
有人能建议我们如何继续截断和加载表,并且在表中的新数据加载期间,下游的旧数据仍然可用吗?
1条答案
按热度按时间ifmq2ha21#
确保下游系统在~3hr停机时间内获得数据的一个选项是为下游系统创建同一表的读取副本。例如,创建
tableB
这是一个select * from tableA_with_joins
. 这将确保下游从tableb接收数据,即使tablea上发生了截断负载。这种方法的缺点之一是,在将数据从表A同步到表B时需要额外的时间。但它将确保您的下游即使在停机期间也能接收到数据。