Модуль «apache_beam.io.gcp.internal.clients.bigquery» не имеет атрибута «TableFieldSchema»?Python

Программы на Python
Ответить
Anonymous
 Модуль «apache_beam.io.gcp.internal.clients.bigquery» не имеет атрибута «TableFieldSchema»?

Сообщение Anonymous »

Я пытаюсь проанализировать схему из файла json, который содержит файл схемы таблицы bigquery.
Я использую следующий код.
import apache_beam as beam
from apache_beam.io.gcp.bigquery import parse_table_schema_from_json
import json

schema_data = json.dumps(json.load(open("/content/sample_data/schema.json")))
table_schema = parse_table_schema_from_json(schema_data)
print(table_schema)

Но выдает ошибку.
module 'apache_beam.io.gcp.internal.clients.bigquery' has no attribute 'TableFieldSchema'

Я установил библиотеку Apache Beam для gcp, используя
pip install apache-beam[gcp].
Может ли кто-нибудь помочь или знать, как это сделать? решить эту проблему?
Моя схема:
Она содержит вложенные и повторяющиеся столбцы.
{
"fields": [
{
"fields": [
{
"mode": "NULLABLE",
"name": "second",
"type": "INTEGER"
},
{
"mode": "NULLABLE",
"name": "minute",
"type": "INTEGER"
},
{
"mode": "NULLABLE",
"name": "hour",
"type": "INTEGER"
},
{
"mode": "NULLABLE",
"name": "timeZoneId",
"type": "STRING"
},
{
"fields": [
{
"mode": "NULLABLE",
"name": "month",
"type": "INTEGER"
},
{
"mode": "NULLABLE",
"name": "day",
"type": "INTEGER"
},
{
"mode": "NULLABLE",
"name": "year",
"type": "INTEGER"
}
],
"mode": "NULLABLE",
"name": "date",
"type": "RECORD"
}
],
"mode": "NULLABLE",
"name": "lastModifiedDateTime",
"type": "RECORD"
},
{
"mode": "REPEATED",
"name": "companionCreativeIds",
"type": "INTEGER"
},
{
"mode": "NULLABLE",
"name": "masterCreativeId",
"type": "INTEGER"
},
{
"mode": "NULLABLE",
"name": "name",
"type": "STRING"
},
{
"mode": "NULLABLE",
"name": "id",
"type": "INTEGER"
},
{
"fields": [
{
"mode": "NULLABLE",
"name": "name",
"type": "STRING"
},
{
"mode": "NULLABLE",
"name": "value",
"type": "STRING"
}
],
"mode": "REPEATED",
"name": "soft_error_fields",
"type": "RECORD"
},
{
"mode": "NULLABLE",
"name": "dw_ingest_time",
"type": "TIMESTAMP"
},
{
"mode": "NULLABLE",
"name": "dw_partition_date",
"type": "DATE"
},
{
"mode": "NULLABLE",
"name": "dw_publish_time",
"type": "TIMESTAMP"
},
{
"mode": "NULLABLE",
"name": "dw_source_object_name",
"type": "STRING"
},
{
"mode": "NULLABLE",
"name": "dw_batch_id",
"type": "STRING"
}
]
}


Подробнее здесь: https://stackoverflow.com/questions/763 ... e-tablefie
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»