Я знаю, что у меня должен быть код, но у меня пока нет ничего полезного.
В моем GCS gs://path/listings_all.json
есть файл ~ 300 ГБ JSON , в итоге я пытаюсь импортировать его вBigQuery, но у него неправильная структура данных (я взял его из mongoexport
из MongoDB)
неверное имя поля "$ date".Поля должны содержать только буквы, цифры и подчеркивания, начинаться с буквы или подчеркивания и иметь длину не более 128 символов
Итак, теперь мой подход заключается в том, чтобы каким-то образом читать исходный файл построчно из GCSобработайте его и загрузите каждую обработанную строку в BigQuery с помощью Python API.
Ниже простой читатель, который я собрал, чтобы протестировать образец 100 строк из оригинального огромного файла:
import json
from pprint import pprint
with open('schema_in_10.json') as f:
for line in f:
j_content = json.loads(line)
# print(j_content['id'], j_content['city'], j_content['country'], j_content['state'], j_content['country_code'], j_content['smart_location'], j_content['address'], j_content['market'], j_content['neighborhood'])
# // geo { lat, lng}'])
print('------')
pprint(j_content['is_location_exact'])
pprint(j_content['zipcode'])
pprint(j_content['name'])
Не могли бы вы, пожалуйстапомогите мне, как я могу читать или передавать огромные строки JSON построчно из Google Cloud Storage с Python3?