получить дату последнего изменения таблиц с помощью таблиц bigquery GET api - PullRequest
0 голосов
/ 23 мая 2018

Я пытаюсь получить список таблиц и их last_modified_date, используя bigquery REST API.
В обозревателе bigquery API я получаю все поля правильно, но когда я использую API из кода Python, он возвращает 'None' дляДата изменения
Это код, написанный для того же самого в python

from google.cloud import bigquery
client = bigquery.Client(project='temp')
datasets = list(client.list_datasets())

for dataset in datasets:
    print dataset.dataset_id

for dataset in datasets:
    for table in dataset.list_tables():
        print table.table_id
        print table.created
        print table.modified

В этом коде я правильно получаю дату создания, но для всех таблиц изменена дата «Нет».

1 Ответ

0 голосов
/ 23 мая 2018

Не совсем уверен, какую версию API вы используете, но я подозреваю, что последние версии не имеют метода dataset.list_tables().

Тем не менее, это один из способов получить последнийизмененное поле, посмотрите, работает ли это для вас (или даст вам представление о том, как получить эти данные):

from google.cloud import bigquery
client = bigquery.Client.from_service_account_json('/key.json')

dataset_list = list(client.list_datasets())
for dataset_item in dataset_list:
    dataset = client.get_dataset(dataset_item.reference)
    tables_list = list(client.list_tables(dataset))

    for table_item in tables_list:
        table = client.get_table(table_item.reference)
        print "Table {} last modified: {}".format(
            table.table_id, table.modified)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...