Вы смешиваете DataStax 'Spark Cassandra Connector (в банке, которую добавляете в исходный текст), и проект PySpark Cassandra от TargetHolding (который имеет модуль pyspark_cassandra
). Последнее устарело, поэтому вам, вероятно, следует использовать Spark Cassandra Connector. Документацию по этому пакету можно найти here.
Чтобы использовать его, вы можете добавить следующие флаги, чтобы зажечь представить:
--conf spark.cassandra.connection.host=127.0.0.1 \
--packages com.datastax.spark:spark-cassandra-connector_2.11:2.0.0-M3
Конечно использовать IP-адрес, на котором Cassandra слушает, и проверить, какая версия соединителя вам нужно использовать: 2.0.0 -M3 является последней версией и работает с Spark 2.0 и большинством версий Cassandra. См. compatibility table в случае, если вы используете другую версию Spark. 2.10
или 2.11
- это версия Scala, разработанная для вашей версии Spark. Если вы используете Spark 2, по умолчанию он равен 2.11, то до 2.x это была версия 2.10.
Тогда самый хороший способ работать с разъемом, чтобы использовать его для чтения dataframes, который выглядит следующим образом:
sqlContext.read\
.format("org.apache.spark.sql.cassandra")\
.options(table="kv", keyspace="test")\
.load().show()
См PySpark with DataFrames документации для получения более подробной информации
Где вы взяли, что оператор импорта из? Прочитали ли вы документацию коннектора Cassandra: https://github.com/datastax/spark-cassandra-connector#documentation? Этот оператор импорта нигде не упоминается, потому что действительно нет модуля с этим именем. – sgvd