使用命令行将 csv 文件加载到大查询中时面临问题
Posted
技术标签:
【中文标题】使用命令行将 csv 文件加载到大查询中时面临问题【英文标题】:facing issue while loading csv file into big query using command line 【发布时间】:2019-08-28 18:01:13 【问题描述】:我正在尝试使用 bq load 命令将数据加载到大查询中,但在加载数据时遇到了一些问题。
我尝试使用波纹管 bq 加载选项
--allow_quoted_newlines
--allow_jagged_rows
出现以下错误
cloudshell:~ (cec-gcp-srm-prod)$ bq load --source_format CSV --allow_quoted_newlines --allow_jagged_rows cec_tabular_data.AIU_FaStudentPell gs://cec-srm-prod/sqoop_jars/tables/AIU_FaStudentPell/part-*
Waiting on bqjob_r7be43351d9d1ee46_0000016cd9590247_1 ... (9s) Current status: DONE
BigQuery error in load operation: Error processing job 'cec-gcp-srm-prod:bqjob_r7be43351d9d1ee46_0000016cd9590247_1': Error while reading data, error message: CSV table encountered too many errors,
giving up. Rows: 53097; errors: 1. Please look into the errors[] collection for more details.
Failure details:
- gs://cec-srm-prod/sqoop_jars/tables/AIU_FaStudentPell/part-m-00000:
Error while reading data, error message: Too many values in row
starting at position: 25633742.
【问题讨论】:
【参考方案1】:从错误消息的外观来看,作业被设计为一旦遇到 1 个错误就会失败。
如果数据准确性不是问题,请增加摄取期间允许的错误数并删除不良记录。
根本原因可能是您的分隔符出现在 csv 数据中,导致创建了额外的列。如果您需要 100% 的数据,请尝试将分隔符从 , 更改为 |或一些未使用的符号,因为这可能会解决问题。
【讨论】:
谢谢马蒂!问题已解决,我在使用 sqoop 导入数据时尝试使用 avro 文件格式。我将数据与架构映射,然后在大查询中加载数据。以上是关于使用命令行将 csv 文件加载到大查询中时面临问题的主要内容,如果未能解决你的问题,请参考以下文章
使用云功能将数据加载到大查询表中,它是附加到表中的,我需要它来替换