2017-10-06 70 views
0

至BigQuery專家較大,BQ加載錯誤:在位置893786302.數據塊的大小的Avro解析錯誤27406834大於最大允許值16777216

我在這就要求我們代表客戶的購物歷史的過程中工作我們使用前綴將Solr分面的所有最後12個月的交易連接在一個列中。

當試圖在BIG查詢中加載這些數據時,我們得到的行下限超過了錯誤。有什麼辦法可以解決這個問題嗎?實際的元組大小約爲64 MB,其中avro限制爲16 MB。

[ ~]$ bq load --source_format=AVRO --allow_quoted_newlines --max_bad_records=10 "syw-dw-prod":"MAP_ETL_STG.mde_golden_tbl" "gs://data/final/tbl1/tbl/part-m-00005.avro" 
Waiting on bqjob_r7e84784c187b9a6f_0000015ee7349c47_1 ... (5s) Current status: DONE 

BigQuery error in load operation: Error processing job 'syw-dw-prod:bqjob_r7e84784c187b9a6f_0000015ee7349c47_1': Avro parsing error in position 893786302. Size of data 
block 27406834 is larger than the maximum allowed value 16777216. 
+0

64 MB已經超過了BigQuery中的最大行大小,所以我不認爲有一種方法將它加載到BigQuery中。 你能把事務分成多行嗎?這應該不會影響您在加載到Big Query之後分析事務嗎? –

回答

1

BigQuery對加載的Avro文件的塊大小的限制是16MB(https://cloud.google.com/bigquery/quotas#import)。除非每行實際上大於16MB,否則應該可以將行分成更多的塊以保持在16MB的塊限制內。使用壓縮編解碼器可能會減小塊大小。

相關問題