簡體   English   中英

Spark Scala 中的模棱兩可的模式

[英]Ambiguous schema in Spark Scala

架構:

|-- c0: string (nullable = true)
|-- c1: struct (nullable = true)
|    |-- c2: array (nullable = true)
|    |    |-- element: struct (containsNull = true)
|    |    |    |-- orangeID: string (nullable = true)
|    |    |    |-- orangeId: string (nullable = true)

我試圖在 spark 中展平上面的架構。

代碼:

var df = data.select($"c0",$"c1.*").select($"c0",explode($"c2")).select($"c0",$"col.orangeID", $"col.orangeId")

扁平化代碼工作正常。 問題出在最后一部分,其中 2 列僅相差 1 個字母(orangeID 和 orangeId)。 因此我收到此錯誤:

錯誤:

org.apache.spark.sql.AnalysisException: Ambiguous reference to fields StructField(orangeID,StringType,true), StructField(orangeId,StringType,true);

任何避免這種歧義的建議都會很棒。

打開spark sql區分大小寫配置並嘗試

spark.sql("set spark.sql.caseSensitive=true")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM