'Integrating PySpark with Salesforce

I want to read data from salesforce via mapr/spark.

I have integrated following jar files in my config.

spark.driver.extraClassPath   xyztest/scripts/salesforce/force-partner-api-40.0.0.jar:xyztest/scripts/salesforce/force-wsc-40.0.0.jar:xyztest/scripts/salesforce/jackson-core-2.10.3.jar:xyztest/scripts/salesforce/jackson-dataformat-xml-2.10.3.jar:xyztest/scripts/salesforce/salesforce-wave-api-1.0.9.jar:xyztest/scripts/salesforce/spark-salesforce_2.11-1.1.1.jar
    spark.executer.extraClassPath xyztest/scripts/salesforce/force-partner-api-40.0.0.jar:xyztest/scripts/salesforce/force-wsc-40.0.0.jar:xyztest/scripts/salesforce/jackson-core-2.10.3.jar:xyztest/scripts/salesforce/jackson-dataformat-xml-2.10.3.jar:xyztest/scripts/salesforce/salesforce-wave-api-1.0.9.jar:xyztest/scripts/salesforce/spark-salesforce_2.11-1.1.1.jar

But when I execute this function I get an error.

soql = "SELECT * FROM Goodwill__c"  
df = spark \
     .read \
     .format("com.springml.spark.salesforce") \
     .option("username", "xyzUser") \
     .option("password", "passwort1234token1234") \
     .option("soql", soql) \
     .load()


ERROR: com.sforce.ws.ConnectionException: Failed to send request to https://login.salesforce.com/services/Soap/u/35.0
 

What is wrong with my function? Has anyone an idea how to get a connection from mapr/spark to salesforce?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source