问题标签 [google-cloud-python]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
727 浏览

google-cloud-datastore - Datastore 存储聚合嵌套数据以便更好地查询的最佳方式

我是数据存储的新手。将其用于非 GAE 应用程序。

我正在为我的用例寻求更好的设计。

通过展平和存储多种类型来存储嵌套聚合数据,以获得更好的查询支持。

我把它储存在 5 种。每一种都与另一种作为祖先键相关。

种类:域

种类:事件

种类:属性

种类:属性值

种类:用户

我已经添加了各种“evt_datetime”属性,因为它将是主过滤器键。

我已经为所有属性设置了索引以启用任何属性过滤器,但是由于一个属性限制上的一个不平等过滤器让我暂停了。

如您所见,我无法使用 (>,<,>=,<=) 中的任何一个过滤 evt_datetime 和 evt_count。

有没有更好的方法来设计这些模式以使用多个过滤器或 kindless 查询?

0 投票
1 回答
304 浏览

google-cloud-datalab - datalab gcp 包与 gcloud

我一直在使用 python(与 BigQuery 和 Cloud Storage 交互)几个月,最近一直在使用 Datalab 来完成类似的任务。我希望澄清gcloud(又名gcloud-python)包和数据实验室示例中使用的gcp包之间的区别。Datalab 似乎不了解 gcloud(尝试导入它会导致“ImportError:没有名为 gcloud 的模块”)。

更新:我项目的开发人员在过去一年中使用了各种 python 包来使用谷歌云平台。有时,一些软件包不稳定,但随着后续版本的改进。在某些情况下,这些包中的功能重叠,我们正在寻找关于哪些包进行标准化的专家意见,和/或关于哪些包最适合哪些用例的建议。

特别是,我们在 gcloud-python 不稳定的时候使用了 boto,但我们假设如果我们不需要支持对 AWS 的访问,我们最好使用 Google 特定的库而不是 boto。 这个使用 boto 描述/推荐(?)的页面似乎得到了积极维护——这是否意味着它是一个首选的替代方案,或者仅仅是为开发人员提供许多替代方案的目标?

如果这不是一个合适的 SO 问题,我将删除。

0 投票
0 回答
320 浏览

google-bigquery - 使用 gcloud-python 将 BigQuery 表导出到 GCS

此处的示例已过时https://googlecloudplatform.github.io/gcloud-python/stable/bigquery-usage.html#exporting-data-async。该示例给出错误: AttributeError: 'Table' object has no attribute 'export_to_storage'

如何在 gcloud-python v.0.8.0 中以 CSV/JSON 格式构建和运行将 BigQuery 表提取到 Google Cloud Storage 的作业?

谢谢

0 投票
1 回答
669 浏览

python - gcloud-python 关闭连接

gcloud-python 中有没有办法关闭连接?目前,似乎已经建立了连接,一旦完成,它就会坐在那里CLOSE_WAIT并最终超时。任何帮助表示赞赏。谢谢!

背景:我有一个正在运行的服务器,当一个写入 GCS 的 POST 请求进入时,它将打开一个新连接。查看 a 时netstat,在CLOSE_WAIT.

编辑:我已经浏览了文档,似乎没有什么东西跳出来

0 投票
0 回答
123 浏览

python - Jenkins 中需要 gcloud.datastore 的单元测试

我是 Jenkins 的新手,我正在尝试安排 Jenkins 作业来运行 Python 单元测试。正在测试的模块 import gcloud.datastore,但我收到一个错误:No module named gcloud.datastore尝试运行 Jenkins 作业时。我已经为 jenkins 安装了 GCloud SDK 插件,但我不确定如何解决这个问题。

我在 Jenkins 中运行以下Build->Virtualenv Builder命令来安装我的测试的依赖项,然后运行它们。(我确信有更好的方法来运行单元测试,但我稍后会处理。)

执行时出现错误run_test.py。由于无法使用 pip 安装 GCloud SDK,因此将其放入requirements.txt文件中不起作用,因此我不确定如何执行此操作。

GCloud SDK 安装在我的 VM 目录/vagrant/google-cloud-sdk/bin/gcloud中,但 Jenkins 似乎并不关心。

附带说明:测试本身模拟访问数据存储的方法,因此gcloud.datastore库不被用于它们,但项目本身需要它。

0 投票
1 回答
203 浏览

google-app-engine - 如何将 C 库添加到 Python appengine

我有一个 Python GAE 应用程序,它也使用 Google Compute Engine VM 实例。我正在尝试从 shell 运行一些第 3 方应用程序。当我启动 Google Cloud Shell 程序并键入pwd时,路径显示:/home/<my_username>但是当我subprocess.call()从我的 python 代码调用时,日志显示:/home/vmagent/

所以我可以从命令行安装程序,/home/<my_username>但我无法从我的 Python 应用程序中访问这些程序,因为我不知道在哪里/home/vmagent/

所以我想我的问题是 - 如何从我的 GAE 应用程序或我的一个 Compute Cloud VM 实例访问我在仪表板上看到的 Google Cloud Shell?

0 投票
2 回答
202 浏览

google-app-engine - gcloud python:如何使用 OR 条件构造查询

似乎没有办法用 OR 条件构造查询。有没有人遇到过这个问题或知道什么时候会完成或任何解决方法。

我想用 OR 实现这样的目标:

但是这个过滤器作为 AND 而不是 OR。

0 投票
1 回答
250 浏览

python - 尝试从 docker 容器访问时,数据存储返回 503

我有一个运行 Ubuntu 15.10 和 docker 1.10.1 的 Google Compute Engine 实例。当我尝试从实例上的 gcloud-python 访问 Google Datastore 时,一切正常。当我尝试从 docker 容器内部访问它时,python:3.5总是会收到 503 错误。这是完整的堆栈跟踪:

谁能告诉我这里可能发生了什么?

0 投票
1 回答
13454 浏览

python - 如何使用 json 凭证文件对 gcloud 大查询进行身份验证?

google bigquery 的 gcloud 文档中,它指出可以从 from_service_account_json 确定身份验证。

我试过以下

json 文件如下所示(注意:加扰的凭据,因此这些现在是假的)。

我收到以下错误:

我想我可能错误地创建了 json 凭据文件,但我不确定应该如何制作。

我也尝试从谷歌下载 json 文件,但现在得到以下错误:

我也试过下载 p12 文件

bigquery.Client.from_service_account_p12('chris@curate.com','/Users/Chris/Desktop/Shippy-e824e0396911.p12')

然后我收到以下错误:

0 投票
1 回答
929 浏览

python - Python oauth2client 异步

我正在与龙卷风和官方的 python oauth2clientgcloud ... 模块作斗争。

这些模块接受通过 http= 传递的备用 http 客户端,只要它有一个request可以被任何这些库调用的方法,每当必须将 http 请求发送到 google 和/或使用刷新更新访问令牌时令牌。

我创建了一个简单的类,self.client = AsyncHttpClient() 它的方法中有一个 Then request,返回self.client.fetch(...)

我的目标是能够yield调用这些库中的任何一个,以便 tornado 以异步方式执行它们。

问题是它们高度依赖于默认客户端 - 设置为 httplib2.Http() 返回:(响应,内容)

我真的被卡住了,找不到一种使这种异步的干净方法

如果有人已经找到方法,请提供帮助。

先感谢您