将pyspark数据帧写入雪花表时出错[snowflake-cloud-data-platform]

时间:2020-08-07 21:10:24

标签: python-3.x pyspark snowflake-cloud-data-platform

我正在使用pyspark从雪花读取数据。我在此基础上进行了一些转换。我现在正在尝试将转换后的数据写回雪花,但是在尝试执行此操作时遇到了一些错误。我找不到关于此文档的大量文档。如果您已解决此问题,请分享我所缺少的。预先感谢。

pyspark --> 2.3.2
python --> 3.6
snowflake spark connector --> spark-snowflake_2.11-2.7.0-spark_2.4.jar
snowflake jdbc --> snowflake-jdbc-3.12.9.jar

注意:正在使用的用户具有与创建DB表,表相同的角色。 SYSADMIN


    # set options for write:
    sfOptionswrite = {
    "sfURL" : "xxxxxxx.us-east-1.snowflakecomputing.com",
    "sfUser" : "xxxxx",
    "sfPassword" : getpass.getpass(prompt='Enter your password: '),
    "sfDatabase" : "DB",
    "sfSchema" : "SCHEMA",
    "sfWarehouse" : "WH_NAME",
    "sfRole" : "SYSADMIN"
    }
    
    # write transformed dataframe df to snowflake:
    
    df.write.format('net.snowflake.spark.snowflake')\
    .options(**sfOptionswrite)\
    .option('dbtable', 'TABLE_NM')\
    .mode('overwrite')\
    .save()

错误:

原因:java.io.InvalidClassException:net.snowflake.spark.snowflake.io.InternalS3Storage;本地类不兼容:流classdesc serialVersionUID = -7958783596366368645,本地类serialVersionUID = -6090755107217034776

1 个答案:

答案 0 :(得分:0)

您如何调用火花代码?您是否正在使用提交火花?您还拥有所有必需的软件包吗?

这也可能是不兼容的罐子。

请检查以下链接是否有帮助?

https://community.snowflake.com/s/question/0D50Z00007b2iXx/spark-connector-error-dfshow-

请告诉我