我有一个数据管道,可以将数据流式传输到每日BigQuery表(data_20170801,data_20170802等)。由于流程的标准技术性,数据可能包含重复的行。如果我想查询今天的数据,我会创建一个重复删除重复行的查询。
最重要的是,我有一个每日“清理”过程,通过从现在不可变的“脏”表(包含重复项)中进行选择来修复“昨天”,并创建一个新的重复数据删除表。
现在,如果想要查询包含“干净”和“脏”表的时间范围,查询会变得有点麻烦,因为它包括干净表上的干净查询,以及对该表的自适应重复数据删除查询脏桌子。
我的问题是从查询中隐藏此业务逻辑的最佳方法是什么?我正在考虑以相同的格式(和命名约定)为脏表创建重复数据删除视图,但后来我想在清理过程中覆盖它,没有任何停机时间。
怎么可以这样做?