我有一个Glue作业,它将CTAS表中的数据复制到Parquet格式的另一个表中。目标是从CTAS表中选择列和行的子集,然后加载到目标Parquet表中。
一切正常,除了当我尝试查看Parquet表中的数据时,我收到此错误: HIVE_CURSOR_ERROR:无法读取块0中的0值 研究已经完成,并且:config(“ spark.sql.parquet.writeLegacyFormat”,“ true”)仅在仅处理Glue DynamicFrame时有效。 在我的工作中,由于具有自定义SQL,所以我有一个Spark数据框。 然后,我将其转换回Glue DynamicFrame并应用了将字符串转换为DECIMAL的映射。 示例:(“ units_passed”,“ string”,“ units_passed”,“ decimal(4,1)”), 我还尝试添加无法解决该问题的config(“ spark.sql.parquet.writeLegacyFormat”,“ true”)。 任何帮助表示赞赏。
我希望能够在Parquet表中查看数据而不会出现错误,并且能够正确表示具有DECIMAL数据类型的列。