Я немного смущен с разными участниками этой истории: PySpark, SparkSQL, Cassandra и коннектор pyspark-cassandra.Как работать с PySpark, SparkSQL и Cassandra?
Как я понимаю, Spark развился довольно много, и SparkSQL теперь является ключевым компонентом (с «dataframes»). По-видимому, нет никаких оснований для работы без SparkSQL, особенно если вы подключитесь к Cassandra.
Итак, мой вопрос: какой компонент необходим и как я могу связать их вместе самым простым способом?
С spark-shell
в Scala я мог бы сделать просто
./bin/spark-shell --jars spark-cassandra-connector-java-assembly-1.6.0-M1-SNAPSHOT.jar
, а затем
import org.apache.spark.sql.cassandra.CassandraSQLContext
val cc = new CassandraSQLContext(sc)
cc.setKeyspace("mykeyspace")
val dataframe = cc.sql("SELECT count(*) FROM mytable group by beamstamp")
Как я могу сделать это с pyspark
?
Вот пара подзапросов вместе с частичными ответами, которые я собрал (правильно, если я ошибаюсь).
ли pyspark-casmandra нужен (я не думаю, что так - я не понимаю, что это делает в первую очередь)
Нужно ли мне использовать
pyspark
или я мог использовать мой правильныйjupyter notebook
и самостоятельно импортировать вещи?
OK спасибо. Возможно ли (как в Scala) иметь прямой доступ к таблицам через SQL api? –
Насколько я знаю, это невозможно. Вы можете, конечно, «registerTempTable», как обычно. Кроме того, нет эквивалента 'CassandraRDD'. – zero323
Хорошо. Позднее я выложу код, чтобы убедиться, что все правильно. –