如何让我的客户端将BigQuery查询结果导出为CSV

时间:2016-05-12 21:46:43

标签: java google-app-engine google-bigquery google-cloud-dataflow

所以我在Google App Engine上用java开发了一个后端API。 API用于通过在BigQuery上运行查询来返回实时统计信息。

我还在AngularJS中开发了Front End,它与后端API通信,允许用户登录,并查看汇总的统计数据。

我想让我的用户从BigQuery(直接通过我的前端应用程序)将数据导出为CSV。

我不确定实现这一目标的最佳途径是什么。非常感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

我可以看到你根据自己的需要采取以下两种方式之一:

  1. 以CSV格式运行export job to Google Cloud Storage,然后从GCS下载导出的CSV。

  2. tabledata.list API读取数据,在服务器上将fv格式转换为CSV并创建可下载的CSV文件。

  3. 我可能会推荐第一个选项。导出作业可能会更好地扩展,因为它们通常比重复调用tabledata.list更适合大型表。它还避免了编写自定义代码以将数据转换为CSV的需要。

答案 1 :(得分:1)

导出到GCS目前是我们的缩放解决方案,也许您可​​以联系团队为您设置一些特殊配额。 tabledata.list返回直接CSV输出即将被弃用,另一种方法是使用bq cli的head命令和--format = csv,但这不是扩展的解决方案。