通过命令行将Avro Data加载到BigQuery中?

时间:2017-12-27 08:13:51

标签: hive google-bigquery avro

我创建了一个avro-hive表,并使用hive insert-overwrite命令从另一个表中将数据加载到avro-table中。我可以看到avro-hive表中的数据,但是当我尝试将其加载到bigQuery表中时,它给出错误。 表模式: -

CREATE TABLE `adityadb1.gold_hcth_prfl_datatype_acceptence`(  
  `prfl_id` bigint,     
  `crd_dtl` array< struct < cust_crd_id:bigint,crd_nbr:string,crd_typ_cde:string,crd_typ_cde_desc:string,crdhldr_nm:string,crd_exprn_dte:string,acct_nbr:string,cre_sys_cde:string,cre_sys_cde_desc:string,last_upd_sys_cde:string,last_upd_sys_cde_desc:string,cre_tmst:string,last_upd_tmst:string,str_nbr:int,lng_crd_nbr:string>>)        
STORED AS AVRO;

我得到的错误: -

Error encountered during job execution:
Error while reading data, error message: The Apache Avro library failed to read data with the follwing error: Cannot resolve:

我使用以下命令将数据加载到bigquery: -

bq load --source_format=AVRO dataset.tableName avro-filePath

1 个答案:

答案 0 :(得分:0)

请确保您所指向的gs文件夹中有可用数据,并且该数据包含架构(如果是从Hive创建的,则应包含该架构)。这里有一个如何加载数据的示例

bq --location=US load --source_format=AVRO  --noreplace my_dataset.my_avro_table gs://myfolder/mytablefolder/part-m-00001.avro