【发布时间】:2023-03-31 02:54:02
【问题描述】:
我有一个要求,我将在哪里接收需要加载到 BigQuery 表的文件内容。标准API 展示了如何从本地文件加载数据,但我没有看到任何接受文件内容作为字符串而不是文件路径的加载方法的变体。知道如何实现这一目标吗?
【问题讨论】:
我有一个要求,我将在哪里接收需要加载到 BigQuery 表的文件内容。标准API 展示了如何从本地文件加载数据,但我没有看到任何接受文件内容作为字符串而不是文件路径的加载方法的变体。知道如何实现这一目标吗?
【问题讨论】:
正如我们在source code 和official documentation 中看到的加载函数仅从本地文件或存储文件加载数据。允许的选项是:
加载作业已创建,它将异步运行您的数据加载。如果您想即时访问您的数据,请使用 Table insert 函数将其插入,您需要在其中提供要插入到表中的行:
// Insert a single row
table.insert({
INSTNM: 'Motion Picture Institute of Michigan',
CITY: 'Troy',
STABBR: 'MI'
}, insertHandler);
如果你想加载即CSV文件,首先你需要手动save data to a CSV in Node.js。然后,使用load() 方法将其加载为单列 CSV。这会将整个字符串加载为单列。
此外,我可以建议您使用 Dataflow 模板,即 Cloud Storage Text to BigQuery,它读取存储在 Cloud Storage 中的文本文件,使用 JavaScript 用户定义函数 (UDF) 对其进行转换,然后将结果输出到 BigQuery。但是您要加载的数据需要存储在 Cloud Storage 中。
【讨论】: