如何创建工作以在google-BigQuery上启动python脚本

时间:2018-08-06 23:14:54

标签: python google-bigquery jobs

我在google-BigQuery上有问题:

  1. 我写了一个查询。
  2. 我打开外壳,并创建一个 Python 脚本,该查询调用该查询并将数据保存在 BigQuery < / strong>,到目前为止一切顺利。

现在,所有文件(.py和.csv)都是BigQuery的目录:
stefano_giostra@[MY_PROJECT]:~/bb_stkovf_data$ ls -l total 24 -rw-r--r-- 1 stefano_giostra stefano_giostra 2724 Aug 7 01:51 best_answer_on_google-bigquery_90gg_20180807_0151.log -rw-r--r-- 1 stefano_giostra stefano_giostra 669 Aug 7 01:51 domande_risposte_2014_2015.log -rw-r--r-- 1 stefano_giostra stefano_giostra 155 Aug 7 01:51 python_developer_by_nation_20180807_0151.log -rw-r--r-- 1 stefano_giostra stefano_giostra 770 Aug 7 01:51 query.sql -rw-r--r-- 1 stefano_giostra stefano_giostra 7744 Aug 7 01:50 sg_bb_stkorw_info.py

  1. 我希望在 BigQuery GCP 用户界面上看到CSV,怎么办?
  2. 我也希望生成一个仅调用脚本的作业,并且我不想构建广告HTML应用程序只是为了安排查询调用。

在文档中,我没有看到任何调用.py的yaml文件,但是只有.app的调用,而在我最近阅读的所有文档中,我都没有看到如何执行此操作。

有人可以帮助我吗?

谢谢

1 个答案:

答案 0 :(得分:0)

找到以下答案:

  1. 要在BigQuery中可视化CSV,您必须先将其加载到表as described here中。然后,您可以将其可视化为常规表(使用预览或查询特定字段)。

  2. 我在this other post中找到了JMD的方法,JMD是Google的技术解决方案代表,也是AKA值得信赖的消息来源。该解决方案在Compute Engine f1-micro实例中使用Cron作业,该作业可让您运行脚本而无需对其进行修改,而无需构建一个不需要的“ HTML”应用程序:

  

要安排脚本,您首先必须创建一个项目   有一个。我认为您已经有一个项目,因此   只需创建要计划此脚本的实例即可。

     

要创建新实例:

     
      
  1. 在Google Cloud Platform控制台上,单击“产品和服务”,该图标是左上角带有四个栏的图标。

  2.   
  3. 在菜单上转到“计算”部分,将鼠标悬停在Compute Engine上,然后单击“ VM实例”。

  4.   
  5. 转到实例部分上方的菜单栏,在那里您将看到“创建实例”按钮。单击它并填写配置   您希望新实例具有的值。你的价值观   select将确定您的VM实例功能。您可以选择   其他值,例如新实例的名称,区域和计算机类型。

  6.   
  7. 在“计算机类型”部分中,单击下拉菜单选项卡以选择“ f1-micro实例”。

  8.   
  9. 在“身份和API访问”部分中,提供对Storage API的访问范围,以便您可以在存储桶中进行读写   需要这样做;默认访问范围仅允许您阅读。也   启用BigQuery API。

  10.   
  11. 创建实例并访问存储桶后,只需在新实例内创建cron作业:在用户帐户中   将在其下执行cron作业,运行crontab -e并进行编辑   文件以运行将执行baby.sh脚本的cron作业。   跟随documentation link进行操作应该可以帮助您。

  12.   
     

请注意,如果要查看脚本的输出,则可能需要   redirect it到当前终端。

由于您同时也在使用Google BigQuery,因此您可能需要添加更多permissions