Создание представлений схемы с помощью расширения "Экспорт коллекций в BigQuery": fs-bq-schema-views

https://github.com/firebase/extensions/blob/master/firestore-bigquery-export/guides/GENERATE_SCHEMA_VIEWS.md

Я попытался создать сценарий представления схемы, но не смог его создать.

может ли кто-нибудь помочь мне с созданием шага 1?

2 ответа

Обратитесь к этому документу, чтобы понять схемы BigQuery — определение схемы . Объяснили больше ниже.

Создание схемы для документа коллекции Firestore -

  • Схема — это просто объект json, который имеет массив полей.
      {
  "fields": [
    {
      "name": "name",
      "type": "string"
    },
    {
      "name": "age",
      "type": "number"
    }
  ]
}
  • В массиве fields каждый элемент будет иметь свойство and. nameэто имя поля, которое вы использовали в своем документе коллекций, и typeявляется типом данных.
  • Например, документ «Моя коллекция» имеет следующий интерфейс (усеченный):

Итак, моя схема выглядит следующим образом (обратите внимание — для краткости я не добавил все):

      {
  "fields": [{
      "name": "awb",
      "type": "string"
    },
    {
      "name": "rfn",
      "type": "string"
    },
    {
      "name": "customerId",
      "type": "string"
    },
    {
      "name": "shipmentStatus",
      "type": "string"
    },
    {
      "name": "amount",
      "type": "number"
    }
  ]
}

Теперь вам нужно просто создать свою схему в любом каталоге на вашем компьютере, а затем запустить npx @firebaseextensions/fs-bq-schema-viewsкоманду из этого каталога.

Это откроет интерактивный раздел cli, где вы можете добавить свой projectId, datasetIdи т. д., как показано ниже:

После этого схема будет создана для вас, и вы сможете проверить ее в пользовательском интерфейсе BigQuery.

ПРИМЕЧАНИЕ .

  • Убедитесь, что у вас есть gcloudустановлен и настроен. Шаги снова просты, следуйте инструкциям по установке Cloud SDK.
  • Перед запуском npxкоманду, не забудьте запустить gcloud auth application-default login

СОВЕТ -

  • В качестве хорошей практики вы можете создать каталог в корне вашего проекта и хранить там все схемы. Это поможет отслеживать все изменения, если вы используете любую систему контроля версий, например git(при условии, что вы регистрируетесь)

Вот так сделали -

У меня была такая же ошибка, и оказалось, что я неправильно структурировал свой файл .json.

Точная структура выглядит следующим образом:
в файле схемы json корень конфигурации должен иметь массив полей , который содержит объекты , описывающие элементы в схеме, каждый объект в массиве полей будет иметь имя и свойство типа . имя — это имя поля, которое вы использовали в своем документе коллекций в firestore, а тип — это тип данных. Если один из объектов имеет тип карты, он должен указать свой собственный массив полей, описывающий элементы этой карты (опять же точно такой же, как корневой массив конфигурации).

  • для получения более подробной информации о том, как структурировать файл схемы json, пожалуйста, обратитесь к документации .
    {
        "поля": [
            {
                "имя": "ИД",
                "тип": "строка"
            },
            {
                "Назовите возраст",
                "тип": "число"
            }
        ]
    }

Другие вопросы по тегам