请有人建议如何在大查询中创建分区表吗?例如:假设我拥有2016年谷歌存储的一个日志数据。我将所有数据存储在一个按年份、月份和日期划分的桶中。在这里,我希望创建一个按日期分区的表。提前谢谢
发布于 2016-09-01 05:24:20
分区表的文档如下:https://cloud.google.com/bigquery/docs/creating-partitioned-tables
在本例中,您将创建一个分区表并使用数据填充分区。您可以运行一个查询作业,从GCS读取数据(并过滤特定日期的数据)并写入表的相应分区。例如,要加载2016年5月1日的数据--您可以将destination_table指定为表20160501美元。
目前,您必须运行几个查询作业才能完成此过程。请注意,每个查询作业都将根据处理的字节收取费用。
有关更多详情,请参阅本帖:
发布于 2016-09-01 05:21:59
有两种选择:
备选案文1
可以将每个每日文件加载到名称为YourLogs_YYYYMMDD的单独表中。
请参阅关于如何从云存储加载数据的详细信息
创建表之后,可以使用表通配符函数 (Legacy )或使用通配符表 (Standar )访问它们。有关更多示例,请参见使用通配符表查询多个表。
选项2
您可以创建日期分区表 (只创建一个表- YourLogs) --但是仍然需要将每个每日文件加载到各自的分区中--请参阅创建和更新日期分区表。
加载表之后,您可以轻松地使用查询日期分区表
发布于 2017-06-28 13:26:17
目前不允许为外部表设置分区。有一个特性请求:
https://issuetracker.google.com/issues/62993684
(如果你对此感兴趣,请投票赞成!)
谷歌表示,他们正在考虑这一点。
https://stackoverflow.com/questions/39263006
复制相似问题