Por que o Apache Spark está executando os filtros no cliente

Sendo novato no apache spark, enfrentando algum problema ao buscar dados do Cassandra no Spark.

List<String> dates = Arrays.asList("2015-01-21","2015-01-22");
CassandraJavaRDD<A> aRDD = CassandraJavaUtil.javaFunctions(sc).
                    cassandraTable("testing", "cf_text",CassandraJavaUtil.mapRowTo(A.class, colMap)).
                    where("Id=? and date IN ?","Open",dates);

Esta consulta não está filtrando dados no servidor cassandra. Enquanto essa instrução java está executando sua ativação na memória e finalmente lançando a exceção spark java.lang.OutOfMemoryError. A consulta deve filtrar os dados no servidor cassandra em vez do lado do cliente, conforme mencionado emhttps://github.com/datastax/spark-cassandra-connector/blob/master/doc/3_selection.md.

Enquanto eu estou executando a consulta com filtros no cassandra cqlsh está executando bem, mas executando a consulta sem o filtro (cláusula where) está dando o tempo limite esperado. Portanto, está claro que o spark não está aplicando os filtros no lado do cliente.

SparkConf conf = new SparkConf();
            conf.setAppName("Test");
            conf.setMaster("local[8]");
            conf.set("spark.cassandra.connection.host", "192.168.1.15")

Por que os filtros são aplicados no lado do cliente e como pode ser aprimorado para aplicar os filtros no lado do servidor.

Como poderíamos configurar o cluster spark no topo do cluster cassandra na plataforma windows ??

questionAnswers(3)

yourAnswerToTheQuestion