来自Avro的Bigquery负载无法从long转换为int

时间:2018-01-30 12:52:24

标签: google-bigquery avro spark-avro

我正在尝试将avro文件从google存储加载到Big查询表但面临这些问题。 我遵循的步骤如下。

  1. 在spark中创建数据框。
  2. 将这些数据写入avro。

    dataframe.write.avro( “路径”)

  3. 将这些数据加载到Google存储空间。

  4. 尝试使用以下命令

    将数据加载到google bigquery中

    bq --nosync load --autodetect --source_format AVRO datasettest.testtable gs://test/avrodebug/*.avro

  5. 此命令导致出现此错误。

    读取数据时出错,错误消息:Apache Avro库无法读取数据时出现以下错误:无法解析:“long”with“int”

    所以我甚至尝试通过指定架构来使用此命令。      bq --nosync load --source_format AVRO datasettest.testtable gs://test/avrodebug/*.avro C1:STRING,C2:STRING,C3:STRING,C4:STRING,C5:STRING,C6:INTEGER,C7:INTEGER ,C8:INTEGER,C9:STRING,C10:STRING,C11:STRING

    这里我只有C6,C7和C8具有整数值。 即使这也给出了相同的先前错误。

    我有什么理由为什么我得到的错误是长期的int而不是长期的INTEGER

    请告诉我有没有办法通过投放来加载这些数据。

0 个答案:

没有答案