Dataset<Row> finalResult = df.selectExpr("cast(col1 as uuid())", "col2");
Lorsque nous avons essayé de convertir la colonne de l'ensemble de données en UUID et de la conserver dans Postgres, je vois l'exception suivante. Veuillez suggérer une autre solution pour convertir la colonne d'un ensemble de données en UUID.
java.lang.RuntimeException: org.apache.spark.sql.catalyst.parser.ParseException:
DataType uuid() is not supported.(line 1, pos 21)
== SQL ==
cast(col1 as UUID)
---------------------^^^
Réponses:
1 pour la réponse № 1Spark n'a pas de type uuid, aussi le fait de lancer l'un sur l'autre ne fonctionne pas.
Vous pouvez essayer d'utiliser database.column.type
métadonnées comme expliqué dans Types de données personnalisés pour les colonnes DataFrame lors de l'utilisation de Spark JDBC et SPARK-10849.