据我所知,Google Big Query遵循“最终一致性”架构,这意味着表创建,架构更改和数据导入是不同步的。
我正在构建一个系统,该系统将具有高更新率的几张表同步到BQ(按计划)。后者根本不适合进行更新,因此我遵循删除所有先前数据并重新导入所有内容的想法(此表的数据量很小,因此目前看来是可行的)。 我正面临重新创建表的问题:我正在删除现有表,创建新表(提供架构)并插入数据(通过insert_rows,通过流式插入AFAIK)。
而且我遇到了不一致的情况,大多数时候(并非总是如此)以空表结尾,但是以实际模式结尾。据我了解,如果流式插入仍然了解旧表,在其中插入数据,然后在删除/重新创建之后进行同步,则可能会发生这种情况。
所以我的问题是,当表/架构更新收敛到所有节点/区域/等时,如何可靠地把握要点?或者,如果还有其他方法可以通过潜在模式更改可靠地重新导入数据。