Python BigQuery получить метаданные внешней таблицы - PullRequest
0 голосов
/ 09 ноября 2018

Я хочу получить внешние метаданные таблицы, созданной в bigquery. Таблица была создана так:

table_ref = self._client.dataset('test').table('test')
table = bigquery.Table(table_ref)

self._extconfig = bigquery.ExternalConfig('AVRO')
self._extconfig.autodetect = True
self._extconfig.source_uris = ['gs://someproject/bucket/dir/file*.avro']
table.external_data_configuration = self._extconfig
self._client.create_table(table)

Теперь я хочу получить доступ к метаданным, хранящимся в external_data_configuration', например:

dataset = self._client.dataset('test')
table_ref = dataset.table('test')
table = bigquery.Table(table_ref)
print(table.table_id)
print(table.path)
print(table.table_type)
print(table.external_data_configuration)

Но все, что я получаю, это None для table_type, где я ожидал 'AVRO', а также None для external_data_configuration.

Есть ли способ получить external_data_configuration, особенно source_uris для внешних таблиц?

1 Ответ

0 голосов
/ 09 ноября 2018

Попробуйте вместо этого:

dataset = self._client.dataset('test')
table_ref = dataset.table('test')
table = self._client.get_table(table_ref)
print(table.external_data_configuration.source_uris)

get_table извлечет всю информацию из таблицы в переменную table.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...