将数据从BigQuery导入到不同项目中的云存储

时间:2017-12-19 09:53:45

标签: google-bigquery google-cloud-platform google-cloud-storage google-python-api

我在同一帐户下有两个项目:

  • projectA 与BQ和 projectB 与云端存储
  • projectA 包含数据集和表格的BQ - testDataset.testTable
  • prjectB 有云存储空间和存储桶 - testBucket
  • 我使用python,google cloud rest api
  • 每个项目的帐户密钥凭据,具有不同的权限: projectA 键仅具有BQ权限; projectB 仅具有云存储权限

我需要什么:

projectA testDataset.testTable中的数据导入 projectB testBucket

问题

  • 当然,我正在尝试这样做时遇到错误权限被拒绝,因为很明显, projectA 键没有的权限projectB 存储等
  • 另一个奇怪的问题,因为我在 projetB 中有 testBucket 我无法在 projectA 中创建一个具有相同名称的存储桶并获取
  

此存储桶名称已被使用。存储桶名称必须是全局的   独特。尝试其他名称。

所以,看起来所有帐户都已连接我想这意味着应该可以通过API将数据从一个帐户导入到另一个帐户

在这种情况下我该怎么办?

1 个答案:

答案 0 :(得分:0)

你说错了。您需要提供对两个项目的用户帐户的访问权限,以便跨项目访问。因此,需要有一个用户授权执行BQ事物以及不同项目中的GCP事物。

同样Bucket names must be globally unique这意味着我也无法创建名称,它是全局的(对于整个星球,您保留了该名称,而不仅仅是项目名称)