Экспорт коллекций в BigQuery

Я пытался экспортировать коллекцию в BigQueryс помощью расширения " Экспорт коллекций в BigQuery".
Но я не могу экспортировать все коллекции.

Мне нужно экспортировать всю коллекцию и подколлекцию в BiqQuery, используя Экспорт коллекций в расширения BigQuery

Я могу экспортировать только одну коллекцию, но не могу экспортировать все.

Может ли кто-нибудь помочь мне экспортировать все коллекции и подколлекции?

3 ответа

Вы можете установить второе расширение «поток коллекций в biquery», чтобы вторая коллекция экспортировалась в BQ. Просто зайди в меню расширений и у тебя получилось с первого раза

Вы можете попробовать экспортировать информацию в корзину или локальный файл, выполнив команду gcloud firestore export gs://mybucket/my/pathкак упоминалось здесь. Это позволит экспортировать все коллекции с помощью одной команды.

Я рекомендую вам экспортировать его в GCS, однако вы можете загрузить информацию в BigQuery, следуя одному из этих методов.

Скорее всего, это проблема с расширением, которое вы используете, поскольку расширения все еще находятся на стадии бета-тестирования, но вы все равно можете открыть запрос функции, чтобы они добавили дополнительные функции к расширению в будущем и / или сообщали о любой ошибке напрямую.

Надеюсь, вы найдете это полезным!

Мне было полезно перейти в раздел «Облачные функции» для моего проекта Firebase, перейти на консоль GCP и загрузить zip-архив с исходным кодом, развернутым для моего проекта.ext-firestore-bigquery-export-fsexportbigqueryфункция.

Там я заметил, что значениеprocess.env.COLLECTION_PATHв конечном итоге передаетсяfunctions.firestore.document()который просто создает путь коллекции с пространством имен, где подстановочные знаки могут использоваться на любом уровне пути... и в этом заключается магия.

Если вы зададите свой путь к коллекции просто как переменную с подстановочным знаком, например «{AnyCollection}», тогда функция будет захватывать события для всех без исключения коллекций в вашей базе данных Firestore. Требуется только один экземпляр расширения.

Общее решение:

  • Установите путь к коллекции "{AnyCollection}"
  • Установите для идентификатора таблицы значение, указывающее, что это мультиколлекция, например AnyCollection.
  • Может быть полезно установить для поля подстановочного знака столбца с идентификаторами родительского документа Firestore значение true, хотя это и не обязательно.
    • Вы также можете запросить имя коллекции изdocument_nameв вашей таблице BigQuery, которая включает такие пути, как «projects/my-firebase-project/databases/(default)/documents/my-firestore-collection/U5OeEv7jZCY8ja0g2gLr».
Другие вопросы по тегам