我将处理数据和输出的性能与 Bigquery 表和文件进行了比较,差异显着:
输入:约 600 个文件中的 150 万条记录
转换:构造/转换每个记录中的一些字段,构造一个键并发出键、值对;最终每个键的记录都会到达一个目标、一个文件或一张表;
写入 13 个文件花了 7 分钟,写入 13 个 bigquery 表花了 60 多分钟;
尝试了解这是预期的结果还是我没有做对?写入bigquery表时应考虑哪些因素?
请帮忙,这可能会阻碍我想做的事情。
对于批处理作业,Dataflow 将数据写入 BigQuery,方法是将其写入 GCS,然后运行 BigQuery 作业以将该数据导入 BigQuery。如果您想知道 BigQuery 作业需要多长时间,我认为可以查看项目中运行的 BigQuery 作业。
您可以尝试以下命令来获取有关 BigQuery 导入作业的信息。
bq ls -j <PROJECT ID>:
上面的命令应该向您显示作业列表和持续时间等信息。 (注意项目 ID 末尾的冒号,我认为冒号是必需的)。
然后你可以尝试
bq show -j <JOB ID>
获取有关该工作的更多信息。
请注意,您必须是项目的所有者才能查看其他用户运行的作业。这适用于 Dataflow 运行的 BigQuery 作业,因为 Dataflow 使用服务帐户。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)