Как правильно импортировать CSV в таблицу на BigQuery

У меня есть скрипт Python, который выполняет задание gbq для загрузки CSV-файла f в таблицу в BigQuery. все данные записываются в один столбец, но я хочу, чтобы они загружались в каждый столбец. Я пробовал автоопределение, но это тоже не помогло. мой CSV:

id,first_name,username,last_name,chat_username,chat_id,forward_date,message_text
231125223~Just~koso~swissborg_bounty~-1001368946079~1517903147~test
481895079~Emerson~EmersonEmory~swissborg_bounty~-1001368946079~1517904387~picture
316560356~Ken Sam~ICOnomix~swissborg_bounty~-1001368946079~1517904515~Today 

это мой код:

from google.cloud.bigquery import Client
import os
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = '***.json'
os.environ['GOOGLE_CLOUD_DISABLE_GRPC'] = 'True'

from google.cloud import bigquery
dataset_name = 'test_temporary_dataset'
table_name='table_telega'
bigquery_client = bigquery.Client()
dataset = bigquery_client.dataset(dataset_name)
table = dataset.table(table_name)
#table.reload()
job_config = bigquery.LoadJobConfig()
job_config.source_format = 'text/csv'
job_config.skip_leading_rows = 1
job_config.autodetect = True

job_config.allow_jagged_rows=True
job_config.allow_quoted_newlines=True
job_config.fieldDelimiter='~'
with open('tele2.csv', 'rb') as source_file:
    #job = table.upload_from_file(source_file, source_format='text/csv')
    job=bigquery_client.load_table_from_file(source_file, table, job_config=job_config)

job.result()

и вот что я получаю: bigquery

как правильно загрузить csv столбец за столбцом


person egorkh    schedule 07.02.2018    source источник


Ответы (1)


Автоопределение может работать только с:

  1. запятая
  2. трубка
  3. вкладка

Тильда не будет работать с автоопределением. Вам нужно будет указать схему или изменить разделители на один из указанных выше.

Подробнее см. здесь.

person Graham Polley    schedule 07.02.2018
comment
спасибо за ответ, я изменил разделитель на | и теперь я получаю следующую ошибку: google.api_core.exceptions.BadRequest: 400 Недопустимое обновление схемы. Невозможно добавить поля (поле: string_field_8) - person egorkh; 07.02.2018
comment
пожалуйста, откройте для этого новый вопрос, чтобы его было легче отследить и принять ;-) - person Graham Polley; 07.02.2018
comment
конечно, ссылка на новый вопрос - stackoverflow.com/questions/48662949/ - person egorkh; 07.02.2018