1

gcloud python library을 사용하여 몇 줄의 데이터를 업로드하려고하는데 성공하지 못합니다.gcloud 파이썬을 사용하여 Bigquery에 빈 데이터 업로드하기

[(None, None), (None, None)] 

그래서 나는 빈 필드를 추가 : 내가 얻을 최신 업로드를 조회하는 경우 여기에 latest documentation

client = bigquery.Client() 
dataset = client.dataset('test') 
table = dataset.table("test_table") 
rows = [("foo", "bar"), ("foo2", "bar2")] 
result = table.insert_data(rows) 

에서 가져온 샘플 코드입니다. 문서에서 업로드 된 행은 "튜플 목록"이어야하지만 작동하지 않는 것 같습니다. 내 스키마에는 두 개의 문자열 필드가 있습니다. 유니 코드 필드는 작동하지 않으며 오류 결과도 다시 나타나지 않으므로 디버깅하기가 어렵습니다. 내가 뭘 잘못했는지 알아?

답변

1

테이블에 스키마를 명시 적으로 선언하면이 문제를 해결하는 데 도움이됩니다. 즉, 대신 table = dataset.table('test_table')를 사용하여, 당신은 다음을 사용한다 : 나는이에 대한 Github에서에 문제를 열었다

left = SchemaField('left', 'STRING', 'REQUIRED') right = SchemaField('right', 'STRING', 'REQUIRED') table = dataset.table('test_table', schema=[left, right])

. 관심이 있으시면 read more here 수 있습니다.

+0

고마워요. 이미 파이썬 사전이 있었기 때문에 GoogleApi 라이브러리 (https://cloud.google.com/bigquery/docs/reference/v2/tabledata/insertAll)를 사용하여 끝냈습니다. 세트. 솔직히, 나는 set과 스키마를 별도로 사용하기 위해 gcloud 라이브러리의 접근법을 따를 수 없다. 이 두 가지를 결합한 dic으로 작업하기가 훨씬 쉽습니다. 그러나 어쨌든 해결책을 가져 주셔서 감사합니다. – crisscross

+0

"google.cloud.bigquery.schema import SchemaField"에서 사용하는 import 문에 대해 "no module bigquery.cloud.schema"오류가 발생합니다. 이 라이브러리가 존재합니까? 아니면 더 이상 작동합니까? – Praxiteles

관련 문제