【问题标题】:How can i load csv file data in BigQuery using bq load command?如何使用 bq load 命令在 BigQuery 中加载 csv 文件数据?
【发布时间】:2020-01-10 22:03:29
【问题描述】:

我已经在 BigQuery 数据集中创建了多个表,并且我有很多 csv 文件存储到 GCS 中,现在我想将 csv 文件数据加载到每个表中。我使用以下命令将数据从 csv 文件加载到表中。表包含超过 300 列。

bq load ARADMIN.T1851 gs://new007/t1851data.csv C1:STRING,C2:STRING,C3:NUMERIC,C4:STRING,C5:STRING,C6:NUMERIC,C7:NUMERIC,C8:STRING,C112:STRING,C179:STRING,C60900:STRING,C3004100:STRING,C10000001:STRING,C10003001:NUMERIC,C200000003:STRING,C200000004:STRING,C200000005:STRING,C200000006:STRING,C200000007:STRING,C200000012:STRING,C230000009:STRING,C240001002:STRING,C240001003:STRING,C240001005:STRING,C250000023:NUMERIC,C260000001:STRING,C300270800:STRING,C300270900:STRING,C300271000:STRING,C300271200:STRING,C300617700:STRING,C301090500:STRING,C301284400:STRING,C301290300:NUMERIC,C301321300:STRING,C301368700:STRING,C301389272:STRING,C301390090:NUMERIC,C301391782:STRING,C301412900:NUMERIC,C301540300:STRING,C301541000:STRING,C301541600:STRING,C301541700:NUMERIC,C301550900:NUMERIC,C301571900:STRING,C301572000:STRING,C301572100:STRING,C301572200:STRING,C301600300:STRING,C301610100:STRING,C301612200:STRING,C301626500:NUMERIC,C301629100:STRING,C301667500:NUMERIC,C301674600:NUMERIC,C301734000:STRING,C301735100:STRING,C301736700:STRING,C301788500:STRING,C301807600:STRING,C301809900:STRING,C301810000:STRING,C301827100:STRING,C301827300:STRING,C301920700:STRING,C301920800:STRING,C301920900:STRING,C301921000:STRING,C301921100:STRING,C301921200:STRING,C301921300:STRING,C301921400:STRING,C301921500:STRING,C301921600:STRING,C301921700:STRING,C301921800:STRING,C301921900:STRING,C303070100:NUMERIC,C303070200:NUMERIC,C303356300:STRING,C303497300:STRING,C303497400:STRING,C303497500:STRING,C303519300:STRING,C303522900:STRING,C303523900:STRING,C303544200:STRING,C303544300:STRING,C303558600:STRING,C303595900:NUMERIC,C303601600:STRING,C303601700:STRING,C303616500:STRING,C303720800:NUMERIC,C303755200:STRING,C303758300:STRING,C303790700:STRING,C1000000000:STRING,C1000000001:STRING,C1000000002:STRING,C1000000003:STRING,C1000000004:STRING,C1000000010:STRING,C1000000014:STRING,C1000000017:STRING,C1000000018:STRING,C1000000019:STRING,C1000000020:STRING,C1000000022:NUMERIC,C1000000026:NUMERIC,C1000000027:NUMERIC,C1000000028:STRING,C1000000029:STRING,C1000000030:STRING,C1000000031:STRING,C1000000035:STRING,C1000000036:STRING,C1000000037:STRING,C1000000039:STRING,C1000000046:STRING,C1000000048:STRING,C1000000054:STRING,C1000000056:STRING,C1000000063:STRING,C1000000064:STRING,C1000000065:STRING,C1000000069:STRING,C1000000074:STRING,C1000000079:STRING,C1000000080:STRING,C1000000082:STRING,C1000000099:NUMERIC,C1000000109:STRING,C1000000118:NUMERIC,C1000000145:STRING,C1000000150:NUMERIC,C1000000151:STRING,C1000000156:STRING,C1000000161:STRING,C1000000162:NUMERIC,C1000000163:NUMERIC,C1000000164:NUMERIC,C1000000169:NUMERIC,C1000000188:STRING,C1000000215:NUMERIC,C1000000217:STRING,C1000000218:STRING,C1000000239:STRING,C1000000251:STRING,C1000000296:NUMERIC,C1000000298:STRING,C1000000300:STRING,C1000000342:STRING,C1000000396:STRING,C1000000422:STRING,C1000000426:STRING,C1000000427:STRING,C1000000541:STRING,C1000000557:NUMERIC,C1000000558:NUMERIC,C1000000559:NUMERIC,C1000000560:NUMERIC,C1000000561:NUMERIC,C1000000562:NUMERIC,C1000000563:NUMERIC,C1000000564:NUMERIC,C1000000565:NUMERIC,C1000000566:NUMERIC,C1000000567:NUMERIC,C1000000571:NUMERIC,C1000000572:NUMERIC,C1000000631:NUMERIC,C1000000642:NUMERIC,C1000000652:STRING,C1000000715:STRING,C1000000716:STRING,C1000000731:NUMERIC,C1000000744:STRING,C1000000745:STRING,C1000000746:STRING,C1000000854:STRING,C1000000869:NUMERIC,C1000000875:STRING,C1000000878:NUMERIC,C1000000942:STRING,C1000000964:NUMERIC,C1000000984:NUMERIC,C1000000985:NUMERIC,C1000000987:NUMERIC,C1000001025:NUMERIC,C1000001165:STRING,C1000001259:NUMERIC,C1000001288:NUMERIC,C1000001296:NUMERIC,C1000001317:NUMERIC,C1000001319:NUMERIC,C1000001445:NUMERIC,C1000001446:NUMERIC,C1000001555:NUMERIC,C1000001600:NUMERIC,C1000002488:STRING,C1000002613:NUMERIC,C1000003009:NUMERIC,C1000003302:STRING,C1000003662:STRING,C1000003663:STRING,C1000003664:STRING,C1000003752:STRING,C1000003753:NUMERIC,C1000003754:STRING,C1000003755:STRING,C1000003756:STRING,C1000003757:NUMERIC,C1000003761:NUMERIC,C1000003764:NUMERIC,C1000003765:NUMERIC,C1000003779:STRING,C1000003781:NUMERIC,C1000003888:STRING,C1000003889:STRING,C1000003890:STRING,C1000003891:STRING,C1000003892:STRING,C1000003893:STRING,C1000003894:STRING,C1000003895:STRING,C1000003896:STRING,C1000003897:STRING,C1000003898:STRING,C1000003899:NUMERIC,C1000003988:STRING,C1000005261:NUMERIC,C1000005661:NUMERIC,C1000005735:NUMERIC,C1000005736:NUMERIC,C1000005781:STRING,C1000005782:STRING,C1000005783:STRING,C1000005784:STRING,C1000005785:STRING,C1000005786:STRING,C1000005787:STRING,C1000005788:STRING,C1000005789:STRING,C1000005790:STRING,C1000005791:STRING,C1000005897:STRING,C1000005898:STRING,C1000005899:STRING,C1000005900:STRING,C1000005901:STRING,C1000005902:STRING,C1000005903:STRING,C1000005904:STRING,C1000005905:STRING,C1000005906:STRING,C1000005908:STRING,C1000005909:STRING,C1000005910:STRING,C1000005911:STRING,C303898800:NUMERIC,C303901000:NUMERIC,C303979600:NUMERIC,C1000005970:STRING,C536870913:NUMERIC,C536870916:NUMERIC,C1000005980:NUMERIC,C650000020:STRING,C650000021:STRING,C650000060:STRING,C536870914:NUMERIC,C536870915:STRING,C650000023:NUMERIC,C60903:STRING,C304302260:STRING,C304309530:STRING,C304309540:STRING,C304313170:STRING,C304379051:NUMERIC,C304379701:STRING,C304384051:NUMERIC,C304384081:STRING,C700000019:NUMERIC,C700000023:NUMERIC,C650000024:STRING,C700000988:NUMERIC,C781290302:NUMERIC,C60901:STRING,C60989:STRING,C301743800:STRING,C304384321:NUMERIC,C304401091:NUMERIC,C304404731:NUMERIC,C304405171:NUMERIC,C304405181:NUMERIC,C304409261:NUMERIC,C420050000:NUMERIC,C420050001:STRING,C420050002:STRING,C420050003:NUMERIC,C420050004:NUMERIC,C420050005:NUMERIC,C420050006:STRING,C420050008:NUMERIC,C420050100:STRING,C420050101:STRING,C420050102:NUMERIC,C420050103:STRING,C759110005:STRING,C759110004:NUMERIC,C759000017:NUMERIC,C536870919:STRING,C800001001:STRING,C800001012:STRING,C800001025:NUMERIC,C536870918:NUMERIC,C536870920:NUMERIC

================================================ ==========================

错误:

等待 bqjob_r1f519b38e9e242d9_0000016f80889252_1 ... (1s) 当前 状态:完成

加载操作中的 BigQuery 错误:错误处理作业 'upbeat-repeater-257414:bqjob_r1f519b38e9e242d9_0000016f80889252_1':

读取数据时出错,错误信息:CSV 表遇到太多错误,放弃。行数:1;错误: 1. 请查看 errors[] 集合以获取更多详细信息。失败详情:

  • gs://new007/t1851data.csv:读取数据时出错,错误消息:CSV 表引用列位置 317,但行开始于 position:0 仅包含 138 列。
  • 您在加载数据时未指定数据格式,默认情况下数据将被视为 CSV 格式。如果这不是你的意思,请 通过 --source_format 指定数据格式。

如何加载任何 csv 文件而不会出现任何错误。请向我推荐加载数据的轻松策略。

【问题讨论】:

  • 你文件的分隔符是什么? BQ中是否已经存在此表?
  • @rmesteves 是的,我在 BQ 中创建了表格,我的文件分隔符是逗号 (,),正如我提到的,我正在导入 csv 文件
  • 尝试将 --source_format=CSV 放在加载命令之后:bq load --source_format=CSV [...]
  • @rmesteves 是的,我已经尝试过这个选项也同样的错误。失败详情:-gs://new007/t1851data.csv:读取数据时出错,错误消息:CSV 表引用列位置 317,但从位置 0 开始的行仅包含 138 列。
  • 当我使用 --max_bad_records 时显示错误:1.[gs://new007/t1851data.csv] 读取数据时出错,错误消息:CSV 表引用列位置 317,但行开始在位置:0 仅包含 138 列。 2. [gs://new007/t1851data.csv] 读取数据时出错,错误信息:CSV 表引用列位置 317,但从位置:948 开始的行仅包含 1 列。

标签: google-cloud-platform google-bigquery bq-load


【解决方案1】:

您遇到的问题似乎是CSV文件格式的问题,可能您的CSV文件有换行符\n或回车符\r等字符,那么,文件的解释不正确,这与您收到的错误有关:

CSV table references column position 317, but line starting at position:0 
contains only 138 columns

在哪里说您的 CSV 的第一行只有 138 列,而您表示的是 317 列。因此,您需要先处理您的 CSV 文件,删除此类可能混淆解释器的字符,然后再次尝试运行该命令。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多