pandas 如何使用Python BigQuery API在BigQuery中追加表

mklgxw1f  于 2023-10-14  发布在  Python
关注(0)|答案(2)|浏览(106)

我已经能够使用pandas-gbq package从Pandas框架中附加/创建一个表。特别是使用to_gbq method。然而,当我想使用BigQuery Web UI检查表时,我看到以下消息:
此表在流缓冲区中包含在预览中可能不可见的记录。
我不是唯一一个问,似乎there's no solution to this yet
所以我的问题是:
1.是否有解决上述问题的方法(即数据在Web UI中不可见)。
2.如果(1)没有解决方案,是否有其他方法可以使用Python BigQuery API将数据追加到现有表中?(注意,文档说我可以通过运行异步查询并使用writeDisposition=WRITE_APPEND来实现这一点,但它提供的链接并没有解释如何使用它,我无法解决这个问题)。

nx7onnlm

nx7onnlm1#

该消息只是一个UI通知,它不应该阻止你。
要检查数据,运行一个简单的查询,看看它是否在那里。
要只读取仍在流缓冲区中的数据,请使用此查询:

#standardSQL    
SELECT count(1) 
FROM `dataset.table` WHERE _PARTITIONTIME is null
puruo6ea

puruo6ea2#

写入表时,您可以使用:用途:

from google.cloud import bigquery
import pandas

# Construct a BigQuery client object.
client = bigquery.Client()

job = client.load_table_from_dataframe(
dataframe, table_id, job_config=job_config
)  # Make an API request.
job.result()  # Wait for the job to complete.

这个作业配置是一个bigquery.LoadJobConfig类。您可以示例化它并将其传递给load_table_from_dataframe方法。

job_config = bigquery.LoadJobConfig( write_disposition="WRITE_APPEND")

相关问题