Импорт данных из BigQuery в облачное хранилище в другом проекте
У меня есть два проекта под одной учетной записью:
- projectA с BQ и projectB с облачным хранилищем
- У projectA есть BQ с набором данных и таблицей - testDataset.testTable
- prjectB имеет облачное хранилище и корзину - testBucket
- Я использую Python, API Google Cloud Rest
- учетные данные ключа учетной записи для каждого проекта с различными разрешениями: ключ projectA имеет разрешения только для BQ; ProjectB имеет разрешения только для облачного хранилища
Что мне нужно:
импортировать данные из projectA testDataset.testTable в projectB testBucket
Проблемы
- Конечно, я сталкиваюсь с ошибкой. Отказано в доступе при попытке сделать это, потому что, очевидно, ключ projectA не имеет разрешений для хранилища projectB и т. д.
- Еще одна странная проблема, так как у меня есть testBucket в projetB Я не могу создать ведро с тем же именем в ProjectA и получить
Это имя корзины уже используется. Имена ковшей должны быть глобально уникальными. Попробуйте другое имя.
Итак, похоже, что все учетные записи связаны, я думаю, это означает, что должна быть возможность импортировать данные из одной учетной записи в другую через API
Что я могу сделать в этом случае?
1 ответ
Вы ошиблись. Вам нужно предоставить доступ к учетной записи пользователя в обоих проектах, чтобы иметь доступ к различным проектам. Таким образом, должен быть пользователь, авторизованный для выполнения BQ, а также GCP для другого проекта.
Также Bucket names must be globally unique
это означает, что я также не могу создать имя, оно глобально (для всей планеты вы зарезервировали это имя, а не только для проекта)