BQ加载错误:位置893786302中的Avro解析错误。数据块27406834的大小大于最大允许值16777216 [英] BQ Load error : Avro parsing error in position 893786302. Size of data block 27406834 is larger than the maximum allowed value 16777216

查看:2194
本文介绍了BQ加载错误:位置893786302中的Avro解析错误。数据块27406834的大小大于最大允许值16777216的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

对于BigQuery专家来说,我正在研究这个流程,它要求我们代表客户的购物历史记录,以便我们将所有最近12个月的交易连接在一起使用前缀进行Solr刻面。

在试图在BIG Query中加载这些数据时,我们得到的行数超过了错误。有什么办法可以解决这个问题吗?实际的元组大小约为64 MB,其中avro限制为16 MB。

  [〜] $ bq load --source_format = AVRO --allow_quoted_newlines --max_bad_records = 10syw-dw-prod :MAP_ETL_STG.mde_golden_tblgs://data/final/tbl1/tbl/part-m-00005.avro
等待bqjob_r7e84784c187b9a6f_0000015ee7349c47_1 ...(5s)当前状态:完成

加载操作中的BigQuery错误:处理作业'syw-dw-prod:bqjob_r7e84784c187b9a6f_0000015ee7349c47_1'时出错:位置893786302中的Avro解析错误。数据
块27406834的大小大于最大允许值16777216.


解决方案

BigQuery对加载的Avro文件的块大小的限制是16MB( https://cloud.google.com/bigquery/quotas#import )。除非每行实际上大于16MB,否则应该可以将行分成更多的块以保持在16MB的块限制内。使用压缩编解码器可能会减小块大小。


To BigQuery experts,

I am working on the process which requires us to represent customers shopping history in way where we concatenate all last 12 months of transactions in a single column for Solr faceting using prefixes.

while trying to load this data in BIG Query, we are getting below row limit exceed error. Is there any way to get around this? the actual tuple size is around 64 mb where as the avro limit is 16mb.

[ ~]$ 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.

解决方案

BigQuery's limit on loaded Avro file's block size is 16MB (https://cloud.google.com/bigquery/quotas#import). Unless each row is actually greater than 16MB, you should be able to split up the rows into more blocks to stay within the 16MB block limit. Using a compression codec may reduce the block size.

这篇关于BQ加载错误:位置893786302中的Avro解析错误。数据块27406834的大小大于最大允许值16777216的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆