Google app engine 访问部署在Google App Engine上的Dash App中的BigQuery表

Google app engine 访问部署在Google App Engine上的Dash App中的BigQuery表,google-app-engine,google-bigquery,plotly-dash,Google App Engine,Google Bigquery,Plotly Dash,我正在Google app Engine上部署一个Plotly Dash应用程序,但遇到了一些困难。仪表板中要查询的数据源是一个Bigquery表,其内容正在更改。我希望应用程序中的数据总是最新的 我尝试的是在main.py代码的开头,我通过Bigquery Python API读取了Bigquery中的表,但是在将应用程序部署到GAE之后,我发现数据已经修复;即使我删除了Bigquery表,应用程序也没有受到影响。我可以知道从BigQuery到App Engine获取数据的正确方法吗?谢谢。如

我正在Google app Engine上部署一个Plotly Dash应用程序,但遇到了一些困难。仪表板中要查询的数据源是一个Bigquery表,其内容正在更改。我希望应用程序中的数据总是最新的


我尝试的是在main.py代码的开头,我通过Bigquery Python API读取了Bigquery中的表,但是在将应用程序部署到GAE之后,我发现数据已经修复;即使我删除了Bigquery表,应用程序也没有受到影响。我可以知道从BigQuery到App Engine获取数据的正确方法吗?谢谢。

如何使用Python从GAE连接到BigQuery可能比单个问题所能回答的任务更艰巨,但这里有一些提示:

  • 在我看来,谷歌云的一切都可以通过它得到最好的理解。例如,python文档示例包含几个示例,我认为客户机示例可能是其中最简单、最基本的。这将基本上回答你的问题,除了我要提到的几个问题

  • 当然,您需要在本地环境中进行开发。这是直截了当的,但是如果某些东西似乎不起作用,请确保您已经为您的项目启用了,这可能会有点混乱

  • 需要记住的是,如果您的GAE应用程序位于不同的区域,它将无法轻松与BigQuery通信,事实上,一旦您设置了GAE应用程序,您就无法移动或删除它!因此,在设置时一定要注意您正在做什么,如果您的位置不匹配,则需要将BQ实例迁移到匹配的位置


谢谢你,彼得。我可以使用Python查询BQ。问题是,我不知道如何正确连接到GAE中的BQ。如果我在GAE代码的开头读入BQ表,但它看起来是一次性读入,并且当BQ表更改时,GAE中的数据不会更改。我需要激活GAE cron作业吗?我是GAE的新手,我在这里感到困惑。谢谢。您目前可以在什么环境下查询BQ?我可能有点困惑,因为您正在使用Plotly,但查询BQ通常与查询标准SQL数据库(如MySQL或Postgres)相同。同样,我在上面列出的用于从GAE连接到BigQuery的安装指南也会起作用。我不确定您遇到的问题或步骤是否失败。您是否希望在每次BQ中的数据更改时更新绘图仪?在这种情况下,您可能希望有一个触发器,而BigQuery没有。在这种情况下,可能会有一个GAE cron。谢谢Peter。我正在使用Python3执行BQ查询和编写Dash应用程序(然后使用Python3标准运行时将该应用程序部署到GAE)。我试图做的就是当BQ改变时,让Plotly显示的数据得到更新。我成功读取了应用程序中的BQ数据,但当BQ发生变化时,读取的数据不会发生变化。我被卡在那里了。我们正在从原来的问题转移,但这似乎非常像一个短跑问题,类似于这里的讨论: