Python 3.x 如何使用特定JAR运行python spark脚本

Python 3.x 如何使用特定JAR运行python spark脚本,python-3.x,apache-spark,pyspark,amazon-dynamodb,amazon-emr,Python 3.x,Apache Spark,Pyspark,Amazon Dynamodb,Amazon Emr,我必须在EMR实例上运行python脚本,使用pyspark查询dynamoDB。我可以通过在pyspark上查询dynamodb来做到这一点,pyspark是通过包含以下jar来执行的 我运行了以下python3脚本,以使用pysparkpython模块查询数据 import time from pyspark import SparkContext, SparkConf from pyspark.sql import SparkSession, HiveContext start_time

我必须在EMR实例上运行python脚本,使用pyspark查询dynamoDB。我可以通过在pyspark上查询dynamodb来做到这一点,pyspark是通过包含以下jar来执行的

我运行了以下python3脚本,以使用pysparkpython模块查询数据

import time
from pyspark import SparkContext, SparkConf
from pyspark.sql import SparkSession, HiveContext

start_time = time.time()
SparkContext.setSystemProperty("hive.metastore.uris", "thrift://nn1:9083")
sparkSession = (SparkSession
                .builder
                .appName('example-pyspark-read-and-write-from-hive')
                .enableHiveSupport()
                .getOrCreate())
df_load = sparkSession.sql("SELECT * FROM example")
df_load.show()
print(time.time() - start_time)
这导致以下缺少JAR的运行时异常

java.lang.ClassNotFoundException Class org.apache.hadoop.hive.dynamodb.DynamoDBSerDe not found
如何将
pyspark--jars..
转换为pythonic等价物


到目前为止,我尝试将JAR从位置
/usr/share/…
复制到
$SPARK\u HOME/libs/jars
,并将该路径添加到SPARK-defaults.conf外部类路径,但没有效果。

使用SPARK submit命令执行python脚本。例如:

spark-submit --jars /usr/share/aws/emr/ddb/lib/emr-ddb-hive.jar,/usr/share/aws/emr/ddb/lib/emr-ddb-hadoop.jar script.py
我想这就是你要找的。
spark-submit --jars /usr/share/aws/emr/ddb/lib/emr-ddb-hive.jar,/usr/share/aws/emr/ddb/lib/emr-ddb-hadoop.jar script.py