我尝试使用以下命令运行 python Spark-shell:
bin/pyspark --packages datastax:spark-cassandra-connector:1.5.0-RC1-s_2.11,org.apache.spark:spark-streaming-kafka_2.10:1.6.0
以下命令的输出显示它能够找到 Spark-cassandra-connector 包:
resolving dependencies :: org.apache.spark#spark-submit-parent;1.0
confs: [default]
found datastax#spark-cassandra-connector;1.5.0-RC1-s_2.11 in spark-packages
found org.apache.cassandra#cassandra-clientutil;2.2.2 in central
found com.datastax.cassandra#cassandra-driver-core;3.0.0-rc1 in central
found io.netty#netty-handler;4.0.33.Final in central
found io.netty#netty-buffer;4.0.33.Final in central
found io.netty#netty-common;4.0.33.Final in central
但是当我尝试使用以下任何命令导入包时,我收到导入错误:
from com.datastax import *
from com.datastax.spark.connector import *
输出:
ImportError: No module named com.datastax
ImportError: No module named com.datastax.spark.connector
任何人都可以建议这里出了什么问题吗?
最佳答案
据我所知,Cassandra Connector 没有一行 Python 代码,更不用说名称奇怪的 Python 模块了。 Python 互操作性是使用数据源 API 实现的,无需任何额外的导入即可使用。
sqlContext.read.format("org.apache.spark.sql.cassandra").options(...).load(...)
即使确实如此,--packages
也仅用于分发 JVM 依赖项。外部依赖项(Python、R)必须独立分发或安装,例如使用 PyFiles
。
关于python - Datastax Spark Cassandra 连接器模块导入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35390396/