我想将一个大型csv导入到一个bigquery分区表,该表具有一个时间戳类型列,实际上是某个事务的日期,问题是当我加载数据时,它将所有内容导入到今天的一个分区中。约会。
是否可以使用我自己的时间戳值对其进行分区?我怎么能这样做。
答案 0 :(得分:1)
在BigQuery中,目前不支持基于特定列的分区 即使此列与日期相关(时间戳) 您要么依赖插入时间,要么BigQuery引擎将插入到相应的分区中,或者您指定要将数据插入到哪个分区中 详细了解Creating and Updating Date-Partitioned Tables
答案 1 :(得分:0)
今天最好的方法是使用Google Dataflow [1]。您可以开发一个流媒体pipeline
,它将从Google Cloud Storage存储桶读取该文件,并将这些行插入BigQuery的表格中。
在运行管道之前,您需要手动创建分区表[2],因为Dataflow现在不支持创建分区表
[3]
有多个例子[1] https://cloud.google.com/dataflow/docs/
[2] https://cloud.google.com/bigquery/docs/creating-partitioned-tables