我们需要存储我们某些数据库的每日和每月快照。
这不是备份,我们需要存储数据,以便以后分析它们,看看它们在这段时间内是如何发展的。 我们仍然不知道在两个月内我们将需要什么样的查询,因为我们需要跟踪用户群的一些变化,因此我们将保存用户和其他相关集合的每日快照。
我们正在考虑将所有内容放在Google BigQuery上,将数据放在其上很容易,并且更容易对这些数据进行查询。
我们将创建一些表,一个表用于我们需要的每组数据,包含所有需要的列,另外还有一个表,其中包含提取过程完成的日期。 我们将使用此列按日,月等对数据进行分组。
另一种方法可能是为每个井组数据创建数据集,每次需要快照时创建一个表。 老实说,我不知道这两者之间有什么好处,或者是否有更好的选择。
答案 0 :(得分:1)
由于我不了解您的需求或成本要求,因此很难说哪种方式最适合您。
但是,通过“创建一些表,我们需要的每组数据一个,包含所有需要的列,再添加一个包含提取过程完成日期的方法”方法,您可以运行查询这将允许您查看用户随时间的变化。例如,对于特定时间片,您可以说特定用户随时间的平均活动。
答案 1 :(得分:0)
可能有点迟了,但对于未来的读者:你可能正在寻找date-partitioned tables。它完全对应于此用例,文档页面中有一个简单的示例。
答案 2 :(得分:0)
您现在可以在 BigQuery 中创建表快照。
您现在只能使用 bq
命令行工具。
看这里 -> https://cloud.google.com/bigquery/docs/table-snapshots-create#creating_table_snapshots